From a3a8a163e201fff07cdb7a3fcb37fef1aa50b2ee Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Thu, 10 Oct 2019 08:58:43 +0100 Subject: [PATCH] wiki: Deduplicate blobs Signed-off-by: Michael Tremer --- src/backend/wiki.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/backend/wiki.py b/src/backend/wiki.py index 6647cc9b..36d19e7c 100644 --- a/src/backend/wiki.py +++ b/src/backend/wiki.py @@ -234,7 +234,9 @@ class Wiki(misc.Object): file.delete(author) # Upload the blob first - blob = self.db.get("INSERT INTO wiki_blobs(data) VALUES(%s) RETURNING id", data) + blob = self.db.get("INSERT INTO wiki_blobs(data) VALUES(%s) \ + ON CONFLICT (digest(data, %s)) DO UPDATE SET data = EXCLUDED.data \ + RETURNING id", data, "MD5") # Create entry for file return self._get_file("INSERT INTO wiki_files(path, filename, author_uid, address, \ -- 2.47.2