Package org.multiverse.api.exceptions
Class IllegalCommuteException
- java.lang.Object
-
- java.lang.Throwable
-
- java.lang.Exception
-
- java.lang.RuntimeException
-
- org.multiverse.api.exceptions.TxnExecutionException
-
- org.multiverse.api.exceptions.IllegalCommuteException
-
- All Implemented Interfaces:
Serializable
public class IllegalCommuteException extends TxnExecutionException
ATxnExecutionException
thrown whenTxn
access is done while a commuting function is being evaluated.The reason why Txn access is not allowed, is that once other reads/writes are done while executing the commuting behavior, you can have read/write inconsistencies. E.g. in Clojure the same commuting function can be executed more than during the execution of a transaction once on a reference, leading to different values every time executed (e.g. the value it already had inside the transaction, and the most recent committed value when the commuting operation is calculated during transaction commit.
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description IllegalCommuteException(String message)
Creates a new IllegalCommuteException with the provided message.IllegalCommuteException(String message, Throwable cause)
Creates a new IllegalCommuteException with the provided message and cause.
-
Method Summary
-
Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
-
-
-
-
Constructor Detail
-
IllegalCommuteException
public IllegalCommuteException(String message)
Creates a new IllegalCommuteException with the provided message.- Parameters:
message
- the message
-
-