# HG changeset patch # User jbe # Date 1299503425 -3600 # Node ID d6a145a5c9d3c9661d562d766aa94f997338bb37 # Parent 7d6c5032262f8ea471aa7a85d7ca2d0726e5ad1c Removed update scripts to old beta versions diff -r 7d6c5032262f -r d6a145a5c9d3 update/core-update.beta16-beta17.sql --- a/update/core-update.beta16-beta17.sql Mon Mar 07 13:54:43 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,165 +0,0 @@ -BEGIN; - -CREATE OR REPLACE VIEW "liquid_feedback_version" AS - SELECT * FROM (VALUES ('beta17', NULL, NULL, NULL)) - AS "subquery"("string", "major", "minor", "revision"); - -COMMENT ON TABLE "setting" IS 'Place to store a frontend specific member setting as a string'; - -CREATE TABLE "setting_map" ( - PRIMARY KEY ("member_id", "key", "subkey"), - "member_id" INT4 REFERENCES "member" ("id") ON DELETE CASCADE ON UPDATE CASCADE, - "key" TEXT NOT NULL, - "subkey" TEXT NOT NULL, - "value" TEXT NOT NULL ); -CREATE INDEX "setting_map_key_idx" ON "setting_map" ("key"); - -COMMENT ON TABLE "setting_map" IS 'Place to store a frontend specific member setting as a map of key value pairs'; - -COMMENT ON COLUMN "setting_map"."key" IS 'Name of the setting, preceded by a frontend specific prefix'; -COMMENT ON COLUMN "setting_map"."subkey" IS 'Key of a map entry'; -COMMENT ON COLUMN "setting_map"."value" IS 'Value of a map entry'; - -CREATE INDEX "issue_created_idx" ON "issue" ("created"); -CREATE INDEX "issue_accepted_idx" ON "issue" ("accepted"); -CREATE INDEX "issue_half_frozen_idx" ON "issue" ("half_frozen"); -CREATE INDEX "issue_fully_frozen_idx" ON "issue" ("fully_frozen"); -CREATE INDEX "issue_closed_idx" ON "issue" ("closed"); -CREATE INDEX "issue_closed_idx_canceled" ON "issue" ("closed") WHERE "fully_frozen" ISNULL; -CREATE INDEX "initiative_created_idx" ON "initiative" ("created"); -CREATE INDEX "initiative_revoked_idx" ON "initiative" ("revoked"); -CREATE INDEX "draft_created_idx" ON "draft" ("created"); -CREATE INDEX "suggestion_created_idx" ON "suggestion" ("created"); - -CREATE TYPE "timeline_event" AS ENUM ( - 'issue_created', - 'issue_canceled', - 'issue_accepted', - 'issue_half_frozen', - 'issue_finished_without_voting', - 'issue_voting_started', - 'issue_finished_after_voting', - 'initiative_created', - 'initiative_revoked', - 'draft_created', - 'suggestion_created'); - -COMMENT ON TYPE "timeline_event" IS 'Types of event in timeline tables'; - -CREATE VIEW "timeline_issue" AS - SELECT - "created" AS "occurrence", - 'issue_created'::"timeline_event" AS "event", - "id" AS "issue_id" - FROM "issue" - UNION ALL - SELECT - "closed" AS "occurrence", - 'issue_canceled'::"timeline_event" AS "event", - "id" AS "issue_id" - FROM "issue" WHERE "closed" NOTNULL AND "fully_frozen" ISNULL - UNION ALL - SELECT - "accepted" AS "occurrence", - 'issue_accepted'::"timeline_event" AS "event", - "id" AS "issue_id" - FROM "issue" WHERE "accepted" NOTNULL - UNION ALL - SELECT - "half_frozen" AS "occurrence", - 'issue_half_frozen'::"timeline_event" AS "event", - "id" AS "issue_id" - FROM "issue" WHERE "half_frozen" NOTNULL - UNION ALL - SELECT - "fully_frozen" AS "occurrence", - 'issue_voting_started'::"timeline_event" AS "event", - "id" AS "issue_id" - FROM "issue" - WHERE "fully_frozen" NOTNULL AND "closed" != "fully_frozen" - UNION ALL - SELECT - "closed" AS "occurrence", - CASE WHEN "fully_frozen" = "closed" THEN - 'issue_finished_without_voting'::"timeline_event" - ELSE - 'issue_finished_after_voting'::"timeline_event" - END AS "event", - "id" AS "issue_id" - FROM "issue" WHERE "closed" NOTNULL AND "fully_frozen" NOTNULL; - -COMMENT ON VIEW "timeline_issue" IS 'Helper view for "timeline" view'; - -CREATE VIEW "timeline_initiative" AS - SELECT - "created" AS "occurrence", - 'initiative_created'::"timeline_event" AS "event", - "id" AS "initiative_id" - FROM "initiative" - UNION ALL - SELECT - "revoked" AS "occurrence", - 'initiative_revoked'::"timeline_event" AS "event", - "id" AS "initiative_id" - FROM "initiative" WHERE "revoked" NOTNULL; - -COMMENT ON VIEW "timeline_initiative" IS 'Helper view for "timeline" view'; - -CREATE VIEW "timeline_draft" AS - SELECT - "created" AS "occurrence", - 'draft_created'::"timeline_event" AS "event", - "id" AS "draft_id" - FROM "draft"; - -COMMENT ON VIEW "timeline_draft" IS 'Helper view for "timeline" view'; - -CREATE VIEW "timeline_suggestion" AS - SELECT - "created" AS "occurrence", - 'suggestion_created'::"timeline_event" AS "event", - "id" AS "suggestion_id" - FROM "suggestion"; - -COMMENT ON VIEW "timeline_suggestion" IS 'Helper view for "timeline" view'; - -CREATE VIEW "timeline" AS - SELECT - "occurrence", - "event", - "issue_id", - NULL AS "initiative_id", - NULL::INT8 AS "draft_id", -- TODO: Why do we need a type-cast here? Is this due to 32 bit architecture? - NULL::INT8 AS "suggestion_id" - FROM "timeline_issue" - UNION ALL - SELECT - "occurrence", - "event", - NULL AS "issue_id", - "initiative_id", - NULL AS "draft_id", - NULL AS "suggestion_id" - FROM "timeline_initiative" - UNION ALL - SELECT - "occurrence", - "event", - NULL AS "issue_id", - NULL AS "initiative_id", - "draft_id", - NULL AS "suggestion_id" - FROM "timeline_draft" - UNION ALL - SELECT - "occurrence", - "event", - NULL AS "issue_id", - NULL AS "initiative_id", - NULL AS "draft_id", - "suggestion_id" - FROM "timeline_suggestion"; - -COMMENT ON VIEW "timeline" IS 'Aggregation of different events in the system'; - -COMMIT; diff -r 7d6c5032262f -r d6a145a5c9d3 update/core-update.beta17-beta18.sql --- a/update/core-update.beta17-beta18.sql Mon Mar 07 13:54:43 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,50 +0,0 @@ -BEGIN; - -CREATE OR REPLACE VIEW "liquid_feedback_version" AS - SELECT * FROM (VALUES ('beta18', NULL, NULL, NULL)) - AS "subquery"("string", "major", "minor", "revision"); - -CREATE OR REPLACE VIEW "timeline_issue" AS - SELECT - "created" AS "occurrence", - 'issue_created'::"timeline_event" AS "event", - "id" AS "issue_id" - FROM "issue" - UNION ALL - SELECT - "closed" AS "occurrence", - 'issue_canceled'::"timeline_event" AS "event", - "id" AS "issue_id" - FROM "issue" WHERE "closed" NOTNULL AND "fully_frozen" ISNULL - UNION ALL - SELECT - "accepted" AS "occurrence", - 'issue_accepted'::"timeline_event" AS "event", - "id" AS "issue_id" - FROM "issue" WHERE "accepted" NOTNULL - UNION ALL - SELECT - "half_frozen" AS "occurrence", - 'issue_half_frozen'::"timeline_event" AS "event", - "id" AS "issue_id" - FROM "issue" WHERE "half_frozen" NOTNULL - UNION ALL - SELECT - "fully_frozen" AS "occurrence", - 'issue_voting_started'::"timeline_event" AS "event", - "id" AS "issue_id" - FROM "issue" - WHERE "fully_frozen" NOTNULL - AND ("closed" ISNULL OR "closed" != "fully_frozen") - UNION ALL - SELECT - "closed" AS "occurrence", - CASE WHEN "fully_frozen" = "closed" THEN - 'issue_finished_without_voting'::"timeline_event" - ELSE - 'issue_finished_after_voting'::"timeline_event" - END AS "event", - "id" AS "issue_id" - FROM "issue" WHERE "closed" NOTNULL AND "fully_frozen" NOTNULL; - -COMMIT; diff -r 7d6c5032262f -r d6a145a5c9d3 update/core-update.beta21-beta22.sql --- a/update/core-update.beta21-beta22.sql Mon Mar 07 13:54:43 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,16 +0,0 @@ -BEGIN; -CREATE OR REPLACE VIEW "liquid_feedback_version" AS - SELECT * FROM (VALUES ('beta22', NULL, NULL, NULL)) - AS "subquery"("string", "major", "minor", "revision"); -ALTER TABLE "issue" DROP CONSTRAINT "valid_state"; -ALTER TABLE "issue" ADD CONSTRAINT "valid_state" CHECK ( - ("accepted" ISNULL AND "half_frozen" ISNULL AND "fully_frozen" ISNULL AND "closed" ISNULL AND "ranks_available" = FALSE) OR - ("accepted" ISNULL AND "half_frozen" ISNULL AND "fully_frozen" ISNULL AND "closed" NOTNULL AND "ranks_available" = FALSE) OR - ("accepted" NOTNULL AND "half_frozen" ISNULL AND "fully_frozen" ISNULL AND "closed" ISNULL AND "ranks_available" = FALSE) OR - ("accepted" NOTNULL AND "half_frozen" ISNULL AND "fully_frozen" ISNULL AND "closed" NOTNULL AND "ranks_available" = FALSE) OR - ("accepted" NOTNULL AND "half_frozen" NOTNULL AND "fully_frozen" ISNULL AND "closed" ISNULL AND "ranks_available" = FALSE) OR - ("accepted" NOTNULL AND "half_frozen" NOTNULL AND "fully_frozen" ISNULL AND "closed" NOTNULL AND "ranks_available" = FALSE) OR - ("accepted" NOTNULL AND "half_frozen" NOTNULL AND "fully_frozen" NOTNULL AND "closed" ISNULL AND "ranks_available" = FALSE) OR - ("accepted" NOTNULL AND "half_frozen" NOTNULL AND "fully_frozen" NOTNULL AND "closed" NOTNULL AND "ranks_available" = FALSE) OR - ("accepted" NOTNULL AND "half_frozen" NOTNULL AND "fully_frozen" NOTNULL AND "closed" NOTNULL AND "ranks_available" = TRUE) ); -COMMIT; diff -r 7d6c5032262f -r d6a145a5c9d3 update/core-update.beta22-beta23.sql --- a/update/core-update.beta22-beta23.sql Mon Mar 07 13:54:43 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,199 +0,0 @@ -BEGIN; - -CREATE OR REPLACE VIEW "liquid_feedback_version" AS - SELECT * FROM (VALUES ('beta23', NULL, NULL, NULL)) - AS "subquery"("string", "major", "minor", "revision"); - -CREATE OR REPLACE FUNCTION "create_snapshot" - ( "issue_id_p" "issue"."id"%TYPE ) - RETURNS VOID - LANGUAGE 'plpgsql' VOLATILE AS $$ - DECLARE - "initiative_id_v" "initiative"."id"%TYPE; - "suggestion_id_v" "suggestion"."id"%TYPE; - BEGIN - PERFORM "global_lock"(); - PERFORM "create_population_snapshot"("issue_id_p"); - PERFORM "create_interest_snapshot"("issue_id_p"); - UPDATE "issue" SET - "snapshot" = now(), - "latest_snapshot_event" = 'periodic', - "population" = ( - SELECT coalesce(sum("weight"), 0) - FROM "direct_population_snapshot" - WHERE "issue_id" = "issue_id_p" - AND "event" = 'periodic' - ), - "vote_now" = ( - SELECT coalesce(sum("weight"), 0) - FROM "direct_interest_snapshot" - WHERE "issue_id" = "issue_id_p" - AND "event" = 'periodic' - AND "voting_requested" = TRUE - ), - "vote_later" = ( - SELECT coalesce(sum("weight"), 0) - FROM "direct_interest_snapshot" - WHERE "issue_id" = "issue_id_p" - AND "event" = 'periodic' - AND "voting_requested" = FALSE - ) - WHERE "id" = "issue_id_p"; - FOR "initiative_id_v" IN - SELECT "id" FROM "initiative" WHERE "issue_id" = "issue_id_p" - LOOP - UPDATE "initiative" SET - "supporter_count" = ( - SELECT coalesce(sum("di"."weight"), 0) - FROM "direct_interest_snapshot" AS "di" - JOIN "direct_supporter_snapshot" AS "ds" - ON "di"."member_id" = "ds"."member_id" - WHERE "di"."issue_id" = "issue_id_p" - AND "di"."event" = 'periodic' - AND "ds"."initiative_id" = "initiative_id_v" - AND "ds"."event" = 'periodic' - ), - "informed_supporter_count" = ( - SELECT coalesce(sum("di"."weight"), 0) - FROM "direct_interest_snapshot" AS "di" - JOIN "direct_supporter_snapshot" AS "ds" - ON "di"."member_id" = "ds"."member_id" - WHERE "di"."issue_id" = "issue_id_p" - AND "di"."event" = 'periodic' - AND "ds"."initiative_id" = "initiative_id_v" - AND "ds"."event" = 'periodic' - AND "ds"."informed" - ), - "satisfied_supporter_count" = ( - SELECT coalesce(sum("di"."weight"), 0) - FROM "direct_interest_snapshot" AS "di" - JOIN "direct_supporter_snapshot" AS "ds" - ON "di"."member_id" = "ds"."member_id" - WHERE "di"."issue_id" = "issue_id_p" - AND "di"."event" = 'periodic' - AND "ds"."initiative_id" = "initiative_id_v" - AND "ds"."event" = 'periodic' - AND "ds"."satisfied" - ), - "satisfied_informed_supporter_count" = ( - SELECT coalesce(sum("di"."weight"), 0) - FROM "direct_interest_snapshot" AS "di" - JOIN "direct_supporter_snapshot" AS "ds" - ON "di"."member_id" = "ds"."member_id" - WHERE "di"."issue_id" = "issue_id_p" - AND "di"."event" = 'periodic' - AND "ds"."initiative_id" = "initiative_id_v" - AND "ds"."event" = 'periodic' - AND "ds"."informed" - AND "ds"."satisfied" - ) - WHERE "id" = "initiative_id_v"; - FOR "suggestion_id_v" IN - SELECT "id" FROM "suggestion" - WHERE "initiative_id" = "initiative_id_v" - LOOP - UPDATE "suggestion" SET - "minus2_unfulfilled_count" = ( - SELECT coalesce(sum("snapshot"."weight"), 0) - FROM "issue" CROSS JOIN "opinion" - JOIN "direct_interest_snapshot" AS "snapshot" - ON "snapshot"."issue_id" = "issue"."id" - AND "snapshot"."event" = "issue"."latest_snapshot_event" - AND "snapshot"."member_id" = "opinion"."member_id" - WHERE "issue"."id" = "issue_id_p" - AND "opinion"."suggestion_id" = "suggestion_id_v" - AND "opinion"."degree" = -2 - AND "opinion"."fulfilled" = FALSE - ), - "minus2_fulfilled_count" = ( - SELECT coalesce(sum("snapshot"."weight"), 0) - FROM "issue" CROSS JOIN "opinion" - JOIN "direct_interest_snapshot" AS "snapshot" - ON "snapshot"."issue_id" = "issue"."id" - AND "snapshot"."event" = "issue"."latest_snapshot_event" - AND "snapshot"."member_id" = "opinion"."member_id" - WHERE "issue"."id" = "issue_id_p" - AND "opinion"."suggestion_id" = "suggestion_id_v" - AND "opinion"."degree" = -2 - AND "opinion"."fulfilled" = TRUE - ), - "minus1_unfulfilled_count" = ( - SELECT coalesce(sum("snapshot"."weight"), 0) - FROM "issue" CROSS JOIN "opinion" - JOIN "direct_interest_snapshot" AS "snapshot" - ON "snapshot"."issue_id" = "issue"."id" - AND "snapshot"."event" = "issue"."latest_snapshot_event" - AND "snapshot"."member_id" = "opinion"."member_id" - WHERE "issue"."id" = "issue_id_p" - AND "opinion"."suggestion_id" = "suggestion_id_v" - AND "opinion"."degree" = -1 - AND "opinion"."fulfilled" = FALSE - ), - "minus1_fulfilled_count" = ( - SELECT coalesce(sum("snapshot"."weight"), 0) - FROM "issue" CROSS JOIN "opinion" - JOIN "direct_interest_snapshot" AS "snapshot" - ON "snapshot"."issue_id" = "issue"."id" - AND "snapshot"."event" = "issue"."latest_snapshot_event" - AND "snapshot"."member_id" = "opinion"."member_id" - WHERE "issue"."id" = "issue_id_p" - AND "opinion"."suggestion_id" = "suggestion_id_v" - AND "opinion"."degree" = -1 - AND "opinion"."fulfilled" = TRUE - ), - "plus1_unfulfilled_count" = ( - SELECT coalesce(sum("snapshot"."weight"), 0) - FROM "issue" CROSS JOIN "opinion" - JOIN "direct_interest_snapshot" AS "snapshot" - ON "snapshot"."issue_id" = "issue"."id" - AND "snapshot"."event" = "issue"."latest_snapshot_event" - AND "snapshot"."member_id" = "opinion"."member_id" - WHERE "issue"."id" = "issue_id_p" - AND "opinion"."suggestion_id" = "suggestion_id_v" - AND "opinion"."degree" = 1 - AND "opinion"."fulfilled" = FALSE - ), - "plus1_fulfilled_count" = ( - SELECT coalesce(sum("snapshot"."weight"), 0) - FROM "issue" CROSS JOIN "opinion" - JOIN "direct_interest_snapshot" AS "snapshot" - ON "snapshot"."issue_id" = "issue"."id" - AND "snapshot"."event" = "issue"."latest_snapshot_event" - AND "snapshot"."member_id" = "opinion"."member_id" - WHERE "issue"."id" = "issue_id_p" - AND "opinion"."suggestion_id" = "suggestion_id_v" - AND "opinion"."degree" = 1 - AND "opinion"."fulfilled" = TRUE - ), - "plus2_unfulfilled_count" = ( - SELECT coalesce(sum("snapshot"."weight"), 0) - FROM "issue" CROSS JOIN "opinion" - JOIN "direct_interest_snapshot" AS "snapshot" - ON "snapshot"."issue_id" = "issue"."id" - AND "snapshot"."event" = "issue"."latest_snapshot_event" - AND "snapshot"."member_id" = "opinion"."member_id" - WHERE "issue"."id" = "issue_id_p" - AND "opinion"."suggestion_id" = "suggestion_id_v" - AND "opinion"."degree" = 2 - AND "opinion"."fulfilled" = FALSE - ), - "plus2_fulfilled_count" = ( - SELECT coalesce(sum("snapshot"."weight"), 0) - FROM "issue" CROSS JOIN "opinion" - JOIN "direct_interest_snapshot" AS "snapshot" - ON "snapshot"."issue_id" = "issue"."id" - AND "snapshot"."event" = "issue"."latest_snapshot_event" - AND "snapshot"."member_id" = "opinion"."member_id" - WHERE "issue"."id" = "issue_id_p" - AND "opinion"."suggestion_id" = "suggestion_id_v" - AND "opinion"."degree" = 2 - AND "opinion"."fulfilled" = TRUE - ) - WHERE "suggestion"."id" = "suggestion_id_v"; - END LOOP; - END LOOP; - RETURN; - END; - $$; - -COMMIT; diff -r 7d6c5032262f -r d6a145a5c9d3 update/core-update.beta23-beta24.sql --- a/update/core-update.beta23-beta24.sql Mon Mar 07 13:54:43 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,60 +0,0 @@ -BEGIN; - -CREATE OR REPLACE VIEW "liquid_feedback_version" AS - SELECT * FROM (VALUES ('beta24', NULL, NULL, NULL)) - AS "subquery"("string", "major", "minor", "revision"); - -COMMENT ON TABLE "setting" IS 'Place to store a frontend specific setting for members as a string'; - -COMMENT ON TABLE "member_relation_setting" IS 'Place to store a frontend specific setting related to relations between members as a string'; - -CREATE OR REPLACE FUNCTION "delete_private_data"() - RETURNS VOID - LANGUAGE 'plpgsql' VOLATILE AS $$ - DECLARE - "issue_id_v" "issue"."id"%TYPE; - BEGIN - UPDATE "member" SET - "login" = 'login' || "id"::text, - "password" = NULL, - "notify_email" = NULL, - "notify_email_unconfirmed" = NULL, - "notify_email_secret" = NULL, - "notify_email_secret_expiry" = NULL, - "password_reset_secret" = NULL, - "password_reset_secret_expiry" = NULL, - "organizational_unit" = NULL, - "internal_posts" = NULL, - "realname" = NULL, - "birthday" = NULL, - "address" = NULL, - "email" = NULL, - "xmpp_address" = NULL, - "website" = NULL, - "phone" = NULL, - "mobile_phone" = NULL, - "profession" = NULL, - "external_memberships" = NULL, - "external_posts" = NULL, - "statement" = NULL; - -- "text_search_data" is updated by triggers - UPDATE "member_history" SET "login" = 'login' || "member_id"::text; - DELETE FROM "invite_code"; - DELETE FROM "setting"; - DELETE FROM "setting_map"; - DELETE FROM "member_relation_setting"; - DELETE FROM "member_image"; - DELETE FROM "contact"; - DELETE FROM "session"; - DELETE FROM "area_setting"; - DELETE FROM "issue_setting"; - DELETE FROM "initiative_setting"; - DELETE FROM "suggestion_setting"; - DELETE FROM "direct_voter" USING "issue" - WHERE "direct_voter"."issue_id" = "issue"."id" - AND "issue"."closed" ISNULL; - RETURN; - END; - $$; - -COMMIT; diff -r 7d6c5032262f -r d6a145a5c9d3 update/core-update.beta24-beta25.sql --- a/update/core-update.beta24-beta25.sql Mon Mar 07 13:54:43 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,5 +0,0 @@ -BEGIN; - --- no changes in database between beta24 to beta25 - -COMMIT; diff -r 7d6c5032262f -r d6a145a5c9d3 update/prepare-beta18-beta19.sql --- a/update/prepare-beta18-beta19.sql Mon Mar 07 13:54:43 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,60 +0,0 @@ -BEGIN; - -CREATE OR REPLACE VIEW "liquid_feedback_version" AS - SELECT * FROM (VALUES ('incomplete_update_from_beta18_to_beta19', NULL, NULL, NULL)) - AS "subquery"("string", "major", "minor", "revision"); - -ALTER TABLE "issue" RENAME COLUMN "latest_snapshot_event" TO "tmp"; -ALTER TABLE "direct_population_snapshot" RENAME COLUMN "event" TO "tmp"; -ALTER TABLE "delegating_population_snapshot" RENAME COLUMN "event" TO "tmp"; -ALTER TABLE "direct_interest_snapshot" RENAME COLUMN "event" TO "tmp"; -ALTER TABLE "delegating_interest_snapshot" RENAME COLUMN "event" TO "tmp"; -ALTER TABLE "direct_supporter_snapshot" RENAME COLUMN "event" TO "tmp"; - -ALTER TABLE "issue" ADD COLUMN "latest_snapshot_event" TEXT; -ALTER TABLE "direct_population_snapshot" ADD COLUMN "event" TEXT; -ALTER TABLE "delegating_population_snapshot" ADD COLUMN "event" TEXT; -ALTER TABLE "direct_interest_snapshot" ADD COLUMN "event" TEXT; -ALTER TABLE "delegating_interest_snapshot" ADD COLUMN "event" TEXT; -ALTER TABLE "direct_supporter_snapshot" ADD COLUMN "event" TEXT; - -ALTER TABLE "issue" ADD COLUMN "admission_time" INTERVAL; -ALTER TABLE "issue" ADD COLUMN "discussion_time" INTERVAL; -ALTER TABLE "issue" ADD COLUMN "verification_time" INTERVAL; -ALTER TABLE "issue" ADD COLUMN "voting_time" INTERVAL; - -UPDATE "issue" SET "latest_snapshot_event" = "tmp"; -UPDATE "direct_population_snapshot" SET "event" = "tmp"; -UPDATE "delegating_population_snapshot" SET "event" = "tmp"; -UPDATE "direct_interest_snapshot" SET "event" = "tmp"; -UPDATE "delegating_interest_snapshot" SET "event" = "tmp"; -UPDATE "direct_supporter_snapshot" SET "event" = "tmp"; - -UPDATE "issue" SET "latest_snapshot_event" = 'full_freeze' WHERE "latest_snapshot_event" = 'start_of_voting'; -UPDATE "direct_population_snapshot" SET "event" = 'full_freeze' WHERE "event" = 'start_of_voting'; -UPDATE "delegating_population_snapshot" SET "event" = 'full_freeze' WHERE "event" = 'start_of_voting'; -UPDATE "direct_interest_snapshot" SET "event" = 'full_freeze' WHERE "event" = 'start_of_voting'; -UPDATE "delegating_interest_snapshot" SET "event" = 'full_freeze' WHERE "event" = 'start_of_voting'; -UPDATE "direct_supporter_snapshot" SET "event" = 'full_freeze' WHERE "event" = 'start_of_voting'; - -UPDATE "issue" SET - "admission_time" = "policy"."admission_time", - "discussion_time" = "policy"."discussion_time", - "verification_time" = "policy"."verification_time", - "voting_time" = "policy"."voting_time" - FROM "policy" WHERE "issue"."policy_id" = "policy"."id"; - --- remove "tmp" columns indirectly -DROP TYPE "snapshot_event" CASCADE; - -COMMIT; - --- Complete the update as follows: --- ========================================= --- pg_dump --disable-triggers --data-only DATABASE_NAME > tmp.sql --- dropdb DATABASE_NAME --- createdb DATABASE_NAME --- psql -v ON_ERROR_STOP=1 -f core.sql DATABASE_NAME --- psql -v ON_ERROR_STOP=1 -f tmp.sql DATABASE_NAME --- rm tmp.sql - diff -r 7d6c5032262f -r d6a145a5c9d3 update/prepare-beta25-beta26.sql --- a/update/prepare-beta25-beta26.sql Mon Mar 07 13:54:43 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,25 +0,0 @@ -BEGIN; - -CREATE OR REPLACE VIEW "liquid_feedback_version" AS - SELECT * FROM (VALUES ('incomplete_update_from_beta25_to_beta26', NULL, NULL, NULL)) - AS "subquery"("string", "major", "minor", "revision"); - -ALTER TABLE "member" ADD COLUMN "last_login" TIMESTAMPTZ; -ALTER TABLE "member_history" ADD COLUMN "active" BOOLEAN; - -UPDATE "member_history" SET "active" = TRUE; -INSERT INTO "member_history" ("member_id", "login", "active", "name") - SELECT "id", "login", TRUE AS "active", "name" - FROM "member" WHERE "active" = FALSE; - -COMMIT; - --- Complete the update as follows: --- ========================================= --- pg_dump --disable-triggers --data-only DATABASE_NAME > tmp.sql --- dropdb DATABASE_NAME --- createdb DATABASE_NAME --- psql -v ON_ERROR_STOP=1 -f core.sql DATABASE_NAME --- psql -v ON_ERROR_STOP=1 -f tmp.sql DATABASE_NAME --- rm tmp.sql -