gotosocial/internal/processing/account
kim 996da6e029 [performance] filter model and database table improvements (#4277)
- removes unnecessary fields / columns (created_at, updated_at)
- replaces filter.context_* columns with singular filter.contexts bit field which should save both struct memory and database space
- replaces filter.action string with integer enum type which should save both struct memory and database space
- adds links from filter to filter_* tables with Filter{}.KeywordIDs and Filter{}.StatusIDs fields (this also means we now have those ID slices cached, which reduces some lookups)
- removes account_id fields from filter_* tables, since there's a more direct connection between filter and filter_* tables, and filter.account_id already exists
- refactors a bunch of the filter processor logic to save on code repetition, factor in the above changes, fix a few bugs with missed error returns and bring it more in-line with some of our newer code

Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4277
Co-authored-by: kim <grufwub@gmail.com>
Co-committed-by: kim <grufwub@gmail.com>
2025-06-24 17:24:34 +02:00
..
account.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
account_test.go [performance] cache mute check results (#4202) 2025-05-31 17:30:57 +02:00
alias.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
alias_test.go [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
block.go [bugfix] process account delete synchronously to prevent OOM (#4260) 2025-06-11 11:38:10 +02:00
bookmarks.go [performance] filter model and database table improvements (#4277) 2025-06-24 17:24:34 +02:00
delete.go [bugfix] delete interaction requests when deleting account (#4278) 2025-06-19 10:21:03 +02:00
delete_test.go [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
export.go [bugfix] process account delete synchronously to prevent OOM (#4260) 2025-06-11 11:38:10 +02:00
follow.go [bugfix] Ensure Account and TargetAccount set when doing UndoFollow (#4118) 2025-05-03 10:10:23 +00:00
follow_request.go [feature] /api/v1/follow_requests/outgoing (#4224) 2025-06-02 11:46:17 +02:00
follow_test.go [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
get.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
import.go [bugfix] process account delete synchronously to prevent OOM (#4260) 2025-06-11 11:38:10 +02:00
interactionpolicies.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
lists.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
move.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
move_test.go [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
mute.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
note.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
relationships.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
rss.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
rss_test.go [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
statuses.go [performance] filter model and database table improvements (#4277) 2025-06-24 17:24:34 +02:00
themes.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
themes_test.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
tokens.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
update.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
update_test.go [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00