Improve extension command propagation logic and tests

* Improve extension command propagation tests

* patch for hardcoded citus extension name

(cherry picked from commit 0bb3dbac0afabda10e8928f9c17eda048dc4361a)
pull/3181/head
Onur TIRTIR 2019-11-21 11:24:39 +03:00 committed by Hanefi Onaldi
parent 7d2813f799
commit 9961297d7b
5 changed files with 188 additions and 197 deletions

View File

@ -639,7 +639,7 @@ IsCreateAlterExtensionUpdateCitusStmt(Node *parseTree)
* Now that we have CreateExtensionStmt or AlterExtensionStmt,
* check if it is run for/on citus
*/
return (strncasecmp(extensionName, CITUS_NAME, NAMEDATALEN) == 0);
return (strncasecmp(extensionName, "citus", NAMEDATALEN) == 0);
}
@ -663,7 +663,7 @@ IsDropCitusStmt(Node *parseTree)
{
const char *extensionName = strVal(lfirst(objectCell));
if (strncasecmp(extensionName, CITUS_NAME, NAMEDATALEN) == 0)
if (strncasecmp(extensionName, "citus", NAMEDATALEN) == 0)
{
return true;
}
@ -696,7 +696,7 @@ IsAlterExtensionSetSchemaCitus(Node *parseTree)
* Now that we have AlterObjectSchemaStmt for an extension,
* check if it is run for/on citus
*/
return (strncasecmp(extensionName, CITUS_NAME, NAMEDATALEN) == 0);
return (strncasecmp(extensionName, "citus", NAMEDATALEN) == 0);
}
}

View File

@ -169,7 +169,7 @@ CitusExtensionObject(const ObjectAddress *objectAddress)
extensionName = get_extension_name(objectAddress->objectId);
if (extensionName != NULL &&
strncasecmp(extensionName, CITUS_NAME, NAMEDATALEN) == 0)
strncasecmp(extensionName, "citus", NAMEDATALEN) == 0)
{
return true;
}

View File

@ -29,11 +29,11 @@ step detector-dump-wait-edges:
waiting_transaction_numblocking_transaction_numblocking_transaction_waiting
340 339 f
357 356 f
transactionnumberwaitingtransactionnumbers
339
340 339
356
357 356
step s1-abort:
ABORT;
@ -77,14 +77,14 @@ step detector-dump-wait-edges:
waiting_transaction_numblocking_transaction_numblocking_transaction_waiting
344 343 f
345 343 f
345 344 t
361 360 f
362 360 f
362 361 t
transactionnumberwaitingtransactionnumbers
343
344 343
345 343,344
360
361 360
362 360,361
step s1-abort:
ABORT;

View File

