In Sitecore 8.X, the List Manager is the primary tool used to import contacts and create audience lists for Sitecore. This is a dependency in EXM as well for creating message dispatches against a List Manager list.
When a list is created, it goes through a couple steps:
- Sitecore creates the stub of the list as an item in Sitecore.
- Sitecore then locks the list from any pending changes.
- During the lock phase:
- Sitecore Creates the xDB contact.
- Sitecore adds to the sitecore_list_index the list information.
- Once the lock phase is complete, Sitecore unlocks the list and it can be used for consumption.
The main issue at hand is that for some reason, writing to the sitecore_list_index takes an enormous amount of time. Creating a list of 2 users has thus taken 5 minutes. When I have a CSV of 90,000 that I need to upload.
A little bit about our indexing. We are using Solr Server 6 for all indexes. (Yes, we know Solr 6 isn't an approved version, but so far, we not have any issues and all tests are coming back very positive. The master index builds very fast.)
Question: How do I improve this experience? Am I even able to?
UPDATE 1: I don't think it's Indexes. According to the log, the index is getting processed and updated almost immediately.
ManagedPoolThread #11 16:13:33 INFO Job started: Index_Update_IndexName=sitecore_list_index ManagedPoolThread #9 16:13:33 INFO Job ended: Index_Update_IndexName=sitecore_master_index (units processed: ) ManagedPoolThread #9 16:13:33 INFO Job started: Index_Update_IndexName=sitecore_master_index ManagedPoolThread #17 16:13:33 INFO Job started: CONTACT_BULK_UPDATE_ListManagementImportContacts_cbaf9d6805a74a509e0413ac2fd751b7 ManagedPoolThread #11 16:13:33 INFO Job ended: Index_Update_IndexName=sitecore_list_index (units processed: ) ManagedPoolThread #4 16:13:33 INFO Job started: Index_Update_IndexName=sitecore_list_index ManagedPoolThread #17 16:13:33 INFO Job ended: CONTACT_BULK_UPDATE_ListManagementImportContacts_cbaf9d6805a74a509e0413ac2fd751b7 (units processed: 2) ManagedPoolThread #4 16:13:33 INFO Job ended: Index_Update_IndexName=sitecore_list_index (units processed: ) ManagedPoolThread #8 16:13:33 INFO Job started: Index_Update_IndexName=sitecore_list_index
UPDATE 2: Turns out that the order of operations is first indexing, which isn't the issue. Then the next operation is something to do with the EventQueue table. List Manager puts entries in it for processing of something. So if EQ table is jammed, this runs long. But I still don't understand that. So question still applies.