You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As mentioned in the comment, before we use the deletion marker as a workaround for the empty result after merge. But actually, the result shouldn't be empty because it would expose stale versions of the key. Instead, it should output the delete type which provides two profits:
reduce code complexity
rocksdb compaction can help remove the delete record in the bottommost level instead of keeping the deletion marker forever
@Connor1996 Currently merge operator doesn't support output delete type. I didn't implement it because there are certain complications from upper level: deleted value (in general a non-concrete result) requires a different set of processing logic, which is often seperated from the merge procedure. I'll attend to this once available.
As mentioned in the comment, before we use the deletion marker as a workaround for the empty result after merge. But actually, the result shouldn't be empty because it would expose stale versions of the key. Instead, it should output the delete type which provides two profits:
As we already make the merge operator support changing value type https://github.com/tikv/rocksdb/blob/6.4.tikv/include/rocksdb/merge_operator.h#L121,
seems we can remove the blob index deletion marker.
/cc @tabokie, not sure whether there was any other consideration before.
Also, please push facebook/rocksdb#6447 to be merged in upstream
The text was updated successfully, but these errors were encountered: