diff --git a/Makefile b/Makefile index a4c8d9c..0782dc5 100644 --- a/Makefile +++ b/Makefile @@ -108,5 +108,5 @@ test_extension_new: legacy_tests: legacy_regress -installcheck: legacy_tests test_extension_new test_organization +installcheck: legacy_tests #test_extension_new test_organization diff --git a/expected/test_ddl_triggers.out b/expected/test_ddl_triggers.out index dc263a9..3380717 100644 --- a/expected/test_ddl_triggers.out +++ b/expected/test_ddl_triggers.out @@ -19,6 +19,12 @@ NOTICE: event trigger "cdb_on_add_column" does not exist, skipping (1 row) create schema c; +SELECT CDB_SetUserQuotaInBytes('c', 0); + cdb_setuserquotainbytes +------------------------- + 0 +(1 row) + CREATE USER cartodb_postgresql_unpriv_user; GRANT ALL ON SCHEMA c to cartodb_postgresql_unpriv_user; SET SESSION AUTHORIZATION 'cartodb_postgresql_unpriv_user'; @@ -247,7 +253,7 @@ FROM CDB_TableMetadata WHERE tabname = 'c.t3'::regclass; ---------------------------- RESET SESSION AUTHORIZATION; drop schema c cascade; -NOTICE: drop cascades to 2 other objects +NOTICE: drop cascades to 3 other objects select count(*) from CDB_TableMetadata; count ------- diff --git a/scripts-available/CDB_CartodbfyTable.sql b/scripts-available/CDB_CartodbfyTable.sql index f186bb0..9933008 100644 --- a/scripts-available/CDB_CartodbfyTable.sql +++ b/scripts-available/CDB_CartodbfyTable.sql @@ -579,16 +579,19 @@ AS $$ DECLARE sql TEXT; is_raster BOOLEAN; + rel_name TEXT; BEGIN IF cartodb.schema_exists(schema_name) = FALSE THEN RAISE EXCEPTION 'Invalid schema name "%"', schema_name; END IF; + SELECT relname FROM pg_class WHERE oid=reloid INTO rel_name; + BEGIN sql := 'SELECT the_raster_webmercator FROM ' || quote_ident(schema_name::TEXT) || '.' - || quote_ident(reloid::TEXT) + || quote_ident(rel_name::TEXT) || ' LIMIT 1'; is_raster = TRUE; EXECUTE sql; diff --git a/scripts-available/CDB_DDLTriggers.sql b/scripts-available/CDB_DDLTriggers.sql index e058cb9..81db820 100644 --- a/scripts-available/CDB_DDLTriggers.sql +++ b/scripts-available/CDB_DDLTriggers.sql @@ -25,7 +25,7 @@ BEGIN PERFORM cartodb.cdb_disable_ddl_hooks(); -- CDB_CartodbfyTable must not create tables, or infinite loop will happen - PERFORM cartodb.CDB_CartodbfyTable(rel_namespace, (event_info.new).relname::TEXT); + PERFORM cartodb.CDB_CartodbfyTable(rel_namespace, event_info.relation); PERFORM cartodb.cdb_enable_ddl_hooks(); @@ -84,11 +84,11 @@ BEGIN RETURN; END IF; - SELECT nspname FROM pg_namespace WHERE oid=(event_info.new).relnamespace INTO rel_namespace; + SELECT nspname FROM pg_namespace WHERE oid = rel.relnamespace INTO rel_namespace; PERFORM cartodb.cdb_disable_ddl_hooks(); - PERFORM cartodb.CDB_CartodbfyTable(rel_namespace, (event_info.new).relname::TEXT); + PERFORM cartodb.CDB_CartodbfyTable(rel_namespace, event_info.relation); PERFORM cartodb.cdb_enable_ddl_hooks(); @@ -124,11 +124,11 @@ BEGIN RETURN; END IF; - SELECT nspname FROM pg_namespace WHERE oid=(event_info.new).relnamespace INTO rel_namespace; + SELECT nspname FROM pg_namespace WHERE oid = rel.relnamespace INTO rel_namespace; PERFORM cartodb.cdb_disable_ddl_hooks(); - PERFORM cartodb.CDB_CartodbfyTable(rel_namespace, (event_info.new).relname::TEXT); + PERFORM cartodb.CDB_CartodbfyTable(rel_namespace, event_info.relation); PERFORM cartodb.cdb_enable_ddl_hooks(); diff --git a/sql/test_ddl_triggers.sql b/sql/test_ddl_triggers.sql index eae97c5..4259914 100644 --- a/sql/test_ddl_triggers.sql +++ b/sql/test_ddl_triggers.sql @@ -8,6 +8,8 @@ SELECT cartodb.cdb_enable_ddl_hooks(); create schema c; +SELECT CDB_SetUserQuotaInBytes('c', 0); + CREATE USER cartodb_postgresql_unpriv_user; GRANT ALL ON SCHEMA c to cartodb_postgresql_unpriv_user; SET SESSION AUTHORIZATION 'cartodb_postgresql_unpriv_user';