Executing the second phase of two-phase drop, to remove the WT index table, is currently done when the dropCollection timestamp becomes checkpointed. This is fine because currently we do not allow reads at any PITs between oldest timestamp and the dropCollection timestamp (due to the fact that catalog is not versioned).
Timeline:
-------- oldest --------------- drop (1st phase, with drop timestamp) ---------- checkpoint – drop (2nd phase, actual WT index table drop)
However, in the future, catalog will be versioned so we will want to serve index reads between oldest and dropCollection (1st phase). In that case, we will want to delay the 2nd phase (actual WT drop) until oldest timestamp move past the dropCollection timestamp.
- is duplicated by
-
SERVER-33161 Postpone WiredTigerKVEngine table drops until the _mdb_catalog change is checkpointed
- Closed
- related to
-
SERVER-59005 Storage engine clean shutdown can race with startup
- Closed
-
SERVER-33161 Postpone WiredTigerKVEngine table drops until the _mdb_catalog change is checkpointed
- Closed
-
SERVER-43134 Only run background validation on check-pointed tables
- Closed