final case class AccessLog(reads: Map[ByteVector, Set[ByteVector]], writes: Map[ByteVector, Set[ByteVector]])
Access log for tracking transaction reads and writes.
Phase 8: AccessLog accumulates all read and write operations performed by a transaction, enabling efficient conflict detection between concurrent transactions.
The log maps table identifiers (byte prefixes) to sets of accessed keys (full byte keys including prefix). This byte-level approach ensures correct conflict detection across different table types.
ADR-0009 Phase 8 requirements:
Store table identifier (path + table name encoded as bytes)
Store accessed keys (full key bytes including table prefix)
Support conflict detection predicates (W∩W, R∩W)
Provide size control options for memory management