-
Type: New Feature
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Compaction
-
None
-
8
-
StorEng - 2023-08-08
The background compaction server works as shown below:
- Find the next table to compact.
- This can be done using a cursor on the metadata file and processing the files in order
- If compaction should be executed on the selected table, compact it.
- For now, this means calling the session API compact on the selected table. This will be improved with
WT-11343.
- For now, this means calling the session API compact on the selected table. This will be improved with
- Go back to the first step.
Tasks:
- Create the internal thread behind the background compaction server
- Implement the background compaction algorithm
- Add the relevant statistics
Definition of done:
- The background compaction server tries to compact the database files continuously when enabled
- The background compaction server starts/stops as soon as it is requested by the application
- The relevant statistics and logs are generated
- causes
-
WT-11640 Remove unused variable signalled in conn_compact.c
- Closed
- depends on
-
WT-11334 Update the compact session API with a "background" value
- Closed
- is depended on by
-
SERVER-80122 Add background compaction server's activity to serverStatus
- Closed
-
SERVER-80123 Enable background compaction by default in appropriate test suites
- Closed
-
WT-11343 Improve how the background compaction server decides when a table should be compacted
- Closed
- tested by
-
WT-11358 Create tests for the background compaction server
- Closed