liquid_feedback_core

changeset 570:4c40333dac66

Fill new columns "issue_quorum" and "initiative_quorum" of "issue" table in update script to version 4.0.0
author jbe
date Fri Sep 29 20:09:26 2017 +0200 (2017-09-29)
parents 622c71ca6428
children ed3c3d8bd16b
files update/core-update.v3.2.2-v4.0.0.sql
line diff
     1.1 --- a/update/core-update.v3.2.2-v4.0.0.sql	Fri Sep 29 19:37:49 2017 +0200
     1.2 +++ b/update/core-update.v3.2.2-v4.0.0.sql	Fri Sep 29 20:09:26 2017 +0200
     1.3 @@ -579,6 +579,29 @@
     1.4  COMMENT ON COLUMN "issue"."population"              IS 'Count of members in "snapshot_population" table with "snapshot_id" equal to "issue"."latest_snapshot_id"';
     1.5  
     1.6  
     1.7 +ALTER TABLE "issue" DISABLE TRIGGER USER;  -- NOTE: required to modify table later
     1.8 +
     1.9 +UPDATE "issue" SET
    1.10 +  "issue_quorum" = ceil(
    1.11 +    ("subquery"."population"::INT8 * "policy"."issue_quorum_num"::INT8) /
    1.12 +    "policy"."issue_quorum_den"::FLOAT8
    1.13 +  ),
    1.14 +  "initiative_quorum" = ceil(
    1.15 +    ("issue"."population"::INT8 * "policy"."initiative_quorum_num"::INT8) /
    1.16 +    "policy"."initiative_quorum_den"::FLOAT8
    1.17 +  )
    1.18 +  FROM (
    1.19 +    SELECT "issue_id", sum("weight") AS "population"
    1.20 +    FROM "direct_population_snapshot"
    1.21 +    WHERE "event" = 'end_of_admission'
    1.22 +    GROUP BY "issue_id"
    1.23 +  ) AS "subquery", "policy"
    1.24 +  WHERE "issue"."id" = "subquery"."issue_id"
    1.25 +  AND "issue"."policy_id" = "policy"."id";
    1.26 +
    1.27 +ALTER TABLE "issue" ENABLE TRIGGER USER;
    1.28 +
    1.29 +
    1.30  ALTER TABLE "snapshot" ADD FOREIGN KEY ("issue_id") REFERENCES "issue" ("id") ON DELETE CASCADE ON UPDATE CASCADE;
    1.31  
    1.32  

Impressum / About Us