Poor performance when updating catalog entries from inRiver Pim -> Commerce

Vote:
 

When the catalog are updating products via our inriver connector, it takes between 6-10 seconds to update 1 product from Pim -> Commerce.

It looks like the database runs the stored procedure ecfVersionCatalog_Save for each update. This SQL takes 4-6 seconds to run.

What is ecfVersionCatalog_Save? And is there anyway to speed this operation up?

Our product integration runs pretty much 24/7, the Message Queue on the inRiver server is therefore pretty much neverending so it takes ages to update our product catalog from Erp -> Pim -> Commerce.

We are running the following versions

inRiver 6.3 SP2

Commerce 9.24.1

I have tried , but this is not improving the performance.


Anyone have any experience with poor performance when updating catalog entries, and how to improve it?


Seems like the problem lies within the Commerce part of the integration.

Commerce:

2018-01-10 15:24:34,727 DEBUG Mediachase.Commerce.Catalog.ImportExport.CatalogImportExport.OnImportExportProgressMessage - Starting import...
2018-01-10 15:24:34,738 DEBUG Mediachase.Commerce.Catalog.ImportExport.CatalogImportExport.OnImportExportProgressMessage - Start importing catalog properties
2018-01-10 15:24:36,724 DEBUG inRiver.EPiServerCommerce.Nine.Importer.InriverDataImportController.IsImporting - IsImporting
2018-01-10 15:24:38,120 DEBUG Mediachase.Commerce.Catalog.ImportExport.CatalogImportExport.OnImportExportProgressMessage - Importing catalog Web
2018-01-10 15:24:38,130 DEBUG Mediachase.Commerce.Catalog.ImportExport.CatalogImportExport.OnImportExportProgressMessage - Finished importing catalog properties
2018-01-10 15:24:38,141 DEBUG Mediachase.Commerce.Catalog.ImportExport.CatalogImportExport.OnImportExportProgressMessage - Start importing catalog entries
2018-01-10 15:24:38,367 DEBUG Mediachase.Commerce.Catalog.ImportExport.CatalogImportExport.OnImportExportProgressMessage - Finished importing catalog entries
2018-01-10 15:24:38,377 DEBUG Mediachase.Commerce.Catalog.ImportExport.CatalogImportExport.OnImportExportProgressMessage - Imported catalog Web
2018-01-10 15:24:38,387 DEBUG Mediachase.Commerce.Catalog.ImportExport.CatalogImportExport.OnImportExportProgressMessage - Import successfully finished.
2018-01-10 15:24:38,396 DEBUG inRiver.EPiServerCommerce.Nine.Importer.InriverDataImportController.ImportCatalogXmlWithHandlers - Postimport handler: xx.web.Business.PIM.PimPostImportHandler
2018-01-10 15:24:38,765 DEBUG inRiver.EPiServerCommerce.Nine.Importer.InriverDataImportController.IsImporting - IsImporting
2018-01-10 15:24:40,792 DEBUG inRiver.EPiServerCommerce.Nine.Importer.InriverDataImportController.IsImporting - IsImporting
2018-01-10 15:24:40,853 DEBUG inRiver.EPiServerCommerce.Nine.Importer.InriverDataImportController.ImportUpdateCompleted - *** ImportUpdateCompleted events with parameters CatalogName=Web, EventType=EntityUpdated, ResourcesIncluded=False

PIM:

15:24:34 - Debug EntityUpdated received from server
15:24:34 - Verbose Action = EntityUpdated Message Body : EntityUpdated3989ItemSearchTags
15:24:34 - Debug ChannelEntityUpdate received from server
15:24:34 - Verbose Action = ChannelEntityUpdate Message Body : ChannelEntityUpdate22993989ItemSearchTags
15:24:34 - Debug ChannelEntityUpdate sent to connector: EpiAdapter
15:24:34 - Debug Received entity update for entity 3989 in channel 2299
15:24:34 - Debug EpiAdapter: Received entity update for entity 3989 in channel 2299
15:24:34 - Debug Updated entity found. Type: Item, id: 3989
15:24:34 - Information Saving verified document to path ......\inRiver\Publish\Epi\20180110-152434.621\Catalog.xml for channel: Web
15:24:34 - Debug Starting automatic import!
15:24:34 - Debug Posting to ...../inriverapi/InriverDataImport/ImportCatalogXml
15:24:40 - Debug Import catalog returned: Import Sucessful
15:24:40 - Debug Posting to ....../inriverapi/InriverDataImport/ImportUpdateCompleted
15:24:40 - Debug ImportUpdateCompleted returned: true
15:24:40 - Information Update done for channel 2299, took 00:00:06!
15:24:40 - Debug EpiAdapter: ChannelEntityUpdated complete

#187033
Jan 10, 2018 16:00
Vote:
 

I would suggest you to contact Episerver developer support service, in such performance cases like this we would need to look into your database and do some profiling to find out the bottleneck.

Upgrading to a later version (11.x recommended) is a good step too. it might not solve this specific issue, but it can improve your website performance in general. 

#187040
Jan 10, 2018 16:48
Vote:
 

ok, thanks.

#187046
Jan 10, 2018 17:49
Vote:
 

Hi,

I have a few minutes to spare to look into this, and I think I found the answer for your question. In this case you are asking for ecfVersionCatalog_Save specifically, and indeed you have to upgrade to at least 10.7.0 to get it fixed. I however recommend to go with 11.7.1 which will be released soon-ish.

The longer explanation is that this SP is called when you update the catalog, and it will update every row in ecfVersion to make sure that all versions will have proper language setting - because the catalog language settings will affect any and every catalog items inside that catalog. Yes that is not the best/fastest way, and we did improve it in 10.7.0 and we even improve it further in 11.7.1. So your best bet is to upgrade. 

Regards,

/Q

#187477
Jan 24, 2018 10:01
This topic was created over six months ago and has been resolved. If you have a similar question, please create a new topic and refer to this one.
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.