From c9c0773f2c2363dcfa37e675b83ec3f0b49bd0d9 Mon Sep 17 00:00:00 2001 From: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com> Date: Fri, 26 Apr 2024 13:50:46 +0100 Subject: [performance] update remaining worker pools to use queues (#2865) * start replacing client + federator + media workers with new worker + queue types * refactor federatingDB.Delete(), drop queued messages when deleting account / status * move all queue purging to the processor workers * undo toolchain updates * code comments, ensure dereferencer worker pool gets started * update gruf libraries in readme * start the job scheduler separately to the worker pools * reshuffle ordering or server.go + remove duplicate worker start / stop * update go-list version * fix vendoring * move queue invalidation to before wipeing / deletion, to ensure queued work not dropped * add logging to worker processing functions in testrig, don't start workers in unexpected places * update go-structr to add (+then rely on) QueueCtx{} type * ensure more worker pools get started properly in tests * fix remaining broken tests relying on worker queue logic * fix account test suite queue popping logic, ensure noop workers do not pull from queue * move back accidentally shuffled account deletion order * ensure error (non nil!!) gets passed in refactored federatingDB{}.Delete() * silently drop deletes from accounts not permitted to * don't warn log on forwarded deletes * make if else clauses easier to parse * use getFederatorMsg() * improved code comment * improved code comment re: requesting account delete checks * remove boolean result from worker start / stop since false = already running or already stopped * remove optional passed-in http.client * remove worker starting from the admin CLI commands (we don't need to handle side-effects) * update prune cli to start scheduler but not all of the workers * fix rebase issues * remove redundant return statements * i'm sorry sir linter --- internal/processing/workers/util.go | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'internal/processing/workers/util.go') diff --git a/internal/processing/workers/util.go b/internal/processing/workers/util.go index cd936f428..a01982e1a 100644 --- a/internal/processing/workers/util.go +++ b/internal/processing/workers/util.go @@ -32,9 +32,9 @@ import ( "github.com/superseriousbusiness/gotosocial/internal/state" ) -// utilF wraps util functions used by both +// util provides util functions used by both // the fromClientAPI and fromFediAPI functions. -type utilF struct { +type utils struct { state *state.State media *media.Processor account *account.Processor @@ -45,7 +45,7 @@ type utilF struct { // used to totally delete a status + all // its attachments, notifications, boosts, // and timeline entries. -func (u *utilF) wipeStatus( +func (u *utils) wipeStatus( ctx context.Context, statusToDelete *gtsmodel.Status, deleteAttachments bool, @@ -152,7 +152,7 @@ func (u *utilF) wipeStatus( // already, and the Move must be valid. // // Return bool will be true if all goes OK. -func (u *utilF) redirectFollowers( +func (u *utils) redirectFollowers( ctx context.Context, originAcct *gtsmodel.Account, targetAcct *gtsmodel.Account, @@ -239,7 +239,7 @@ func (u *utilF) redirectFollowers( return true } -func (u *utilF) incrementStatusesCount( +func (u *utils) incrementStatusesCount( ctx context.Context, account *gtsmodel.Account, status *gtsmodel.Status, @@ -271,7 +271,7 @@ func (u *utilF) incrementStatusesCount( return nil } -func (u *utilF) decrementStatusesCount( +func (u *utils) decrementStatusesCount( ctx context.Context, account *gtsmodel.Account, ) error { @@ -305,7 +305,7 @@ func (u *utilF) decrementStatusesCount( return nil } -func (u *utilF) incrementFollowersCount( +func (u *utils) incrementFollowersCount( ctx context.Context, account *gtsmodel.Account, ) error { @@ -334,7 +334,7 @@ func (u *utilF) incrementFollowersCount( return nil } -func (u *utilF) decrementFollowersCount( +func (u *utils) decrementFollowersCount( ctx context.Context, account *gtsmodel.Account, ) error { @@ -368,7 +368,7 @@ func (u *utilF) decrementFollowersCount( return nil } -func (u *utilF) incrementFollowingCount( +func (u *utils) incrementFollowingCount( ctx context.Context, account *gtsmodel.Account, ) error { @@ -397,7 +397,7 @@ func (u *utilF) incrementFollowingCount( return nil } -func (u *utilF) decrementFollowingCount( +func (u *utils) decrementFollowingCount( ctx context.Context, account *gtsmodel.Account, ) error { @@ -431,7 +431,7 @@ func (u *utilF) decrementFollowingCount( return nil } -func (u *utilF) incrementFollowRequestsCount( +func (u *utils) incrementFollowRequestsCount( ctx context.Context, account *gtsmodel.Account, ) error { @@ -460,7 +460,7 @@ func (u *utilF) incrementFollowRequestsCount( return nil } -func (u *utilF) decrementFollowRequestsCount( +func (u *utils) decrementFollowRequestsCount( ctx context.Context, account *gtsmodel.Account, ) error { -- cgit v1.2.3