describe
pas akun dihapus via UI (atau bulk delete), warmup_logs entries-nya gak ikut kehapus. ini bikin orphan rows numpuk di SQLite.
impact
- 1,879 orphan warmup_logs (~484 KB) nyangkut setelah cleanup manual di instance gw
- setiap akun dihapus, warmup history-nya tetep nyisa — lama-lama DB gembung
- query latest warmup per account jadi inaccurate karena orphan rows masih ikut kehitung
steps to reproduce
- tambah beberapa akun kiro
- tunggu warmup jalan (jadiin warmup_logs entries)
- hapus akun-akun itu via dashboard
- cek
SELECT COUNT(*) FROM warmup_logs w LEFT JOIN accounts a ON a.id = w.account_id WHERE a.id IS NULL
expected
warmup_logs kehapus cascade pas account dihapus
possible fix
- opsi A: tambahin
ON DELETE CASCADE di foreign key warmup_logs.account_id → accounts.id
- opsi B: app-level cleanup — pas delete account, delete dulu warmup_logs-nya di transaction yang sama
environment
- enx 0.1.5 (linux/amd64, go1.26.4)
- SQLite 3.45.1, WAL mode
describe
pas akun dihapus via UI (atau bulk delete), warmup_logs entries-nya gak ikut kehapus. ini bikin orphan rows numpuk di SQLite.
impact
steps to reproduce
SELECT COUNT(*) FROM warmup_logs w LEFT JOIN accounts a ON a.id = w.account_id WHERE a.id IS NULLexpected
warmup_logs kehapus cascade pas account dihapus
possible fix
ON DELETE CASCADEdi foreign key warmup_logs.account_id → accounts.idenvironment