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:
java.io.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
-
-
Field Summary
Fields Modifier and Type Field Description private static long
serialVersionUID
-
Constructor Summary
Constructors Constructor Description IllegalCommuteException(java.lang.String message)
Creates a new IllegalCommuteException with the provided message.IllegalCommuteException(java.lang.String message, java.lang.Throwable cause)
Creates a new IllegalCommuteException with the provided message and cause.
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
IllegalCommuteException
public IllegalCommuteException(java.lang.String message)
Creates a new IllegalCommuteException with the provided message.- Parameters:
message
- the message
-
IllegalCommuteException
public IllegalCommuteException(java.lang.String message, java.lang.Throwable cause)
Creates a new IllegalCommuteException with the provided message and cause.- Parameters:
message
- the messagecause
- the cause.
-
-