Database with optimistic transaction support for high concurrency scenarios
OptimisticTransactionDB provides optimistic concurrency control without locking during transaction execution. Conflicts are detected at commit time, making it ideal for workloads with low contention.
Validates in parallel before entering the write-group. Each transaction acquires locks for its write-set in a well-defined order, reducing mutex contention.
OptimisticTransactionDB does not acquire locks during transaction execution. This provides better performance for read-heavy workloads and scenarios with low contention.
Conflicts are detected when Commit() is called. If another transaction modified the same keys, Commit() returns Status::Busy() and the transaction must be retried.