Support DeleteRange in transactions
- Dominant language
- C++
- Stars
- 32.1k
- Forks
- 6.9k
- Avg merge
- 32m
- Merged PRs (30d)
- 1
Description
Now that DeleteRange is performant, it would be nice to support it in transactions as well.
Summary of the essential changes:
1. Finding the last visible RangeDelete tombstone needs to be updated to make use of ReadCallback::IsVisible same as the regular reads.
https://github.com/facebook/rocksdb/blob/106a94af1552ba6eb89cfe08fd4f92c2078af463/db/range_tombstone_fragmenter.cc#L311
2. WritePrepared tests assumed the key cannot be RangeDelete. The tests must be updated to add RangeDelete type anywhere Delete and SingleDelete is used: https://github.com/facebook/rocksdb/blob/master/utilities/transactions/write_prepared_transaction_test.cc#L513
3. Finally the existing tests for range delete should be extended to include transactions (extended with ::DeleteRange) API as well.
Contributor guide
Assessment
This issue has not been assessed yet.