From c3a4bea5dcf851b0236c682bf2fa4eba85a7c125 Mon Sep 17 00:00:00 2001 From: omegaga Date: Wed, 3 Aug 2016 15:19:35 -0700 Subject: [PATCH] Fix flaky test `ObsoleteFiles` Summary: The test `ObsoleteFiles` failed occasionally on slow device. This problem appears on Travis CI several times. The reason is that we did not wait until compaction jobs are finished in the test, while in slower device the background jobs take longer time to finish. Test Plan: Pass existing tests. Reviewers: yiwu, sdong Reviewed By: sdong Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D61479 --- db/compact_files_test.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/db/compact_files_test.cc b/db/compact_files_test.cc index 794defb11..3a4980f44 100644 --- a/db/compact_files_test.cc +++ b/db/compact_files_test.cc @@ -10,6 +10,7 @@ #include #include +#include "db/db_impl.h" #include "rocksdb/db.h" #include "rocksdb/env.h" #include "util/string_util.h" @@ -144,6 +145,7 @@ TEST_F(CompactFilesTest, ObsoleteFiles) { auto l0_files = collector->GetFlushedFiles(); ASSERT_OK(db->CompactFiles(CompactionOptions(), l0_files, 1)); + reinterpret_cast(db)->TEST_WaitForCompact(); // verify all compaction input files are deleted for (auto fname : l0_files) {