-
Notifications
You must be signed in to change notification settings - Fork 594
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
storage: Cleanup states for dropped TABLEs/MVs #2908
Comments
I used to think that we rely on background compaction (vacuum) to remove the data because the table is basically a prefix on large shared storage, right? So we can not drop the files immediately after dropping the table. So the question is, will the compaction processes remove the data with zero reference count? |
Right. Data of dropped table/mv should be invisible to user immeidately but should be cleaned up asynchorously via background compaction. |
@mikechesterwang This looks like to be one of your requirements. |
BTW different MVs may share the same arrangement, so the real drop happens on the arrangement. |
Streaming and Meta part:
Storage part:
|
cc @Li0k may help change all stateful executors to use table id, and record all tables in one MV, before proceeding to implement compaction filter. |
#3038 resolves this issue. |
We already support
DROP TABLE
andDROP MATERIALIZED VIEW
in frontent and meta but the data belonging to dropped tables/mvs still remain on storage occupying storage spaces and participating in compaction.We should support state cleanup for dropped TABLEs/MVs. One feasible solution is to delete states via a compaction filter.
Related issues:
#191
#201
#1153
#1212
#1272
The text was updated successfully, but these errors were encountered: