Class ModelCommitConflictException
java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
io.fluxzero.sdk.modeling.ModelCommitConflictException
- All Implemented Interfaces:
Serializable
A Model mutation cannot commit because its state conflicted with another mutation.
A rejected storage commit exposes
getResult(); loss of a pinned document during preparation instead
exposes getReadConflict(). The latter is terminal: preparation cannot replay missing document history
and must not silently rerun the mutation against a newer state.- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordIdentifies a document that could no longer be reconstructed at the mutation's pinned read boundary. -
Constructor Summary
ConstructorsConstructorDescriptionCreates an exception containing the runtime's current model and relationship positions.ModelCommitConflictException(ModelCommitConflictException.ReadConflict readConflict, Throwable cause) Creates a terminal preparation conflict without inventing current storage positions or a storage response. -
Method Summary
Methods inherited from class Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
-
Constructor Details
-
ModelCommitConflictException
Creates an exception containing the runtime's current model and relationship positions. -
ModelCommitConflictException
public ModelCommitConflictException(ModelCommitConflictException.ReadConflict readConflict, Throwable cause) Creates a terminal preparation conflict without inventing current storage positions or a storage response.
-