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 Type
    Method
    Description
    getBlockingDuration(Operation precedingOperation, Operation concurrentOperation)
    How long protection established by the preceding operation can exclude the concurrent operation.
    Diagnostic identity, not a JDBC isolation constant or ordering of strength.
    Guarantees established by a successfully completed read of this kind.
    boolean
    supports(Operation operation)
    Whether 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

      boolean supports(Operation operation)
      Whether the actual operation is supported, without substituting another operation.
    • getBlockingDuration

      BlockingDuration getBlockingDuration(Operation precedingOperation, Operation concurrentOperation)
      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

      ReadGuarantees getReadGuarantees(Operation operation)
      Guarantees established by a successfully completed read of this kind.
      Throws:
      IllegalArgumentException - if the operation is WRITE
      UnsupportedOperationException - if the operation is unsupported