diff options
| author | 2022-10-04 17:50:29 +0200 | |
|---|---|---|
| committer | 2022-10-04 17:52:14 +0200 | |
| commit | c31f21904c10f304e40cfbcb9bab9b4099e15e95 (patch) | |
| tree | c39d8abea23fc63df06c40031e39f1e57eef4788 | |
| parent | [chore] Normalize domain blocks to punycode (#873) (diff) | |
| download | gotosocial-c31f21904c10f304e40cfbcb9bab9b4099e15e95.tar.xz | |
[bugfix] Use background context instead of request context for async processing (#888)v0.5.2
Fixes an issue where async processing was not completing correctly.
In particular this applies to side effects of domain blocks: while the domain block was being entered and enforced correctly, side effects like deleting accounts and updating the instance entry for the blocked instance were not. This fixes that :)
| -rw-r--r-- | internal/processing/admin/createdomainblock.go | 4 | ||||
| -rw-r--r-- | internal/processing/admin/mediaprune.go | 6 | 
2 files changed, 6 insertions, 4 deletions
diff --git a/internal/processing/admin/createdomainblock.go b/internal/processing/admin/createdomainblock.go index fcc0cb480..690160150 100644 --- a/internal/processing/admin/createdomainblock.go +++ b/internal/processing/admin/createdomainblock.go @@ -75,7 +75,9 @@ func (p *processor) DomainBlockCreate(ctx context.Context, account *gtsmodel.Acc  		block = &newBlock  		// Process the side effects of the domain block asynchronously since it might take a while -		go p.initiateDomainBlockSideEffects(ctx, account, block) +		go func() { +			p.initiateDomainBlockSideEffects(context.Background(), account, block) +		}()  	}  	// Convert our gts model domain block into an API model diff --git a/internal/processing/admin/mediaprune.go b/internal/processing/admin/mediaprune.go index 40652c3ca..c7fbbdc1e 100644 --- a/internal/processing/admin/mediaprune.go +++ b/internal/processing/admin/mediaprune.go @@ -33,7 +33,7 @@ func (p *processor) MediaPrune(ctx context.Context, mediaRemoteCacheDays int) gt  	}  	go func() { -		pruned, err := p.mediaManager.PruneAllRemote(ctx, mediaRemoteCacheDays) +		pruned, err := p.mediaManager.PruneAllRemote(context.Background(), mediaRemoteCacheDays)  		if err != nil {  			log.Errorf("MediaPrune: error pruning remote cache: %s", err)  		} else { @@ -42,7 +42,7 @@ func (p *processor) MediaPrune(ctx context.Context, mediaRemoteCacheDays int) gt  	}()  	go func() { -		pruned, err := p.mediaManager.PruneUnusedLocalAttachments(ctx) +		pruned, err := p.mediaManager.PruneUnusedLocalAttachments(context.Background())  		if err != nil {  			log.Errorf("MediaPrune: error pruning unused local cache: %s", err)  		} else { @@ -51,7 +51,7 @@ func (p *processor) MediaPrune(ctx context.Context, mediaRemoteCacheDays int) gt  	}()  	go func() { -		pruned, err := p.mediaManager.PruneAllMeta(ctx) +		pruned, err := p.mediaManager.PruneAllMeta(context.Background())  		if err != nil {  			log.Errorf("MediaPrune: error pruning meta: %s", err)  		} else {  | 
