-
Type:
Story
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Metadata
-
Storage Engines
-
30.024
-
None
-
None
With the new schema epochs API, if a client attempts to create a checkpoint that corresponds to a state:
- ...where a table does not exist, the table should be excluded from a checkpoint.
- ...where a table has been dropped, WiredTiger should panic (at least for now), regardless of whether the table has been recreated. This is because the recreated and the original tables are logically two different tables, even though they have the same name.
- ...where a table exists, and it has not been dropped after that point, the table should be included in the checkpoint.
Or to put this visually:
- — checkpoint corresponding to this point does not contain A
- Create table A
- — checkpoint corresponding to this point panics
- Drop table A
- — checkpoint does not contain A
- Create table A
- — checkpoint panics
- Drop table A
- — checkpoint does not contain A
- Create table A
- — checkpoint contains A
We need to ensure that this behavior is correct.