-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Schema Management
-
None
-
Storage Engines - Foundations
-
1,071.776
-
None
-
None
Dropping layered tables is a complex operation, which consists of several components including:
- Issuing the TRIM request to storage.
- Dropping the ingest table.
- Dropping the stable table.
- Closing all dhandles.
- Enqueuing the metadata operation for the shared metadata table.
We need to ensure that we can recover from a failure of any of these steps. Alternatively, we can decide that (at least in the meantime), it would be best to panic if a failure occurs after one or more of these steps.
We should also consider at which step the TRIM command should be issued. We currently issue it towards the beginning, but maybe a better place would be towards the end, as it is the most permanent action.