Mercurial > libervia-pubsub
view db/sat_pubsub_update_4_5.sql @ 431:5e8b8ef5c862
implentation of XEP-0346 (Form Discovery and Publishing):
The former non standard node schema has been replaced by XEP-0346 which uses 2 nodes (one
from schema/template and one for submitted values).
The implementation is an adapation of the former one, and data validation is still done
even if this is not currently specified in any XEP.
When the template node is modified, the change is reflected in the node schema.
author | Goffi <goffi@goffi.org> |
---|---|
date | Fri, 11 Dec 2020 17:19:00 +0100 |
parents | 1dc606612405 |
children |
line wrap: on
line source
-- 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';