-
Type:
Improvement
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Checkpoints, Metadata
-
None
-
Storage Engines, Storage Engines - Foundations
-
SE Foundations - Q4+ Backlog
-
None
We can improve how WiredTiger handles determines whether to include table create and drop in a checkpoint as follows:
- When creating a schema operation (whether create or drop), set defer to true.
- During checkpoint prepare, while we have the schema lock acquired, go through the queue and set all defers to false.
In the end, all schema operations before checkpoint prepare will be processed in the checkpoint, but all operations after checkpoint prepare will be processed in the next checkpoint.
This would simplify the logic, make it work with table creation, and align table drop better with checkpoint transaction acquisition.