Enum DurabilityMode
Controls when WAL records become crash-safe. Specified per Unit of Work at creation time.
public enum DurabilityMode : byte
Fields
Deferred = 0WAL records buffered. Durable only after explicit Flush()/FlushAsync(). Commit latency: ~1-2µs. Data-at-risk: until Flush(). Best for: game ticks, batch imports, simulation steps.
GroupCommit = 1WAL writer auto-flushes every N ms (default 5ms). Commit latency: ~1-2µs. Data-at-risk: ≤ GroupCommitInterval. Best for: general server workload, request handlers.
Immediate = 2FUA on every tx.Commit(). Blocks until WAL record is on stable media. Commit latency: ~15-85µs. Data-at-risk: zero. Best for: financial trades, irreversible state changes.