pleroma/test
Lain Soykaf 6c8ed0a3b8
feat(retention): walk activities incrementally with a persisted cursor
Grouping the whole activities table by thread every run is unusable on
a large instance: on a 312 GB database it plans as a seq scan plus a
50M-row on-disk sort. Instead, walk activities in id order (flake ids
are time-ordered) from a persisted cursor up to the id that corresponds
to the deadline, and verify only the threads those activities belong to
through the (type, context) index. Measured on that instance: 147 ms
for a 50k-activity range scan, 349 ms warm / 14 s cold to verify ~700
threads.

The cursor is persisted per chunk so a killed run resumes. The
watermark walk keeps a cursor of its own so it cannot leave the
age-based walk stranded behind the deadline. Adds the retention_cursors
table.
2026-09-02 12:32:09 +04:00
..
config Load an emoji.txt specific to the test env 2021-02-03 16:40:59 -06:00
credo/check/consistency Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
fixtures Merge branch 'develop' into paradedb-search-backend 2026-07-26 09:15:42 +00:00
instance_static support for special chars in pack name 2020-09-24 09:12:37 +03:00
mix feat(retention): walk activities incrementally with a persisted cursor 2026-09-02 12:32:09 +04:00
pleroma feat(retention): walk activities incrementally with a persisted cursor 2026-09-02 12:32:09 +04:00
support Revert "Only warn about bad clear_config usage if warned usage is met" 2026-07-19 22:15:37 +02:00
test_helper.exs Add ParadeDB docker integration test 2026-03-03 12:36:01 +04:00