Errors that occur in a m-ld engine should be signalled with the given error codes where appropriate. The means by which errors are signalled is platform-specific.
The engine has received a response that it cannot parse. This may be due to a version inconsistency, or a bad actor.
The engine has received an update that it cannot parse. This may be due to a version inconsistency, or a bad actor.
The clone data is not writeable due to a platform limitation such as file locking, or concurrent access controls.
This clone has been closed, explicitly by the app or due to an error. All subsequent transactions will fail.
The clone's data is out of date and no other clones have kept sufficient information to recover it. The app could re-try initialising the clone later if, for example, the architecture includes a clone which keeps a long history, but it is currently unavailable.
The requested transaction results in a delta that is too large to transmit using the current message publishing implementation.
The engine has attempted an operation that requires other clones to be visible. This indicates a concurrency problem in the engine.
No error has occurred.
This is a new clone on the domain, but no other clones are visible, possibly due to a network partition. The clone cannot initialise.
A json-rql pattern has been specified that neither reads nor writes data, for example a Group with variable content.
The engine has received a rejection from another engine on the domain to one of its requests. This could lead to the clone failing to initialise, or shutting down shortly after initialisation.
A request was made for data for which the current security principal does not have access rights.
A serious error has occurred in the engine implementation.
The engine does not support the pattern in the transaction request.
An update from another clone has arrived out-of-order, and the clone has not been able to recover. This indicates a concurrency problem in the engine.
A request was made for updates in the too-distant past. This can occur when following clone updates, or when re-starting a clone that has been offline for too long.