{"id":"lsm-read-path-correct-across-flushes","text":"The LSM read path maintains correctness across memtable flushes by searching newest-first (memtable then SSTables in reverse sequence order) using a reference swap rather than deep copy for the frozen memtable.","truth_value":"IN","source":"","source_url":"","source_hash":"","justifications":[{"type":"SL","antecedents":["lsm-newest-first-read-path","lsm-memtable-swap-is-reference-not-copy"],"outlist":["flush-clears-then-appends"],"label":"The newest-first search order is correct but the flush implementation creates a window where data exists in neither memtable nor SSTable list, causing transient read misses"}],"dependents":[],"metadata":{},"created_at":"","updated_at":"","reviewed_at":"","verified_at":"","retracted_at":"","explanation":{"steps":[{"node":"lsm-read-path-correct-across-flushes","truth_value":"IN","reason":"SL justification valid","antecedents":["lsm-newest-first-read-path","lsm-memtable-swap-is-reference-not-copy"],"label":"The newest-first search order is correct but the flush implementation creates a window where data exists in neither memtable nor SSTable list, causing transient read misses","outlist":["flush-clears-then-appends"]},{"node":"lsm-newest-first-read-path","truth_value":"IN","reason":"premise"},{"node":"lsm-memtable-swap-is-reference-not-copy","truth_value":"IN","reason":"premise"}]}}