@ -1,9 +1,6 @@
Parsed test spec with 2 sessions
starting permutation: s1-begin s1-add-node-1 s2-create-extension-version-11 s1-commit s1-print
?column?
1
step s1-begin:
BEGIN;
@ -22,7 +19,7 @@ step s1-commit:
step s2-create-extension-version-11: <... completed>
step s1-print:
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace order by 1,2,3;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
@ -32,8 +29,6 @@ count
1
extname extversion nspname
citus 9.1-1 pg_catalog
plpgsql 1.0 pg_catalog
seg 1.1 public
run_command_on_workers
@ -53,9 +48,6 @@ master_remove_node
starting permutation: s1-begin s1-add-node-1 s2-alter-extension-update-to-version-12 s1-commit s1-print
?column?
1
step s1-begin:
BEGIN;
@ -74,7 +66,7 @@ step s1-commit:
step s2-alter-extension-update-to-version-12: <... completed>
step s1-print:
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace order by 1,2,3;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
@ -84,8 +76,6 @@ count
1
extname extversion nspname
citus 9.1-1 pg_catalog
plpgsql 1.0 pg_catalog
seg 1.2 public
run_command_on_workers
@ -105,9 +95,6 @@ master_remove_node
starting permutation: s1-add-node-1 s1-begin s1-remove-node-1 s2-drop-extension s1-commit s1-print
?column?
1
step s1-add-node-1:
SELECT 1 FROM master_add_node('localhost', 57637);
@ -132,7 +119,7 @@ step s1-commit:
step s2-drop-extension: <... completed>
step s1-print:
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace order by 1,2,3;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
@ -142,8 +129,6 @@ count
0
extname extversion nspname
citus 9.1-1 pg_catalog
plpgsql 1.0 pg_catalog
run_command_on_workers
(localhost,57638,t,"")
@ -158,9 +143,6 @@ master_remove_node
starting permutation: s1-begin s1-add-node-1 s2-create-extension-with-schema1 s1-commit s1-print
?column?
1
step s1-begin:
BEGIN;
@ -171,48 +153,43 @@ step s1-add-node-1:
1
step s2-create-extension-with-schema1:
create schema if not exists schema1;
CREATE extension seg with schema schema1;
<waiting ...>
step s1-commit:
COMMIT;
step s2-create-extension-with-schema1: <... completed>
step s1-print:
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace order by 1,2,3;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
count
0
2
extname extversion nspname
citus 9.1-1 pg_catalog
plpgsql 1.0 pg_catalog
seg 1.3 schema1
run_command_on_workers
(localhost,57637,t,seg)
(localhost,57638,t,"")
(localhost,57638,t,seg)
run_command_on_workers
(localhost,57637,t,1.2)
(localhost,57638,t,"")
(localhost,57638,t,1.3)
run_command_on_workers
(localhost,57637,t,public)
(localhost,57638,t,"")
(localhost,57638,t,schema1)
master_remove_node
starting permutation: s1-begin s1-add-node-1 s2-drop-extension-cascade s1-commit s1-print
?column?
1
starting permutation: s1-begin s1-add-node-1 s2-drop-extension s1-commit s1-print
step s1-begin:
BEGIN;
@ -222,47 +199,43 @@ step s1-add-node-1:
?column?
1
step s2-drop-extension-cascade:
drop extension seg cascade;
step s2-drop-extension:
drop extension seg;
<waiting ...>
step s1-commit:
COMMIT;
step s2-drop-extension: <... completed>
step s1-print:
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace order by 1,2,3;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
count
0
1
extname extversion nspname
citus 9.1-1 pg_catalog
plpgsql 1.0 pg_catalog
run_command_on_workers
(localhost,57637,t,seg)
(localhost,57637,t,"")
(localhost,57638,t,"")
run_command_on_workers
(localhost,57637,t,1.2)
(localhost,57637,t,"")
(localhost,57638,t,"")
run_command_on_workers
(localhost,57637,t,public)
(localhost,57637,t,"")
(localhost,57638,t,"")
master_remove_node
starting permutation: s1-add-node-1 s1-create-extension-with-schema2 s1-begin s1-remove-node-1 s2-alter-extension-set-schema4 s1-commit s1-print
?column?
1
starting permutation: s1-add-node-1 s1-create-extension-with-schema2 s1-begin s1-remove-node-1 s2-alter-extension-set-schema3 s1-commit s1-print
step s1-add-node-1:
SELECT 1 FROM master_add_node('localhost', 57637);
@ -270,7 +243,6 @@ step s1-add-node-1:
1
step s1-create-extension-with-schema2:
create schema if not exists schema2;
CREATE extension seg with schema schema2;
step s1-begin:
@ -282,53 +254,49 @@ step s1-remove-node-1:
?column?
1
step s2-alter-extension-set-schema4:
CREATE schema if not exists schema4;
alter extension seg set schema schema4;
step s2-alter-extension-set-schema3:
alter extension seg set schema schema3;
<waiting ...>
step s1-commit:
COMMIT;
step s2-alter-extension-set-schema4: <... completed>
error in steps s1-commit s2-alter-extension-set-schema4: ERROR: extension "seg" does not exist
step s2-alter-extension-set-schema3: <... completed>
step s1-print:
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace order by 1,2,3;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
count
0
4
extname extversion nspname
citus 9.1-1 pg_catalog
plpgsql 1.0 pg_catalog
seg 1.3 schema2
seg 1.3 schema3
run_command_on_workers
(localhost,57638,t,"")
(localhost,57638,t,seg)
run_command_on_workers
(localhost,57638,t,"")
(localhost,57638,t,1.3)
run_command_on_workers
(localhost,57638,t,"")
(localhost,57638,t,schema3)
master_remove_node
starting permutation: s1-add-node-1 s1-begin s1-remove-node-1 s2-create-extension-with-schema1 s1-commit s1-print
?column?
1
starting permutation: s1-add-node-1 s2-drop-extension s1-begin s1-remove-node-1 s2-create-extension-with-schema1 s1-commit s1-print
step s1-add-node-1:
SELECT 1 FROM master_add_node('localhost', 57637);
?column?
1
step s2-drop-extension:
drop extension seg;
step s1-begin:
BEGIN;
@ -339,48 +307,54 @@ step s1-remove-node-1:
1
step s2-create-extension-with-schema1:
create schema if not exists schema1;
CREATE extension seg with schema schema1;
ERROR: extension "seg" already exists
<waiting ...>
step s1-commit:
COMMIT;
step s2-create-extension-with-schema1: <... completed>
step s1-print:
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace order by 1,2,3;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
count
0
4
extname extversion nspname
citus 9.1-1 pg_catalog
plpgsql 1.0 pg_catalog
seg 1.3 schema2
seg 1.3 schema1
run_command_on_workers
(localhost,57638,t,"")
(localhost,57638,t,seg)
run_command_on_workers
(localhost,57638,t,"")
(localhost,57638,t,1.3)
run_command_on_workers
(localhost,57638,t,"")
(localhost,57638,t,schema1)
master_remove_node
starting permutation: s2-drop-extension s2-begin s2-create-extension-version-11 s1-add-node-1 s2-commit s1-print
starting permutation: s2-add-node-1 s2-drop-extension s2-remove-node-1 s2-begin s2-create-extension-version-11 s1-add-node-1 s2-commit s1-print
step s2-add-node-1:
SELECT 1 FROM master_add_node('localhost', 57637);
?column?
1
step s2-drop-extension:
drop extension seg;
step s2-remove-node-1:
SELECT 1 FROM master_remove_node('localhost', 57637);
?column?
1
step s2-begin:
BEGIN;
@ -398,46 +372,53 @@ step s2-commit:
step s1-print:
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace order by 1,2,3;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
count
0
3
extname extversion nspname
citus 9.1-1 pg_catalog
plpgsql 1.0 pg_catalog
seg 1.1 public
run_command_on_workers
(localhost,57637,t,seg)
(localhost,57637,t,"")
(localhost,57638,t,"")
run_command_on_workers
(localhost,57637,t,1.2)
(localhost,57637,t,"")
(localhost,57638,t,"")
run_command_on_workers
(localhost,57637,t,public)
(localhost,57637,t,"")
(localhost,57638,t,"")
master_remove_node
starting permutation: s2-drop-extension s2-create-extension-version-11 s2-begin s2-alter-extension-update-to-version-12 s1-add-node-1 s2-commit s1-print
?column?
1
starting permutation: s2-drop-extension s2-add-node-1 s2-create-extension-version-11 s2-remove-node-1 s2-begin s2-alter-extension-update-to-version-12 s1-add-node-1 s2-commit s1-print
step s2-drop-extension:
drop extension seg;
step s2-add-node-1:
SELECT 1 FROM master_add_node('localhost', 57637);
?column?
1
step s2-create-extension-version-11:
CREATE extension seg VERSION "1.1";
step s2-remove-node-1:
SELECT 1 FROM master_remove_node('localhost', 57637);
?column?
1
step s2-begin:
BEGIN;
@ -456,18 +437,16 @@ step s1-add-node-1: <... completed>
1
step s1-print:
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace order by 1,2,3;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
count
1
4
extname extversion nspname
citus 9.1-1 pg_catalog
plpgsql 1.0 pg_catalog
seg 1.2 public
run_command_on_workers
@ -475,7 +454,7 @@ run_command_on_workers
(localhost,57638,t,seg)
run_command_on_workers
(localhost,57637,t,1.2)
(localhost,57637,t,1.1)
(localhost,57638,t,1.2)
run_command_on_workers
@ -487,9 +466,6 @@ master_remove_node
starting permutation: s2-add-node-1 s2-begin s2-drop-extension s1-remove-node-1 s2-commit s1-print
?column?
1
step s2-add-node-1:
SELECT 1 FROM master_add_node('localhost', 57637);
@ -514,18 +490,16 @@ step s1-remove-node-1: <... completed>
1
step s1-print:
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace order by 1,2,3;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
count
0
3
extname extversion nspname
citus 9.1-1 pg_catalog
plpgsql 1.0 pg_catalog
run_command_on_workers
(localhost,57638,t,"")
@ -540,14 +514,10 @@ master_remove_node
starting permutation: s2-begin s2-create-extension-with-schema1 s1-add-node-1 s2-commit s1-print
?column?
1
step s2-begin:
BEGIN;
step s2-create-extension-with-schema1:
create schema if not exists schema1;
CREATE extension seg with schema schema1;
step s1-add-node-1:
@ -561,18 +531,16 @@ step s2-commit:
step s1-print:
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace order by 1,2,3;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
count
0
3
extname extversion nspname
citus 9.1-1 pg_catalog
plpgsql 1.0 pg_catalog
seg 1.3 schema1
run_command_on_workers
@ -591,21 +559,17 @@ master_remove_node
starting permutation: s2-add-node-1 s2-drop-extension-cascade s2-create-extension-with-schema2 s2-begin s2-alter-extension-version-13 s1-remove-node-1 s2-commit s1-print
?column?
starting permutation: s2-drop-extension s2-add-node-1 s2-create-extension-with-schema2 s2-begin s2-alter-extension-version-13 s1-remove-node-1 s2-commit s1-print
step s2-drop-extension:
drop extension seg;
1
step s2-add-node-1:
SELECT 1 FROM master_add_node('localhost', 57637);
?column?
1
step s2-drop-extension-cascade:
drop extension seg cascade;
step s2-create-extension-with-schema2:
create schema if not exists schema2;
CREATE extension seg with schema schema2;
step s2-begin:
@ -614,48 +578,43 @@ step s2-begin:
step s2-alter-extension-version-13:
ALTER extension seg update to "1.3";
ERROR: extension "seg" does not exist
step s1-remove-node-1:
SELECT 1 FROM master_remove_node('localhost', 57637);
?column?
1
<waiting ...>
step s2-commit:
COMMIT;
step s1-remove-node-1: <... completed>
?column?
1
step s1-print:
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace order by 1,2,3;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
count
0
4
extname extversion nspname
citus 9.1-1 pg_catalog
plpgsql 1.0 pg_catalog
seg 1.3 schema2
run_command_on_workers
(localhost,57638,t,"")
(localhost,57638,t,seg)
run_command_on_workers
(localhost,57638,t,"")
(localhost,57638,t,1.3)
run_command_on_workers
(localhost,57638,t,"")
(localhost,57638,t,schema2)
master_remove_node
starting permutation: s2-drop-extension s2-add-node-1 s2-begin s2-create-extension-version-11 s1-remove-node-1 s2-commit s1-print
?column?
1
step s2-drop-extension:
drop extension seg;
@ -682,18 +641,16 @@ step s2-commit:
step s1-print:
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace order by 1,2,3;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
count
0
3
extname extversion nspname
citus 9.1-1 pg_catalog
plpgsql 1.0 pg_catalog
seg 1.1 public
run_command_on_workers
@ -707,3 +664,67 @@ run_command_on_workers
master_remove_node
starting permutation: s2-drop-extension s2-add-node-1 s2-create-extension-version-11 s2-remove-node-1 s2-begin s2-drop-extension s1-add-node-1 s2-commit s1-print
step s2-drop-extension:
drop extension seg;
step s2-add-node-1:
SELECT 1 FROM master_add_node('localhost', 57637);
?column?
1
step s2-create-extension-version-11:
CREATE extension seg VERSION "1.1";
step s2-remove-node-1:
SELECT 1 FROM master_remove_node('localhost', 57637);
?column?
1
step s2-begin:
BEGIN;
step s2-drop-extension:
drop extension seg;
step s1-add-node-1:
SELECT 1 FROM master_add_node('localhost', 57637);
<waiting ...>
step s2-commit:
COMMIT;
step s1-add-node-1: <... completed>
?column?
1
step s1-print:
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
count
3
extname extversion nspname
run_command_on_workers
(localhost,57637,t,seg)
(localhost,57638,t,"")
run_command_on_workers
(localhost,57637,t,1.3)
(localhost,57638,t,"")
run_command_on_workers
(localhost,57637,t,schema2)
(localhost,57638,t,"")
master_remove_node

