dbprune: add --keep-followed and don't prune pinned posts by default #897

Merged
Oneric merged 4 commits from Oneric/akkoma:mix-prune_newopts into develop 2025-05-09 21:31:37 +00:00
Owner

This allows keeping posts and boosts from followed remote actors regardless of age, or optionally everything they interacted with (like, emoji react, ...).

Furthermore, pinned posts are now no longer pruned by default which should avoid the refetch surge afterwards. If someone really wants to there’s a setting to keep pruning them however.

Unlike other criteria pinned posts being protected does not extend to their threads, even with --keep-threads; if someone really wants to they can try adding this, but I think it should be kept separate from --keep-threads. I use --keep-threads but do not care about preserving threads of pinned posts of some random remote user i might have never actually looked at. Implementing it similar to --keep-followed {posts,full,none} seems best (if done at all).
Given the query planner already struggled with this version of pinned-post protection a thread-aware version might be even more finicky to get right.
It not protecting threads of pinned posts by default also matches better with previous behaviour

This allows keeping posts and boosts from followed remote actors regardless of age, or optionally everything they interacted with (like, emoji react, ...). Furthermore, pinned posts are now no longer pruned by default which should avoid the refetch surge afterwards. If someone really wants to there’s a setting to keep pruning them however. Unlike other criteria pinned posts being protected does not extend to their threads, even with `--keep-threads`; if someone really wants to they can try adding this, but I think it should be kept separate from `--keep-threads`. I use `--keep-threads` but do not care about preserving threads of pinned posts of some random remote user i might have never actually looked at. Implementing it similar to `--keep-followed {posts,full,none}` seems best (if done at all). Given the query planner already struggled with this version of pinned-post protection a thread-aware version might be even more finicky to get right. It not protecting threads of pinned posts by default also matches better with previous behaviour
Oneric force-pushed mix-prune_newopts from 274c16aab1
Some checks are pending
ci/woodpecker/pr/build-amd64 Pipeline is pending approval
ci/woodpecker/pr/build-arm64 Pipeline is pending approval
ci/woodpecker/pr/docs Pipeline is pending approval
ci/woodpecker/pr/lint Pipeline is pending approval
ci/woodpecker/pr/test/1 Pipeline is pending approval
ci/woodpecker/pr/test/2 Pipeline is pending approval
to 516827c356
All checks were successful
ci/woodpecker/pr/lint Pipeline was successful
ci/woodpecker/pr/test/2 Pipeline was successful
ci/woodpecker/pr/test/1 Pipeline was successful
ci/woodpecker/pr/build-arm64 Pipeline was successful
ci/woodpecker/pr/build-amd64 Pipeline was successful
ci/woodpecker/pr/docs Pipeline was successful
ci/woodpecker/pull_request_closed/lint Pipeline was successful
ci/woodpecker/pull_request_closed/test/1 Pipeline was successful
ci/woodpecker/pull_request_closed/test/2 Pipeline was successful
ci/woodpecker/pull_request_closed/build-arm64 Pipeline was successful
ci/woodpecker/pull_request_closed/build-amd64 Pipeline was successful
ci/woodpecker/pull_request_closed/docs Pipeline was successful
2025-05-09 21:02:46 +00:00
Compare
Author
Owner

Merging as it has tests, worked fine for me (, as a mix task can't interfere with regular usage) and to to spare admins from continuing to suffer from a post-prune refetch onslaught

Merging as it has tests, worked fine for me *(, as a mix task can't interfere with regular usage)* and to to spare admins from continuing to suffer from a post-prune refetch onslaught
Oneric merged commit 7e5a5db63d into develop 2025-05-09 21:31:37 +00:00
Oneric deleted branch mix-prune_newopts 2025-05-09 21:31:37 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
AkkomaGang/akkoma!897
No description provided.