Package org.h2.mvstore.tx
Class RollbackDecisionMaker
Class RollbackDecisionMaker process undo log record during transaction rollback.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate MVMap.Decision
private final TransactionStore.RollbackListener
private final TransactionStore
private final long
private final long
Fields inherited from class org.h2.mvstore.MVMap.DecisionMaker
DEFAULT, PUT, REMOVE
-
Constructor Summary
ConstructorsConstructorDescriptionRollbackDecisionMaker
(TransactionStore store, long transactionId, long toLogId, TransactionStore.RollbackListener listener) -
Method Summary
Methods inherited from class org.h2.mvstore.MVMap.DecisionMaker
decide, selectValue
-
Field Details
-
store
-
transactionId
private final long transactionId -
toLogId
private final long toLogId -
listener
-
decision
-
-
Constructor Details
-
RollbackDecisionMaker
RollbackDecisionMaker(TransactionStore store, long transactionId, long toLogId, TransactionStore.RollbackListener listener)
-
-
Method Details
-
decide
Description copied from class:MVMap.DecisionMaker
Makes a decision about how to proceed with the update.- Specified by:
decide
in classMVMap.DecisionMaker<Record<?,
?>> - Parameters:
existingValue
- value currently exists in the mapprovidedValue
- original input value- Returns:
- PUT if a new value need to replace existing one or a new value to be inserted if there is none REMOVE if existing value should be deleted ABORT if update operation should be aborted or repeated later REPEAT if update operation should be repeated immediately
-
reset
public void reset()Description copied from class:MVMap.DecisionMaker
Resets internal state (if any) of a this DecisionMaker to it's initial state. This method is invoked whenever concurrent update failure is encountered, so we can re-start update process.- Overrides:
reset
in classMVMap.DecisionMaker<Record<?,
?>>
-
toString
-