Test calls to CDB_Invalidate_Varnish

Also drops the DELETE trigger on CDB_TableMetadata as the call to
CDB_Invalidate_Varnish would then get an OID, which is pretty useless.
Closes #8
This commit is contained in:
Sandro Santilli 2014-05-09 17:34:18 +02:00
parent b69ded8f66
commit cfd8dbc5a4
4 changed files with 20 additions and 1 deletions

View File

@ -25,6 +25,7 @@ NOTICE: trigger "update_the_geom_webmercator_trigger" for table "c.t3" does not
NOTICE: trigger "update_updated_at_trigger" for table "c.t3" does not exist, skipping NOTICE: trigger "update_updated_at_trigger" for table "c.t3" does not exist, skipping
NOTICE: trigger "test_quota" for table "c.t3" does not exist, skipping NOTICE: trigger "test_quota" for table "c.t3" does not exist, skipping
NOTICE: trigger "test_quota_per_row" for table "c.t3" does not exist, skipping NOTICE: trigger "test_quota_per_row" for table "c.t3" does not exist, skipping
NOTICE: cdb_invalidate_varnish(c.t3) called
select select
cartodb_id, created_at=updated_at as "c=u", cartodb_id, created_at=updated_at as "c=u",
NOW() - updated_at < '1 secs' as "u<1s", NOW() - updated_at < '1 secs' as "u<1s",
@ -64,6 +65,7 @@ NOTICE: event trigger "cdb_on_relation_drop" does not exist, skipping
NOTICE: event trigger "cdb_on_alter_column" does not exist, skipping NOTICE: event trigger "cdb_on_alter_column" does not exist, skipping
NOTICE: event trigger "cdb_on_drop_column" does not exist, skipping NOTICE: event trigger "cdb_on_drop_column" does not exist, skipping
NOTICE: event trigger "cdb_on_add_column" does not exist, skipping NOTICE: event trigger "cdb_on_add_column" does not exist, skipping
NOTICE: cdb_invalidate_varnish(c.t3) called
select select
cartodb_id, created_at=updated_at as "c=u", cartodb_id, created_at=updated_at as "c=u",
NOW() - updated_at < '1 secs' as "u<1s", NOW() - updated_at < '1 secs' as "u<1s",
@ -100,6 +102,7 @@ NOTICE: event trigger "cdb_on_relation_drop" does not exist, skipping
NOTICE: event trigger "cdb_on_alter_column" does not exist, skipping NOTICE: event trigger "cdb_on_alter_column" does not exist, skipping
NOTICE: event trigger "cdb_on_drop_column" does not exist, skipping NOTICE: event trigger "cdb_on_drop_column" does not exist, skipping
NOTICE: event trigger "cdb_on_add_column" does not exist, skipping NOTICE: event trigger "cdb_on_add_column" does not exist, skipping
NOTICE: cdb_invalidate_varnish(c.t3) called
select select
cartodb_id, created_at=updated_at as "c=u", cartodb_id, created_at=updated_at as "c=u",
NOW() - updated_at < '1 secs' as "u<1s", NOW() - updated_at < '1 secs' as "u<1s",
@ -139,6 +142,7 @@ NOTICE: event trigger "cdb_on_relation_drop" does not exist, skipping
NOTICE: event trigger "cdb_on_alter_column" does not exist, skipping NOTICE: event trigger "cdb_on_alter_column" does not exist, skipping
NOTICE: event trigger "cdb_on_drop_column" does not exist, skipping NOTICE: event trigger "cdb_on_drop_column" does not exist, skipping
NOTICE: event trigger "cdb_on_add_column" does not exist, skipping NOTICE: event trigger "cdb_on_add_column" does not exist, skipping
NOTICE: cdb_invalidate_varnish(c.t3) called
select select
cartodb_id, created_at=updated_at as "c=u", cartodb_id, created_at=updated_at as "c=u",
NOW() - updated_at < '1 secs' as "u<1s", NOW() - updated_at < '1 secs' as "u<1s",
@ -169,6 +173,7 @@ select pg_sleep(.1);
(1 row) (1 row)
alter table c.t3 add column id2 int; alter table c.t3 add column id2 int;
NOTICE: cdb_invalidate_varnish(c.t3) called
select select
cartodb_id, created_at=updated_at as "c=u", cartodb_id, created_at=updated_at as "c=u",
NOW() - updated_at < '1 secs' as "u<1s", NOW() - updated_at < '1 secs' as "u<1s",

View File

@ -1,3 +1,9 @@
CREATE EXTENSION postgis; CREATE EXTENSION postgis;
CREATE EXTENSION schema_triggers; CREATE EXTENSION schema_triggers;
CREATE EXTENSION cartodb; CREATE EXTENSION cartodb;
CREATE FUNCTION public.cdb_invalidate_varnish(table_name text)
RETURNS void AS $$
BEGIN
RAISE NOTICE 'cdb_invalidate_varnish(%) called', table_name;
END;
$$ LANGUAGE 'plpgsql';

View File

@ -94,7 +94,9 @@ $$
LANGUAGE plpgsql VOLATILE SECURITY DEFINER; LANGUAGE plpgsql VOLATILE SECURITY DEFINER;
DROP TRIGGER IF EXISTS table_modified ON CDB_TableMetadata; DROP TRIGGER IF EXISTS table_modified ON CDB_TableMetadata;
CREATE TRIGGER table_modified AFTER INSERT OR UPDATE OR DELETE -- NOTE: on DELETE we would be unable to convert the table
-- oid (regclass) to its name
CREATE TRIGGER table_modified AFTER INSERT OR UPDATE
ON CDB_TableMetadata FOR EACH ROW EXECUTE PROCEDURE ON CDB_TableMetadata FOR EACH ROW EXECUTE PROCEDURE
_CDB_TableMetadata_Updated(); _CDB_TableMetadata_Updated();

View File

@ -1,3 +1,9 @@
CREATE EXTENSION postgis; CREATE EXTENSION postgis;
CREATE EXTENSION schema_triggers; CREATE EXTENSION schema_triggers;
CREATE EXTENSION cartodb; CREATE EXTENSION cartodb;
CREATE FUNCTION public.cdb_invalidate_varnish(table_name text)
RETURNS void AS $$
BEGIN
RAISE NOTICE 'cdb_invalidate_varnish(%) called', table_name;
END;
$$ LANGUAGE 'plpgsql';