# HG changeset patch # User jbe # Date 1360518541 -3600 # Node ID d59d0c3e4a182818ac00dcf12c2a4a404556b973 # Parent a0dd8c78bd1005425daae55db83fc77fb0640652# Parent 6529e423f8eb62ab94a8bf7fdd55ecef238a457e merge diff -r a0dd8c78bd10 -r d59d0c3e4a18 core.sql --- a/core.sql Sun Feb 10 18:41:56 2013 +0100 +++ b/core.sql Sun Feb 10 18:49:01 2013 +0100 @@ -3410,8 +3410,10 @@ WHERE "issue_id" = "issue_id_p" AND "event" = 'periodic'; DELETE FROM "direct_supporter_snapshot" - WHERE "issue_id" = "issue_id_p" - AND "event" = 'periodic'; + USING "initiative" -- NOTE: due to missing index on issue_id + WHERE "initiative"."issue_id" = "issue_id_p" + AND "direct_supporter_snapshot"."initiative_id" = "initiative"."id" + AND "direct_supporter_snapshot"."event" = 'periodic'; INSERT INTO "direct_interest_snapshot" ("issue_id", "event", "member_id") SELECT @@ -3681,7 +3683,10 @@ UPDATE "delegating_interest_snapshot" SET "event" = "event_p" WHERE "issue_id" = "issue_id_p" AND "event" = "event_v"; UPDATE "direct_supporter_snapshot" SET "event" = "event_p" - WHERE "issue_id" = "issue_id_p" AND "event" = "event_v"; + FROM "initiative" -- NOTE: due to missing index on issue_id + WHERE "initiative"."issue_id" = "issue_id_p" + AND "direct_supporter_snapshot"."initiative_id" = "initiative"."id" + AND "direct_supporter_snapshot"."event" = "event_v"; RETURN; END; $$; @@ -4494,7 +4499,9 @@ DELETE FROM "delegation" WHERE "issue_id" = "issue_id_p"; DELETE FROM "supporter" - WHERE "issue_id" = "issue_id_p"; + USING "initiative" + WHERE "initiative"."issue_id" = "issue_id_p" + AND "supporter"."initiative_id" = "initiative_id"; UPDATE "issue" SET "state" = "issue_row"."state", "closed" = "issue_row"."closed",