Difference between InvalidVersionException and ConcurrentUpdateException

ATG is a very cache heavy application. Given its chatty database design, this is a good thing. One area that uses cache heavily and depends upon a proper configuration of the repository layer is the OrderRepository. Two common exceptions that are frequently misunderstood, or at least ill defined, are InvalidVersionException and ConcurrentUpdateException.

The short answer is this:

InvalidVersionException (“IVE”) means the users session has a version value for the current order that differs from what the repository on the same application server thinks is the current version for that same order.

ConcurrentUpdateException (“CUE”) means the version in the database differs from what the repository on an application server thinks it should be.

CUE is almost always related to either activity occurring in the database outside of the repository layer, or different caching mechanisms between application servers.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.