lazyBoy/crates/api/src/retention/revisions.sql

8 lines
345 B
SQL

DELETE FROM memory_revisions WHERE (memory_id,revision) IN (
SELECT r.memory_id,r.revision FROM memory_revisions r JOIN memory_items m ON m.id=r.memory_id
WHERE r.revision < m.revision AND (
r.created_at < now() - make_interval(days => $1)
OR r.revision <= m.revision - 10
) ORDER BY r.created_at LIMIT $2 FOR UPDATE OF r SKIP LOCKED
)