Random-write SQLite traffic fragments CoW filesystems quickly. The `h` tmpfiles directive sets +C on the database directory; new SQLite files (WAL, SHM, recreated main DB) inherit no-CoW automatically. No-op on non-btrfs filesystems. Migration of existing files must be done manually with checkpoint-first: systemctl stop phpfpm-firefly-iii.service sqlite3 .../database.sqlite 'PRAGMA wal_checkpoint(TRUNCATE);' # then recreate main file inside the +C dir systemctl start phpfpm-firefly-iii.service Skipping the wal_checkpoint and naively deleting .sqlite-wal will lose all writes that haven't been checkpointed (PHP-FPM SIGTERM does not trigger a checkpoint). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| amd | ||
| attic | ||
| halo | ||
| mx | ||
| nixtee1 | ||
| sgx | ||
| t15 | ||
| x1 | ||