aboutsummaryrefslogtreecommitdiff
path: root/sqitch/deploy
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2020-08-23 14:40:17 +0100
committerChristopher Baines <mail@cbaines.net>2020-08-23 14:42:32 +0100
commitc7048abe31dc4903343eb3d598363dc23c2a1e46 (patch)
tree1a888696c3bc220b1f813a227ebacaf61b3055f6 /sqitch/deploy
parent599c621b88c39e7d7e68912841fd2209bebf2d12 (diff)
downloaddata-service-c7048abe31dc4903343eb3d598363dc23c2a1e46.tar
data-service-c7048abe31dc4903343eb3d598363dc23c2a1e46.tar.gz
Change a package_descriptions index to use MD5 of the description
To avoid the index data being too large. This was first seen in guix commit 1bb4fd64b7bbe5a17eda6f0ca8105283c038f7c8: psql-query-error (fatal-error PGRES_FATAL_ERROR ERROR: index row size 2808 exceeds maximum 2712 for index "package_descriptions_locale_description_key" HINT: Values larger than 1/3 of a buffer page cannot be indexed.
Diffstat (limited to 'sqitch/deploy')
-rw-r--r--sqitch/deploy/change_package_descriptions_index.sql11
1 files changed, 11 insertions, 0 deletions
diff --git a/sqitch/deploy/change_package_descriptions_index.sql b/sqitch/deploy/change_package_descriptions_index.sql
new file mode 100644
index 0000000..da6b7f7
--- /dev/null
+++ b/sqitch/deploy/change_package_descriptions_index.sql
@@ -0,0 +1,11 @@
+-- Deploy guix-data-service:change_package_descriptions_index to pg
+
+BEGIN;
+
+ALTER TABLE package_descriptions DROP CONSTRAINT
+ package_descriptions_locale_description_key;
+
+CREATE UNIQUE INDEX package_descriptions_locale_description_key
+ ON package_descriptions USING btree (locale, MD5(description));
+
+COMMIT;