summaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
authorLibravatar kim <grufwub@gmail.com>2025-11-10 13:07:34 +0100
committerLibravatar tobi <tobi.smethurst@protonmail.com>2025-11-17 14:14:57 +0100
commitc61b89fd413b3a8f3782981509d21186bef82a1f (patch)
tree503bc2d83cf7d5ea35ef974ec2c5ae9050a3a074 /cmd
parent[chore] update dependencies (#4547) (diff)
downloadgotosocial-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.go9
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
}