You should find that the following optional index will optimize the performance for Merge Contacts:
Table |
Column |
Index Name |
Unique? |
contact |
alias2contact |
alias_c_index |
No |
This index definition is included in the installation files for Release 4.1 of Dovetail Agent.
In addition, Merge Contacts can be VERY slow on a system that contains a significant amount of data. The reason for this is that the merge (or preview) process must search for objects to be moved from alias to master in the merge process.
For example, suppose that the case table contains millions of cases. When a contact (or site) is merged, the system must check every case to see if it is associated with the alias contact/site. If the relation column is not indexed, this will cause a table scan.
As an example, one user of site merge reported times of up to 1 hour to process a single alias site (due to the large amount of data in their Clarify system). Adding the proper indexes reduced that time to less than 6 seconds for the same merge.
In a single merge, there are a large number of tables that must be searched. But not all of them will contain a large number of rows, and thus not all of them need to be indexed.
The following tables list the tables (and columns) that will be used to perform the merge operation. If there are a large number (over 1000) rows in the table listed, then you should consider adding an index on the column listed to improve performance.
Table Name |
Column Name |
Clarify Version |
alert |
alert2contact |
All |
commit_log |
commit_cust2contact |
All |
web_user |
web_user2contact |
All |
phone_log |
phone_custmr2contact |
All |
demand_hdr |
attention2contact |
All |
case |
case_reporter2contact |
All |
contact_role |
contact_role2contact |
All |
ct_bus_role |
ct_bus_role2contact |
All |
case |
alt_contact2contact |
All |
contact |
caller2user |
All |
person |
person2contact |
All |
employee |
employee2contact |
All |
case |
case_reporter2site |
All |
case |
de_product2site_part |
All |
case |
case_node2site_part |
All |
case |
case_prod2site_part |
All |
case |
entitlement2contract |
All |
contact_role |
contact_role2site |
All |
site |
cust_primaddr2address |
All |
mtm_site_part22_contact6 |
contact2site_part |
All |
mtm_site_part22_contact6 |
site_part2contact |
All |
mtm_contact2_contract1 |
contract2contact |
All |
mtm_contact2_contract1 |
caller2contract |
All |
contract |
primary2contact |
5.0+ |
act_entry |
act_entry2contact |
5.0+ |
email_log |
cont_email2contact |
5.0+ |
task |
task2contact |
5.0+ |
quick_quote |
q_quote2contact |
5.0+ |
con_opp_role |
opp_role2contact |
5.0+ |
con_csc_role |
csc_role2contact |
5.0+ |
lst_con_role |
list_role2contact |
5.0+ |
mtm_contact17_campaign6 |
contact2campaign |
5.0+ |
mtm_contact17_campaign6 |
campaign2contact |
5.0+ |
scr_run |
scr_run2contact |
6.0+ |
interact |
interact2contact |
6.0+ |
con_lsc_role |
con_lsc2lead_source |
7.0+ |
exc_con_role |
exc_con_role2exchange |
7.0+ |
doc_inst |
doc_inst2contact |
8.0+ |
E_addr |
eaddr2contact |
9.0+ |
R_rqst |
r_rqst2contact |
9.0+ |
R_rqst |
R_contact2contact |
9.0+ |
con_pym_role |
cn_pm_role2contact |
10.0+ |
con_rol_itm |
parent2con_rol_itm |
11.0+ |
con_rol_itm |
child2con_rol_itm |
11.0+ |
preference |
contact2preference |
11.0+ |
user_touch |
contact2user_touch |
11.0+ |
con_fin_accnt_role |
contact2con_fin_accnt_fole |
11.5+ |
con_blg_argmnt_role |
contact2con_blg_argmnt_role |
11.5+ |
con_sp_role |
contact2con_sp_role |
11.5+ |
con_pc_role |
contact2con_pc_role |
11.5+ |
con_ppb_role |
contact2con_ppb_role |
12.0+ |
order_action |
contact2order_action |
12.0+ |
fr_agr_con_role |
contact2fr_agr_con_role |
12.0+ |
intrxn |
contact2intrxn |
12.0+ |
proc_inst |
proc_inst2contact |
12.0+ |
contract |
bill_to2contact |
13.0+ |
con_bus_role |
con_bus_role2contact |
13.0+ |
order_shipping |
order_shipping2contact |
13.0+ |
mtm_user121_contact50 |
user2contact |
13.0+ |
mtm_user121_contact50 |
contact2user |
13.0+ |
bug |
bug2contact |
13.0+ |
See Also |
Next |