Interface TransactionConcurrency
public interface TransactionConcurrency
Immutable, resolved database concurrency rules for a factory's connections. These are hypothetical operations on the same existing row by different transactions using the same configuration, not observations of active sessions. Connection isolation and relevant database settings must remain consistent across the factory. The described rows belong to transactional tables.
Predicate and schema locking, phantoms, lock escalation, and incidental internal waits are outside its scope. Snapshot visibility must not be confused with prevention of concurrent modification.
- Since:
- 8.0
-
Method Summary
Modifier and TypeMethodDescriptiongetBlockingDuration(Operation precedingOperation, Operation concurrentOperation) How long protection established by the preceding operation can exclude the concurrent operation.getName()Diagnostic identity, not a JDBC isolation constant or ordering of strength.getReadGuarantees(Operation operation) Guarantees established by a successfully completed read of this kind.booleanWhether the actual operation is supported, without substituting another operation.
-
Method Details
-
getName
String getName()Diagnostic identity, not a JDBC isolation constant or ordering of strength. -
supports
Whether the actual operation is supported, without substituting another operation. -
getBlockingDuration
How long protection established by the preceding operation can exclude the concurrent operation. Direction is significant. UNKNOWN and CONDITIONAL must not be treated as proof of exclusion or read freshness.- Throws:
UnsupportedOperationException- if either operation is unsupported
-
getReadGuarantees
Guarantees established by a successfully completed read of this kind.- Throws:
IllegalArgumentException- if the operation is WRITEUnsupportedOperationException- if the operation is unsupported
-