From 277da4363194bd652918b100b93fdb0a85f9f689 Mon Sep 17 00:00:00 2001 From: zotlabs Date: Thu, 22 Feb 2018 20:52:39 -0800 Subject: provide DB compatibility for poll and voting implementations across several platforms --- install/schema_mysql.sql | 6 ++++++ install/schema_postgres.sql | 6 ++++++ 2 files changed, 12 insertions(+) (limited to 'install') diff --git a/install/schema_mysql.sql b/install/schema_mysql.sql index 36cd2539b..e1a63c1e3 100644 --- a/install/schema_mysql.sql +++ b/install/schema_mysql.sql @@ -964,11 +964,13 @@ CREATE TABLE IF NOT EXISTS `photo` ( CREATE TABLE IF NOT EXISTS `poll` ( `poll_id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `poll_guid` varchar(191) NOT NULL, `poll_channel` int(10) unsigned NOT NULL DEFAULT 0 , `poll_desc` text NOT NULL, `poll_flags` int(11) NOT NULL DEFAULT 0 , `poll_votes` int(11) NOT NULL DEFAULT 0 , PRIMARY KEY (`poll_id`), + KEY `poll_guid` (`poll_guid`), KEY `poll_channel` (`poll_channel`), KEY `poll_flags` (`poll_flags`), KEY `poll_votes` (`poll_votes`) @@ -976,11 +978,13 @@ CREATE TABLE IF NOT EXISTS `poll` ( CREATE TABLE IF NOT EXISTS `poll_elm` ( `pelm_id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `pelm_guid` varchar(191) NOT NULL, `pelm_poll` int(10) unsigned NOT NULL DEFAULT 0 , `pelm_desc` text NOT NULL, `pelm_flags` int(11) NOT NULL DEFAULT 0 , `pelm_result` float NOT NULL DEFAULT 0 , PRIMARY KEY (`pelm_id`), + KEY `pelm_guid` (`pelm_guid`), KEY `pelm_poll` (`pelm_poll`), KEY `pelm_result` (`pelm_result`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; @@ -1258,12 +1262,14 @@ CREATE TABLE IF NOT EXISTS `verify` ( CREATE TABLE IF NOT EXISTS `vote` ( `vote_id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `vote_guid` varchar(191) NOT NULL, `vote_poll` int(11) NOT NULL DEFAULT 0 , `vote_element` int(11) NOT NULL DEFAULT 0 , `vote_result` text NOT NULL, `vote_xchan` char(191) NOT NULL DEFAULT '', PRIMARY KEY (`vote_id`), UNIQUE KEY `vote_vote` (`vote_poll`,`vote_element`,`vote_xchan`), + KEY `vote_guid` (`vote_guid`), KEY `vote_poll` (`vote_poll`), KEY `vote_element` (`vote_element`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; diff --git a/install/schema_postgres.sql b/install/schema_postgres.sql index 082817a60..84b6a554a 100644 --- a/install/schema_postgres.sql +++ b/install/schema_postgres.sql @@ -942,6 +942,7 @@ create index "photo_os_storage" on photo ("os_storage"); CREATE TABLE "poll" ( "poll_id" serial NOT NULL, + "poll_guid" text NOT NULL, "poll_channel" bigint NOT NULL DEFAULT '0', "poll_desc" text NOT NULL, "poll_flags" bigint NOT NULL DEFAULT '0', @@ -949,17 +950,20 @@ CREATE TABLE "poll" ( PRIMARY KEY ("poll_id") ); +create index "poll_guid" on poll ("poll_guid"); create index "poll_channel" on poll ("poll_channel"); create index "poll_flags" on poll ("poll_flags"); create index "poll_votes" on poll ("poll_votes"); CREATE TABLE "poll_elm" ( "pelm_id" serial NOT NULL, + "pelm_guid" text NOT NULL, "pelm_poll" bigint NOT NULL DEFAULT '0', "pelm_desc" text NOT NULL, "pelm_flags" bigint NOT NULL DEFAULT '0', "pelm_result" float NOT NULL DEFAULT '0', PRIMARY KEY ("pelm_id") ); +create index "pelm_guid" on poll_elm ("pelm_guid"); create index "pelm_poll" on poll_elm ("pelm_poll"); create index "pelm_result" on poll_elm ("pelm_result"); @@ -1227,6 +1231,7 @@ create index "verify_meta" on verify ("meta"); create index "verify_created" on verify ("created"); CREATE TABLE "vote" ( "vote_id" serial NOT NULL, + "vote_guid" text NOT NULL, "vote_poll" bigint NOT NULL DEFAULT '0', "vote_element" bigint NOT NULL DEFAULT '0', "vote_result" text NOT NULL, @@ -1234,6 +1239,7 @@ CREATE TABLE "vote" ( PRIMARY KEY ("vote_id"), UNIQUE ("vote_poll","vote_element","vote_xchan") ); +create index "vote_guid" on vote ("vote_guid"); create index "vote_poll" on vote ("vote_poll"); create index "vote_element" on vote ("vote_element"); CREATE TABLE "xchan" ( -- cgit v1.2.3