From f7fa22ad6a71dc8e065173bfb81dd41109a6dda7 Mon Sep 17 00:00:00 2001 From: Travis Ralston <travpc@gmail.com> Date: Sun, 14 Apr 2019 00:16:43 -0600 Subject: [PATCH] Query thumbnails too, not just media twice --- .../turt2live/matrix-media-repo/api/custom/datastores.go | 2 +- .../matrix-media-repo/storage/stores/metadata_store.go | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/github.com/turt2live/matrix-media-repo/api/custom/datastores.go b/src/github.com/turt2live/matrix-media-repo/api/custom/datastores.go index 28211ba4..07ceb4c2 100644 --- a/src/github.com/turt2live/matrix-media-repo/api/custom/datastores.go +++ b/src/github.com/turt2live/matrix-media-repo/api/custom/datastores.go @@ -89,7 +89,7 @@ func GetDatastoreStorageEstimate(r *http.Request, log *logrus.Entry, user api.Us seenMediaHashes[record.Sha256Hash] = true } - thumbnails, err := db.GetOldMediaInDatastore(datastoreId, beforeTs) + thumbnails, err := db.GetOldThumbnailsInDatastore(datastoreId, beforeTs) for _, record := range thumbnails { estimates.ThumbnailsAffected++ diff --git a/src/github.com/turt2live/matrix-media-repo/storage/stores/metadata_store.go b/src/github.com/turt2live/matrix-media-repo/storage/stores/metadata_store.go index e58d969c..545c9ddb 100644 --- a/src/github.com/turt2live/matrix-media-repo/storage/stores/metadata_store.go +++ b/src/github.com/turt2live/matrix-media-repo/storage/stores/metadata_store.go @@ -14,9 +14,8 @@ type folderSize struct { const selectSizeOfDatastore = "SELECT COALESCE(SUM(size_bytes), 0) + COALESCE((SELECT SUM(size_bytes) FROM thumbnails WHERE datastore_id = $1), 0) AS size_total FROM media WHERE datastore_id = $1;" const upsertLastAccessed = "INSERT INTO last_access (sha256_hash, last_access_ts) VALUES ($1, $2) ON CONFLICT (sha256_hash) DO UPDATE SET last_access_ts = $2" -const selectMediaLastAccessedBeforeInDatastore = "SELECT m.sha256_hash, m.size_bytes, m.location, m.datastore_id, m.creation_ts, a.last_access_ts FROM media AS m JOIN last_access AS a ON m.sha256_hash = a.sha256_hash WHERE a.last_access_ts < $1 AND m.datastore_id = $2"; - -const selectThumbnailsLastAccessedBeforeInDatastore = "SELECT m.sha256_hash, m.size_bytes, m.location, m.datastore_id, m.creation_ts, a.last_access_ts FROM thumbnails AS m JOIN last_access AS a ON m.sha256_hash = a.sha256_hash WHERE a.last_access_ts < $1 AND m.datastore_id = $2"; +const selectMediaLastAccessedBeforeInDatastore = "SELECT m.sha256_hash, m.size_bytes, m.location, m.datastore_id, m.creation_ts, a.last_access_ts FROM media AS m JOIN last_access AS a ON m.sha256_hash = a.sha256_hash WHERE a.last_access_ts < $1 AND m.datastore_id = $2" +const selectThumbnailsLastAccessedBeforeInDatastore = "SELECT m.sha256_hash, m.size_bytes, m.location, m.datastore_id, m.creation_ts, a.last_access_ts FROM thumbnails AS m JOIN last_access AS a ON m.sha256_hash = a.sha256_hash WHERE a.last_access_ts < $1 AND m.datastore_id = $2" type metadataStoreStatements struct { upsertLastAccessed *sql.Stmt -- GitLab