View File

@ -1,6 +1,10 @@
setup
{
SELECT 1 FROM master_add_node('localhost', 57638);
create schema if not exists schema1;
create schema if not exists schema2;
CREATE schema if not exists schema3;
}
teardown
@ -20,16 +24,6 @@ step "s1-add-node-1"
SELECT 1 FROM master_add_node('localhost', 57637);
}
step "s1-activate-node-1"
{
SELECT 1 FROM master_activate_node('localhost', 57637);
}
step "s1-disable-node-1"
{
SELECT 1 FROM master_disable_node('localhost', 57637);
}
step "s1-remove-node-1"
{
SELECT 1 FROM master_remove_node('localhost', 57637);
@ -40,32 +34,15 @@ step "s1-commit"
COMMIT;
}
step "s1-alter-extension-12"
{
alter extension seg update to "1.2";
}
step "s1-drop-extension-cascade"
{
drop extension seg cascade;
}
step "s1-create-extension-with-schema2"
{
create schema if not exists schema2;
CREATE extension seg with schema schema2;
}
step "s1-alter-extension-set-schema2"
{
create schema if not exists schema2;
alter extension seg set schema schema2;
}
step "s1-print"
{
select count(*) from citus.pg_dist_object ;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace order by 1,2,3;
select extname, extversion, nspname from pg_extension, pg_namespace where pg_namespace.oid=pg_extension.extnamespace and extname='seg';
SELECT run_command_on_workers($$select extname from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select extversion from pg_extension where extname='seg'$$);
SELECT run_command_on_workers($$select nspname from pg_extension, pg_namespace where extname='seg' and pg_extension.extnamespace=pg_namespace.oid$$);
@ -95,13 +72,11 @@ step "s2-alter-extension-version-13"
step "s2-create-extension-with-schema1"
{
create schema if not exists schema1;
CREATE extension seg with schema schema1;
}
step "s2-create-extension-with-schema2"
{
create schema if not exists schema2;
CREATE extension seg with schema schema2;
}
@ -110,25 +85,14 @@ step "s2-drop-extension"
drop extension seg;
}
step "s2-drop-extension-cascade"
{
drop extension seg cascade;
}
step "s2-alter-extension-update-to-version-12"
{
ALTER extension seg update to "1.2";
}
step "s2-alter-extension-set-schema4"
step "s2-alter-extension-set-schema3"
{
CREATE schema if not exists schema4;
alter extension seg set schema schema4;
}
step "s2-alter-extension-set-schema-public"
{
alter extension seg set schema public;
alter extension seg set schema schema3;
}
step "s2-commit"
@ -136,19 +100,25 @@ step "s2-commit"
COMMIT;
}
step "s2-remove-node-1"
{
SELECT 1 FROM master_remove_node('localhost', 57637);
}
# master_#_node vs extension command
permutation "s1-begin" "s1-add-node-1" "s2-create-extension-version-11" "s1-commit" "s1-print"
permutation "s1-begin" "s1-add-node-1" "s2-alter-extension-update-to-version-12" "s1-commit" "s1-print"
permutation "s1-add-node-1" "s1-begin" "s1-remove-node-1" "s2-drop-extension" "s1-commit" "s1-print"
permutation "s1-begin" "s1-add-node-1" "s2-create-extension-with-schema1" "s1-commit" "s1-print"
permutation "s1-begin" "s1-add-node-1" "s2-drop-extension-cascade" "s1-commit" "s1-print"
permutation "s1-add-node-1" "s1-create-extension-with-schema2" "s1-begin" "s1-remove-node-1" "s2-alter-extension-set-schema4" "s1-commit" "s1-print"
permutation "s1-add-node-1" "s1-begin" "s1-remove-node-1" "s2-create-extension-with-schema1" "s1-commit" "s1-print"
permutation "s1-begin" "s1-add-node-1" "s2-drop-extension" "s1-commit" "s1-print"
permutation "s1-add-node-1" "s1-create-extension-with-schema2" "s1-begin" "s1-remove-node-1" "s2-alter-extension-set-schema3" "s1-commit" "s1-print"
permutation "s1-add-node-1" "s2-drop-extension" "s1-begin" "s1-remove-node-1" "s2-create-extension-with-schema1" "s1-commit" "s1-print"
# extension command vs master_#_node
permutation "s2-drop-extension" "s2-begin" "s2-create-extension-version-11" "s1-add-node-1" "s2-commit" "s1-print"
permutation "s2-drop-extension" "s2-create-extension-version-11" "s2-begin" "s2-alter-extension-update-to-version-12" "s1-add-node-1" "s2-commit" "s1-print"
permutation "s2-add-node-1" "s2-drop-extension" "s2-remove-node-1" "s2-begin" "s2-create-extension-version-11" "s1-add-node-1" "s2-commit" "s1-print"
permutation "s2-drop-extension" "s2-add-node-1" "s2-create-extension-version-11" "s2-remove-node-1" "s2-begin" "s2-alter-extension-update-to-version-12" "s1-add-node-1" "s2-commit" "s1-print"
permutation "s2-add-node-1" "s2-begin" "s2-drop-extension" "s1-remove-node-1" "s2-commit" "s1-print"
permutation "s2-begin" "s2-create-extension-with-schema1" "s1-add-node-1" "s2-commit" "s1-print"
permutation "s2-add-node-1" "s2-drop-extension-cascade" "s2-create-extension-with-schema2" "s2-begin" "s2-alter-extension-version-13" "s1-remove-node-1" "s2-commit" "s1-print"
permutation "s2-drop-extension" "s2-add-node-1" "s2-create-extension-with-schema2" "s2-begin" "s2-alter-extension-version-13" "s1-remove-node-1" "s2-commit" "s1-print"
permutation "s2-drop-extension" "s2-add-node-1" "s2-begin" "s2-create-extension-version-11" "s1-remove-node-1" "s2-commit" "s1-print"
permutation "s2-drop-extension" "s2-add-node-1" "s2-create-extension-version-11" "s2-remove-node-1" "s2-begin" "s2-drop-extension" "s1-add-node-1" "s2-commit" "s1-print"