[ADD] finalize_db: run `_gc_file_store_unsafe` after attachment cleanup
Add ``lib/python/file_gc.py``, a minimal Odoo-shell script that calls ``ir.attachment._gc_file_store_unsafe()`` to remove filestore files no longer referenced by any ``ir_attachment`` record. Invoke it in ``finalize_db.sh`` after the SQL attachment purges so that the deleted CSS/JS asset bundles, resized partner thumbnails, and orphaned ``ir_attachment`` rows also have their backing files cleaned from disk.
This commit is contained in:
1
lib/python/file_gc.py
Normal file
1
lib/python/file_gc.py
Normal file
@@ -0,0 +1 @@
|
||||
env['ir.attachment']._gc_file_store_unsafe()
|
||||
@@ -122,7 +122,15 @@ SET state = 'installed'
|
||||
WHERE state = 'to upgrade';
|
||||
" "$DB_NAME" || true
|
||||
|
||||
# ────────────────────────────────────────────────────────────
|
||||
# Clean orphaned filestore files left behind by the attachment
|
||||
# deletions above. ``_gc_file_store_unsafe`` scans the filestore
|
||||
# and removes files that no longer have a matching
|
||||
# ``ir_attachment`` record.
|
||||
# ────────────────────────────────────────────────────────────
|
||||
echo "Cleaning orphaned filestore files..."
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
exec_python_script_in_odoo_shell "$ODOO_SERVICE" "$DB_NAME" "$SCRIPT_DIR/lib/python/file_gc.py"
|
||||
|
||||
PYTHON_SCRIPT="${SCRIPT_DIR}/lib/python/fix_duplicated_views.py"
|
||||
echo "Remove duplicated views with script $PYTHON_SCRIPT ..."
|
||||
|
||||
Reference in New Issue
Block a user