Deflake DBBasicTestWithTimestampCompressionSettings.PutAndGetWithComp… (#9136)

Summary:
…action
```
db/db_with_timestamp_basic_test.cc:2643: Failure
db_->CompactFiles(compact_opt, handles_[cf], collector->GetFlushedFiles(), static_cast<int>(kNumTimestamps - i))
Invalid argument: A compaction must contain at least one file.
```
Able to be reproduced by run multiple test in parallel.

Pull Request resolved: https://github.com/facebook/rocksdb/pull/9136

Test Plan:
```
gtest-parallel ./db_with_timestamp_basic_test --gtest_filter=Timestamp/DBBasicTestWithTimestampCompressionSettings.PutAndGetWithCompaction/12 -r 100 -w 100
```

Reviewed By: riversand963

Differential Revision: D32197734

Pulled By: jay-zhuang

fbshipit-source-id: aeb0d6e9b37312f577e203ca81bb7a0f14d4e7ce
This commit is contained in:
Jay Zhuang 2021-11-05 17:56:33 -07:00 committed by Facebook GitHub Bot
parent 3fbddb1d27
commit 5aad38f262

View File

@ -2632,6 +2632,8 @@ TEST_P(DBBasicTestWithTimestampCompressionSettings, PutAndGetWithCompaction) {
// incremental positions such that lowerlevel[1].smallest.userkey == // incremental positions such that lowerlevel[1].smallest.userkey ==
// higherlevel[0].largest.userkey // higherlevel[0].largest.userkey
ASSERT_OK(Flush(cf)); ASSERT_OK(Flush(cf));
ASSERT_OK(dbfull()->TEST_WaitForCompact()); // wait for flush (which
// is also a compaction)
// compact files (2 at each level) to a lower level such that all // compact files (2 at each level) to a lower level such that all
// keys with the same timestamp is at one level, with newer versions // keys with the same timestamp is at one level, with newer versions