Iterate non-deleted rows in the memtable as `Vec `. Skips rows marked as deleted in the memtable's virtual segment delete bitmap. For rows in flushed segments, use `SegmentReader`.
(&self)
| 156 | /// Skips rows marked as deleted in the memtable's virtual segment |
| 157 | /// delete bitmap. For rows in flushed segments, use `SegmentReader`. |
| 158 | pub fn scan_memtable_rows(&self) -> impl Iterator<Item = Vec<Value>> + '_ { |
| 159 | let deletes = self.delete_bitmaps.get(&self.memtable_segment_id); |
| 160 | self.memtable |
| 161 | .iter_rows() |
| 162 | .enumerate() |
| 163 | .filter_map(move |(row_idx, row)| { |
| 164 | if deletes.is_some_and(|bm| bm.is_deleted(row_idx as u32)) { |
| 165 | None |
| 166 | } else { |
| 167 | Some(row) |
| 168 | } |
| 169 | }) |
| 170 | } |
| 171 | |
| 172 | /// Iterate non-deleted rows paired with their surrogate identity. |
| 173 | /// |
no test coverage detected