Hello,
We are experiencing occasionally DBConcurrencyExceptions ( Concurrency violation: the UpdateCommand affected 0 of the expected 1 records. at
) on during our order checkouts and our custom checkout handler.
We managed to resolve most of the concurrency exceptions in the checkout handler. Tough its still a bit vague on which occastions they occur.
In the checkout process we are also experiencing the issues. In the trace logs we see all kinds of sources that possibly don't have under our control such as:
Dynamicweb.Ecommerce.Frontend.EcomPageLoadNotificationSubscriber.LoadedPage(PageView pageview) at Dynamicweb.Extensibility.Notifications.NotificationManager.Notify(String notification, NotificationArgs eventArgs)
(partial tracelog)
How can we reduce the amount of concurrency exceptions?
When / why do the concurrency exceptions occur, is it because database save operations are asynchronous?
What are the best practices on saving and editing orders?
Is there also a best practice on building an CheckoutHandler, typically on avoiding these exceptions?