{"id":"flush-clears-then-appends","text":"`_flush()` both clears `self._memtable` and appends to `self._sstables`, creating a window where data exists in neither location if a concurrent reader checks between the two mutations","truth_value":"OUT","source":"entries/2026/05/28/topic-lsm-concurrency-safety.md","source_url":"","source_hash":"","justifications":[],"dependents":["lsm-read-path-correct-across-flushes"],"metadata":{"_retracted":true},"created_at":"","updated_at":"","reviewed_at":"","verified_at":"","retracted_at":"","explanation":{"steps":[{"node":"flush-clears-then-appends","truth_value":"OUT","reason":"retracted premise"}]}}