Regression in DBTest.PurgeInfoLogs
- Dominant language
- C++
- Stars
- 32.1k
- Forks
- 6.9k
- Avg merge
- 32m
- Merged PRs (30d)
- 1
Description
Running the following command shows a test failure:
./db_test --gtest_filter=DBTest.Pu*
Note: Google Test filter = DBTest.Pu*
[==========] Running 2 tests from 1 test case.
[----------] Global test environment set-up.
[----------] 2 tests from DBTest
[ RUN ] DBTest.PutSingleDeleteGet
[ OK ] DBTest.PutSingleDeleteGet (455 ms)
[ RUN ] DBTest.PurgeInfoLogs
db/db_test.cc:2574: Failure
Value of: env_->GetChildren(dbname_, &db_files).IsNotFound()
Actual: false
Expected: true
[ FAILED ] DBTest.PurgeInfoLogs (33 ms)
[----------] 2 tests from DBTest (488 ms total)
[----------] Global test environment tear-down
[==========] 2 tests from 1 test case ran. (488 ms total)
[ PASSED ] 1 test.
[ FAILED ] 1 test, listed below:
[ FAILED ] DBTest.PurgeInfoLogs
1 FAILED TEST
Running the PurgeInfoLogs alone works fine. I think the problem is that the "db_log_dir" is introduced and never cleaned up.
I have tracked this down to be introduced by the change for #9984. I have not tracked down the solution.
Contributor guide
Research direction
Start by running ./db_test --gtest_filter=DBTest.Pu* and inspect db/db_test.cc around line 2574, especially the PurgeInfoLogs test. Compare the setup and cleanup introduced by #9984, focusing on the db_log_dir mentioned in the report. Done means the filtered tests pass together while PurgeInfoLogs still passes when run alone.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- databases, testing
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100