Mercurial > libervia-pubsub
comparison 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 |
comparison
equal
deleted
inserted
replaced
402:724e39d596a9 | 403:1dc606612405 |
---|---|
1 -- we check version of the database before doing anything | |
2 -- and stop execution if not good | |
3 \set ON_ERROR_STOP | |
4 DO $$ | |
5 DECLARE ver text; | |
6 BEGIN | |
7 SELECT value INTO ver FROM metadata WHERE key='version'; | |
8 IF NOT FOUND OR ver!='4' THEN | |
9 RAISE EXCEPTION 'This update file needs to be applied on database schema version 4, you use version %',ver; | |
10 END IF; | |
11 END$$; | |
12 \unset ON_ERROR_STOP | |
13 -- end of version check | |
14 | |
15 /* new "max_items" and "consistent publisher" options */ | |
16 ALTER TABLE nodes ADD COLUMN max_items integer NOT NULL DEFAULT 0 | |
17 CHECK (max_items >= 0); | |
18 ALTER TABLE nodes ADD COLUMN consistent_publisher boolean NOT NULL DEFAULT FALSE; | |
19 | |
20 UPDATE metadata SET value='5' WHERE key='version'; |