-
Notifications
You must be signed in to change notification settings - Fork 6.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
infinite compaction loop #10752
Comments
Hi @andoryu-, thanks for reporting the issue. L1-L1 compaction can occur when RocksDB tries to clean up keys with different sequence number in the same file at bottommost level. I think in this case, keys with different sequence number are not dropped during compaction as they are not eligible for garbage collection (they are above |
Thanks @andoryu- for reporting and @cbi42 for the investigation.
|
Thanks @cbi42 , @riversand963 for investigating this issue. |
Hi @andoryu- , thanks for the info. It seems to be an issue with |
…0767) Summary: fix for #10752 where RocksDB could be in an infinite compaction loop (with compaction reason kBottommostFiles) if allow_ingest_behind is enabled and the bottommost level is unfilled. Pull Request resolved: #10767 Test Plan: Added a unit test to reproduce the compaction loop. Reviewed By: ajkr Differential Revision: D40031861 Pulled By: ajkr fbshipit-source-id: 71c4b02931fbe507a847632905404c9b8fa8c96b
Fixed in #10767. |
…cebook#10767) Summary: fix for facebook#10752 where RocksDB could be in an infinite compaction loop (with compaction reason kBottommostFiles) if allow_ingest_behind is enabled and the bottommost level is unfilled. Pull Request resolved: facebook#10767 Test Plan: Added a unit test to reproduce the compaction loop. Reviewed By: ajkr Differential Revision: D40031861 Pulled By: ajkr fbshipit-source-id: 71c4b02931fbe507a847632905404c9b8fa8c96b
…0767) Summary: fix for #10752 where RocksDB could be in an infinite compaction loop (with compaction reason kBottommostFiles) if allow_ingest_behind is enabled and the bottommost level is unfilled. Pull Request resolved: #10767 Test Plan: Added a unit test to reproduce the compaction loop. Reviewed By: ajkr Differential Revision: D40031861 Pulled By: ajkr fbshipit-source-id: 71c4b02931fbe507a847632905404c9b8fa8c96b
Expected behavior
rocksdb do necessary compactions instead of being locked in a compaction loop.
Actual behavior
rocksdb won't stop compacting, it just keep compacting the same file from L1 to L1, with BottommostFiles as reason.
lsm_state stays [0, 1, 0, 0, 0, 0, 0] but the same file is compacted over and over.
Steps to reproduce the behavior
start with two column families.
write to the other cf(not default) with udt enabled.
then rocksdb starts to keep compacting L1 to L1.
info log see below:
The text was updated successfully, but these errors were encountered: