summaryrefslogtreecommitdiff
path: root/internal/db/media.go
diff options
context:
space:
mode:
authorLibravatar tobi <31960611+tsmethurst@users.noreply.github.com>2022-06-30 12:22:10 +0200
committerLibravatar GitHub <noreply@github.com>2022-06-30 12:22:10 +0200
commit9e7d022a06779a03e3eaaadad6cc33423f46892b (patch)
tree7c13c5af98fba382fc75c1dc195bdf0cc9cdd905 /internal/db/media.go
parent[feature] Use default instance thumbnail if instance account header not set (... (diff)
downloadgotosocial-9e7d022a06779a03e3eaaadad6cc33423f46892b.tar.xz
[feature] Cleanup unattached local media (#680)
* add localUnattached db function * add parseOlderThan util function * add pruneunusedlocalattachments to media manager * add unusedlocal pruning to schedule + admin call * set number of days to keep as a const * fix test
Diffstat (limited to 'internal/db/media.go')
-rw-r--r--internal/db/media.go5
1 files changed, 5 insertions, 0 deletions
diff --git a/internal/db/media.go b/internal/db/media.go
index 636fc61f2..2f9ed79dc 100644
--- a/internal/db/media.go
+++ b/internal/db/media.go
@@ -38,4 +38,9 @@ type Media interface {
// GetAvatarsAndHeaders fetches limit n avatars and headers with an id < maxID. These headers
// and avis may be in use or not; the caller should check this if it's important.
GetAvatarsAndHeaders(ctx context.Context, maxID string, limit int) ([]*gtsmodel.MediaAttachment, Error)
+ // GetLocalUnattachedOlderThan fetches limit n local media attachments, older than the given time, which
+ // aren't header or avatars, and aren't attached to a status. In other words, attachments which were uploaded
+ // but never used for whatever reason, or attachments that were attached to a status which was subsequently
+ // deleted.
+ GetLocalUnattachedOlderThan(ctx context.Context, olderThan time.Time, maxID string, limit int) ([]*gtsmodel.MediaAttachment, Error)
}