Episerver Find 12.5.1
Episerver Find Commerce 9.7.2
Episerver Commerce 10.7.2
Maybe you could try to stop and start the eventindexing when importing and maybe even the scheduledpageque? No idea if it will help with the deadlock, but it's worth a try.
Before starting your import:
EPIServer.Find.Cms.EventedIndexingSettings.Instance.EventedIndexingEnabled = false ; EPiServer.Find.Cms.EventedIndexingSettings.Instance.ScheduledPageQueueEnabled = false;
When finished your import:
EPIServer.Find.Cms.EventedIndexingSettings.Instance.EventedIndexingEnabled = true; EPiServer.Find.Cms.EventedIndexingSettings.Instance.ScheduledPageQueueEnabled = true;
Thanks Jeroen
It's something I was considering, though I was looking at CatalogContentEventListener but this might be better. I can index the products directly via IClient in the scheduled process which is probably more efficient also.
Still not sure if the locking is normal though or something we can fix with configuration/SQL set up?
One thing you also could do is to override ContentChangedEventStore, and hold the references in memory during import, instead of using the database.
Hi we are running a project with Avensia storefront and Episerver Commerce (latest version 10.x) & Find
We are using the standard automatic Find indexing of catalog content. There is a scheduled job that imports catalog data from Microsoft Dynamics AX into the commerce catalog. Due to the nature of the project it needs to use the API methods, rather than say use the service API. So in effect it is mapping data and then using the API to create new product and save it using the content repository. It is working in batches of about 100 products at a time, but overall there is a large dataset with 500,000 products.
After processing around 120,000 products it ground to a halt due to SQL server deadlock issues. This looks related to the fact that Find is using the catalog event listener to be notified of changes. This issue did not occur before using Find and the default lucine search was in place.
Anyone come across this before or have any ideas on resolution? In the interim we will be disabling product event updates using the appsetting episerver:FindCatalogEventUpdated and then having to reapply after the import is done. This is not a long-term solution.
Stack trace below