fn handle_delete_mark(&mut self, mark: &[u8]) {
        let mut valid = self.write_iter_seek_to(mark);
        let mut write_iter = self.write_iter.take().unwrap();
        if valid && write_iter.key() == mark {
            // The delete mark itself is handled in `filter`.
            valid = write_iter.next().unwrap();
        }

        while valid {
            let (key, value) = (write_iter.key(), write_iter.value());
            if truncate_ts(key) != self.key_prefix.as_slice() {
                break;
            }
            self.handle_filtered_write(parse_write(value));
            self.delete_write_key(key);
            valid = write_iter.next().unwrap();
        }
        self.write_iter = Some(write_iter);
    }
// Do gc before a delete mark.
Do gc before a delete mark.
Do gc before a delete mark .
fn handle_delete_mark(&mut self, mark: &[u8]) {
        let mut valid = self.write_iter_seek_to(mark);
        let mut write_iter = self.write_iter.take().unwrap();
        if valid && write_iter.key() == mark {
            // The delete mark itself is handled in `filter`.
            valid = write_iter.next().unwrap();
        }
        while valid {
            let (key, value) = (write_iter.key(), write_iter.value());
            if truncate_ts(key) != self.key_prefix.as_slice() {
                break;
            }
            self.handle_filtered_write(parse_write(value));
            self.delete_write_key(key);
            valid = write_iter.next().unwrap();
        }
        self.write_iter = Some(write_iter);
    }
fn handle_delete_mark ( & mut self , mark : & [ u8 ] ) { let mut valid = self . write_iter_seek_to ( mark ) ; let mut write_iter = self . write_iter . take ( ) . unwrap ( ) ; if valid && write_iter . key ( ) == mark { // The delete mark itself is handled in `filter`. valid = write_iter . next ( ) . unwrap ( ) ; } while valid { let ( key , value ) = ( write_iter . key ( ) , write_iter . value ( ) ) ; if truncate_ts ( key ) != self . key_prefix . as_slice ( ) { break ; } self . handle_filtered_write ( parse_write ( value ) ) ; self . delete_write_key ( key ) ; valid = write_iter . next ( ) . unwrap ( ) ; } self . write_iter = Some ( write_iter ) ; }
Do gc before a delete mark.
Do gc before a delete mark .
&mut self
mark
&[u8]