Disable concurrent refresh as its problematic.

This commit is contained in:
stirringhalo
2017-01-11 16:31:47 -05:00
parent beda951863
commit 31e0466b67
4 changed files with 19 additions and 19 deletions

View File

@@ -1,5 +1,5 @@
DROP TRIGGER IF EXISTS trigger_flag ON osm_water_polygon;
DROP TRIGGER IF EXISTS trigger_refresh ON water_name.updates;
DROP TRIGGER IF EXISTS trigger_refresh ON water_point.updates;
-- etldoc: osm_water_polygon -> osm_water_point
-- etldoc: lake_centerline -> osm_water_point
@@ -17,22 +17,22 @@ CREATE INDEX IF NOT EXISTS osm_water_point_geometry_idx ON osm_water_point USING
-- Handle updates
CREATE SCHEMA IF NOT EXISTS water_name;
CREATE SCHEMA IF NOT EXISTS water_point;
CREATE TABLE IF NOT EXISTS water_name.updates(id serial primary key, t text, unique (t));
CREATE OR REPLACE FUNCTION water_name.flag() RETURNS trigger AS $$
CREATE TABLE IF NOT EXISTS water_point.updates(id serial primary key, t text, unique (t));
CREATE OR REPLACE FUNCTION water_point.flag() RETURNS trigger AS $$
BEGIN
INSERT INTO water_name.updates(t) VALUES ('y') ON CONFLICT(t) DO NOTHING;
INSERT INTO water_point.updates(t) VALUES ('y') ON CONFLICT(t) DO NOTHING;
RETURN null;
END;
$$ language plpgsql;
CREATE OR REPLACE FUNCTION water_name.refresh() RETURNS trigger AS
CREATE OR REPLACE FUNCTION water_point.refresh() RETURNS trigger AS
$BODY$
BEGIN
RAISE LOG 'Refresh water_point';
REFRESH MATERIALIZED VIEW osm_water_point;
DELETE FROM water_name.updates;
DELETE FROM water_point.updates;
RETURN null;
END;
$BODY$
@@ -41,10 +41,10 @@ language plpgsql;
CREATE TRIGGER trigger_flag
AFTER INSERT OR UPDATE OR DELETE ON osm_water_polygon
FOR EACH STATEMENT
EXECUTE PROCEDURE water_name.flag();
EXECUTE PROCEDURE water_point.flag();
CREATE CONSTRAINT TRIGGER trigger_refresh
AFTER INSERT ON water_name.updates
AFTER INSERT ON water_point.updates
INITIALLY DEFERRED
FOR EACH ROW
EXECUTE PROCEDURE water_name.refresh();
EXECUTE PROCEDURE water_point.refresh();