diff options
| author | 2025-11-10 13:07:34 +0100 | |
|---|---|---|
| committer | 2025-11-17 14:14:57 +0100 | |
| commit | c61b89fd413b3a8f3782981509d21186bef82a1f (patch) | |
| tree | 503bc2d83cf7d5ea35ef974ec2c5ae9050a3a074 /cmd | |
| parent | [chore] update dependencies (#4547) (diff) | |
| download | gotosocial-c61b89fd413b3a8f3782981509d21186bef82a1f.tar.xz | |
[performance] remove hard reliance on .Cached field to indicate whether media / emoji is cached (#4545)
This removes our hard reliance on the `.Cached` field of media and emojis to determine whether it exists in storage. We still make use of it as a useful flag to know whether to even bother checking storage, but we ultimately rely on the `ErrNotFound` response of storage to determine whether the media exists and needs recaching. This now removes our hard reliance on performing the `FixCacheStatus()` cleanup operations for media and emojis, which should reduce a whole bunch of S3 storage driver calls (thus, reducing cost for metered S3 buckets).
Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4545
Co-authored-by: kim <grufwub@gmail.com>
Co-committed-by: kim <grufwub@gmail.com>
Diffstat (limited to 'cmd')
| -rw-r--r-- | cmd/gotosocial/action/admin/media/prune/all.go | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/cmd/gotosocial/action/admin/media/prune/all.go b/cmd/gotosocial/action/admin/media/prune/all.go index f030517e7..a6352b298 100644 --- a/cmd/gotosocial/action/admin/media/prune/all.go +++ b/cmd/gotosocial/action/admin/media/prune/all.go @@ -52,13 +52,8 @@ func All(ctx context.Context) error { days := config.GetMediaRemoteCacheDays() // Perform the actual pruning with logging. - prune.cleaner.Media().All(ctx, days) - prune.cleaner.Emoji().All(ctx, days) - - // Perform a cleanup of storage (for removed local dirs). - if err := prune.storage.Storage.Clean(ctx); err != nil { - log.Error(ctx, "error cleaning storage: %v", err) - } + prune.cleaner.Media().AllAndFix(ctx, days) + prune.cleaner.Emoji().AllAndFix(ctx, days) return nil } |
