State conflict

A state conflict is reported by ActiveSpaces® Transactions when a write operation from a remote node detects that the data on the local node has changed underneath it. This is possible in a distributed system because an object may be modified from multiple nodes in the system. The com.kabira.platform.StateConflictError exception is thrown when a state conflict is detected.

This exception should never be caught by the application. It is used by ActiveSpaces® Transactions to managed state conflicts transparently. If a state conflict is detected an exception is returned to the remote node. The transaction is then rolled back and replayed. This causes all object field data to be refreshed on the remote node. The application is never aware that a state conflict occurred.