diff db/sat_pubsub_update_4_5.sql @ 403:1dc606612405

implemented experimental "consistent_publisher" option: /!\ pgsql schema needs to be updated /!\ New "consistent_publisher" option has been implemented to allow node owners + admins to modify an item while preserving the original publisher. This way, original publisher can still edit the item. In addition to `consistent_publisher`, `max_items` has been added to PGQSL schema to prepare for future implementation.
author Goffi <goffi@goffi.org>
date Wed, 12 Jun 2019 21:51:50 +0200
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/db/sat_pubsub_update_4_5.sql	Wed Jun 12 21:51:50 2019 +0200
@@ -0,0 +1,20 @@
+-- we check version of the database before doing anything
+-- and stop execution if not good
+\set ON_ERROR_STOP
+DO $$
+DECLARE ver text;
+BEGIN
+    SELECT value INTO ver FROM metadata WHERE key='version';
+    IF NOT FOUND OR ver!='4' THEN
+        RAISE EXCEPTION 'This update file needs to be applied on database schema version 4, you use version %',ver;
+    END IF;
+END$$;
+\unset ON_ERROR_STOP
+-- end of version check
+
+/* new "max_items" and "consistent publisher" options */
+ALTER TABLE nodes ADD COLUMN max_items integer NOT NULL DEFAULT 0
+		CHECK (max_items >= 0);
+ALTER TABLE nodes ADD COLUMN consistent_publisher boolean NOT NULL DEFAULT FALSE;
+
+UPDATE metadata SET value='5' WHERE key='version';