This repository was archived by the owner on Apr 26, 2024. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Gracefully drop MSC2716 related tables (incrementally import history) #15786
Copy link
Copy link
Closed
Copy link
Labels
A-DatabaseDB stuff like queries, migrations, new/remove columns, indexes, unexpected entries in the dbDB stuff like queries, migrations, new/remove columns, indexes, unexpected entries in the dbT-TaskRefactoring, removal, replacement, enabling or disabling functionality, other engineering tasks.Refactoring, removal, replacement, enabling or disabling functionality, other engineering tasks.Z-Future-MaintenanceThings that can't yet be done, but will need cleaning up in a couple of months/releasesThings that can't yet be done, but will need cleaning up in a couple of months/releases
Description
Gracefully drop MSC2716 related tables (incrementally import history) in multiple steps/phases.
Step 1
In one Synapse version, stop writing to any MSC2716 related tables. The normal steps to gracefully drop a table usually include a step to first switch over reads but keep writing but since this is a experimental feature, we don't need to worry about the feature working we can just stop reading and writing in the same step.
This is being tackled in #15748
Step 2
In the Synapse release after the first step ships, we can bump SCHEMA_COMPAT_VERSION and drop the tables altogether.
Relevant tables to drop:
-- Drop tables related to MSC2716 since the implementation is being removed
DROP TABLE insertion_events;
DROP TABLE insertion_event_edges;
DROP TABLE insertion_event_extremities;
DROP TABLE batch_events;Metadata
Metadata
Assignees
Labels
A-DatabaseDB stuff like queries, migrations, new/remove columns, indexes, unexpected entries in the dbDB stuff like queries, migrations, new/remove columns, indexes, unexpected entries in the dbT-TaskRefactoring, removal, replacement, enabling or disabling functionality, other engineering tasks.Refactoring, removal, replacement, enabling or disabling functionality, other engineering tasks.Z-Future-MaintenanceThings that can't yet be done, but will need cleaning up in a couple of months/releasesThings that can't yet be done, but will need cleaning up in a couple of months/releases