mirror of
https://github.com/gristlabs/grist-core.git
synced 2026-03-02 04:09:24 +00:00
(core) Remove expired attachments every hour and on shutdown
Summary: Call ActiveDoc.removeUnusedAttachments every hour using setInterval, and in ActiveDoc.shutdown (which also clears said interval). Unrelated: small fix to my webhooks code which was creating a redis client on shutdown just to quit it. Test Plan: Tweaked DocApi test to remove expired attachments by force-reloading the doc, so that it removes them during shutdown. Extracted a new testing endpoint /verifyFiles to support this test (previously running that code only happened with `/removeUnused?verifyfiles=1`). Tested the setInterval part manually. Reviewers: paulfitz, dsagal Reviewed By: paulfitz Subscribers: dsagal Differential Revision: https://phab.getgrist.com/D3387
This commit is contained in:
@@ -699,6 +699,12 @@ def migration17(tdset):
|
||||
actions.ModifyColumn(tables_map[c.parentId].tableId, c.colId, {'type': 'Attachments'})
|
||||
for c in affected_cols
|
||||
)
|
||||
# Update the types in the metadata tables
|
||||
doc_actions.append(actions.BulkUpdateRecord(
|
||||
'_grist_Tables_column',
|
||||
[c.id for c in affected_cols],
|
||||
{'type': ['Attachments' for c in affected_cols]}
|
||||
))
|
||||
# Update the values to lists
|
||||
for c in affected_cols:
|
||||
if c.isFormula:
|
||||
@@ -710,12 +716,6 @@ def migration17(tdset):
|
||||
actions.BulkUpdateRecord(table_id, table.row_ids,
|
||||
{c.colId: [conv(val) for val in table.columns[c.colId]]})
|
||||
)
|
||||
# Update the types in the metadata tables
|
||||
doc_actions.append(actions.BulkUpdateRecord(
|
||||
'_grist_Tables_column',
|
||||
[c.id for c in affected_cols],
|
||||
{'type': ['Attachments' for c in affected_cols]}
|
||||
))
|
||||
|
||||
return tdset.apply_doc_actions(doc_actions)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user