rocksdb icon indicating copy to clipboard operation
rocksdb copied to clipboard

Add `is_bottommost_level` in compaction filter context

Open v01dstar opened this issue 1 year ago • 2 comments

This is a cherry-pick of https://github.com/tikv/rocksdb/commit/8e203492b81af0df1cbda907d5f0e8fbaf13d266

Adding is_bottommost_level info, so that MVCC storage engine built on top of RocksDB can decide whether to GC tombstones during compaction. i.e. If the compaction involves the bottommost level, tombstones can be discarded, otherwise, they need to be kept in order to GC old versions in the lower levels in the future.

We had 2 other compaction filter related changes but are no longer needed now:

  • https://github.com/tikv/rocksdb/commit/9554ad2b3fa7de8928054bfb30c2fcd6e714c50e range is no longer need, table properties are populated by a different field called input_table_properties in CompactionFilter::Context
  • https://github.com/tikv/rocksdb/commit/3a238bf6f367b5ee76de9c497eba823c0e156ead <- no longer needed, see the comment in https://github.com/tikv/tikv/pull/9694

v01dstar avatar Sep 22 '24 06:09 v01dstar

@LykxSassinator: adding LGTM is restricted to approvers and reviewers in OWNERS files.

In response to this:

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

ti-chi-bot[bot] avatar Sep 23 '24 05:09 ti-chi-bot[bot]

/merge

Connor1996 avatar Sep 26 '24 05:09 Connor1996

/approve

LykxSassinator avatar Sep 26 '24 05:09 LykxSassinator

[LGTM Timeline notifier]

Timeline:

  • 2024-09-26 05:34:38.938635237 +0000 UTC m=+1716948.679059176: :ballot_box_with_check: agreed by Connor1996.
  • 2024-09-26 05:43:07.008368326 +0000 UTC m=+1717456.748792265: :ballot_box_with_check: agreed by LykxSassinator.

ti-chi-bot[bot] avatar Sep 26 '24 05:09 ti-chi-bot[bot]

/merge

LykxSassinator avatar Sep 26 '24 05:09 LykxSassinator

/approve

LykxSassinator avatar Sep 26 '24 05:09 LykxSassinator

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: Connor1996, LykxSassinator

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:
  • ~~OWNERS~~ [Connor1996,LykxSassinator]

Approvers can indicate their approval by writing /approve in a comment Approvers can cancel approval by writing /approve cancel in a comment

ti-chi-bot[bot] avatar Sep 26 '24 05:09 ti-chi-bot[bot]

/merge

LykxSassinator avatar Sep 26 '24 05:09 LykxSassinator