| -- |
| -- Test for directory table |
| -- |
| -- Display pg_tablespace, pg_directory_table, gp_storage_server, gp_storage_user_mapping catalog |
| \d+ pg_tablespace; |
| Table "pg_catalog.pg_tablespace" |
| Column | Type | Collation | Nullable | Default | Storage | Stats target | Description |
| -------------------+-----------+-----------+----------+---------+----------+--------------+------------- |
| oid | oid | | not null | | plain | | |
| spcname | name | | not null | | plain | | |
| spcowner | oid | | not null | | plain | | |
| spcacl | aclitem[] | | | | extended | | |
| spcoptions | text[] | C | | | extended | | |
| spcfilehandlersrc | text | C | | | extended | | |
| spcfilehandlerbin | text | C | | | extended | | |
| Indexes: |
| "pg_tablespace_oid_index" PRIMARY KEY, btree (oid), tablespace "pg_global" |
| "pg_tablespace_spcname_index" UNIQUE CONSTRAINT, btree (spcname), tablespace "pg_global" |
| Tablespace: "pg_global" |
| |
| \d+ pg_directory_table; |
| Table "pg_catalog.pg_directory_table" |
| Column | Type | Collation | Nullable | Default | Storage | Stats target | Description |
| --------------+------+-----------+----------+---------+----------+--------------+------------- |
| dtrelid | oid | | not null | | plain | | |
| dttablespace | oid | | not null | | plain | | |
| dtlocation | text | C | | | extended | | |
| Indexes: |
| "pg_directory_table_relid_index" PRIMARY KEY, btree (dtrelid) |
| |
| \d+ gp_storage_server; |
| Table "pg_catalog.gp_storage_server" |
| Column | Type | Collation | Nullable | Default | Storage | Stats target | Description |
| ------------+-----------+-----------+----------+---------+----------+--------------+------------- |
| oid | oid | | not null | | plain | | |
| srvname | name | | not null | | plain | | |
| srvowner | oid | | not null | | plain | | |
| srvacl | aclitem[] | | | | extended | | |
| srvoptions | text[] | C | | | extended | | |
| Indexes: |
| "gp_storage_server_oid_index" PRIMARY KEY, btree (oid), tablespace "pg_global" |
| "gp_storage_server_name_index" UNIQUE CONSTRAINT, btree (srvname), tablespace "pg_global" |
| Tablespace: "pg_global" |
| |
| \d+ gp_storage_user_mapping; |
| Table "pg_catalog.gp_storage_user_mapping" |
| Column | Type | Collation | Nullable | Default | Storage | Stats target | Description |
| -----------+--------+-----------+----------+---------+----------+--------------+------------- |
| oid | oid | | not null | | plain | | |
| umuser | oid | | not null | | plain | | |
| umserver | oid | | not null | | plain | | |
| umoptions | text[] | C | | | extended | | |
| Indexes: |
| "gp_storage_user_mapping_oid_index" PRIMARY KEY, btree (oid), tablespace "pg_global" |
| "gp_storage_user_mapping_server_index" UNIQUE CONSTRAINT, btree (umuser, umserver), tablespace "pg_global" |
| Tablespace: "pg_global" |
| |
| SELECT relname, relisshared, relpersistence, relkind FROM pg_class WHERE relname = 'pg_directory_table'; |
| relname | relisshared | relpersistence | relkind |
| --------------------+-------------+----------------+--------- |
| pg_directory_table | f | p | r |
| (1 row) |
| |
| SELECT relname, relisshared, relpersistence, relkind FROM pg_class WHERE relname = 'gp_storage_server'; |
| relname | relisshared | relpersistence | relkind |
| -------------------+-------------+----------------+--------- |
| gp_storage_server | t | p | r |
| (1 row) |
| |
| SELECT relname, relisshared, relpersistence, relkind FROM pg_class WHERE relname = 'gp_storage_user_mapping'; |
| relname | relisshared | relpersistence | relkind |
| -------------------------+-------------+----------------+--------- |
| gp_storage_user_mapping | t | p | r |
| (1 row) |
| |
| -- CREATE TABLESPACE |
| CREATE TABLESPACE directory_tblspc LOCATION '@testtablespace@'; |
| -- CREATE DATABASE |
| CREATE DATABASE dirtable_db; |
| \c dirtable_db |
| \d+ pg_directory_table; |
| Table "pg_catalog.pg_directory_table" |
| Column | Type | Collation | Nullable | Default | Storage | Stats target | Description |
| --------------+------+-----------+----------+---------+----------+--------------+------------- |
| dtrelid | oid | | not null | | plain | | |
| dttablespace | oid | | not null | | plain | | |
| dtlocation | text | C | | | extended | | |
| Indexes: |
| "pg_directory_table_relid_index" PRIMARY KEY, btree (dtrelid) |
| |
| \d+ gp_storage_server; |
| Table "pg_catalog.gp_storage_server" |
| Column | Type | Collation | Nullable | Default | Storage | Stats target | Description |
| ------------+-----------+-----------+----------+---------+----------+--------------+------------- |
| oid | oid | | not null | | plain | | |
| srvname | name | | not null | | plain | | |
| srvowner | oid | | not null | | plain | | |
| srvacl | aclitem[] | | | | extended | | |
| srvoptions | text[] | C | | | extended | | |
| Indexes: |
| "gp_storage_server_oid_index" PRIMARY KEY, btree (oid), tablespace "pg_global" |
| "gp_storage_server_name_index" UNIQUE CONSTRAINT, btree (srvname), tablespace "pg_global" |
| Tablespace: "pg_global" |
| |
| \d+ gp_storage_user_mapping; |
| Table "pg_catalog.gp_storage_user_mapping" |
| Column | Type | Collation | Nullable | Default | Storage | Stats target | Description |
| -----------+--------+-----------+----------+---------+----------+--------------+------------- |
| oid | oid | | not null | | plain | | |
| umuser | oid | | not null | | plain | | |
| umserver | oid | | not null | | plain | | |
| umoptions | text[] | C | | | extended | | |
| Indexes: |
| "gp_storage_user_mapping_oid_index" PRIMARY KEY, btree (oid), tablespace "pg_global" |
| "gp_storage_user_mapping_server_index" UNIQUE CONSTRAINT, btree (umuser, umserver), tablespace "pg_global" |
| Tablespace: "pg_global" |
| |
| SELECT relname, relisshared, relpersistence, relkind FROM pg_class WHERE relname = 'pg_directory_table'; |
| relname | relisshared | relpersistence | relkind |
| --------------------+-------------+----------------+--------- |
| pg_directory_table | f | p | r |
| (1 row) |
| |
| SELECT relname, relisshared, relpersistence, relkind FROM pg_class WHERE relname = 'gp_storage_server'; |
| relname | relisshared | relpersistence | relkind |
| -------------------+-------------+----------------+--------- |
| gp_storage_server | t | p | r |
| (1 row) |
| |
| SELECT relname, relisshared, relpersistence, relkind FROM pg_class WHERE relname = 'gp_storage_user_mapping'; |
| relname | relisshared | relpersistence | relkind |
| -------------------------+-------------+----------------+--------- |
| gp_storage_user_mapping | t | p | r |
| (1 row) |
| |
| \c regression |
| -- CREATE USER for directory table |
| CREATE USER test_dirtable1; |
| NOTICE: resource queue required -- using default resource queue "pg_default" |
| CREATE USER test_dirtable2; |
| NOTICE: resource queue required -- using default resource queue "pg_default" |
| CREATE USER test_dirtable3; |
| NOTICE: resource queue required -- using default resource queue "pg_default" |
| CREATE USER test_dirtable4; |
| NOTICE: resource queue required -- using default resource queue "pg_default" |
| -- Test CREATE STORAGE SERVER |
| SELECT srvname, srvacl, srvoptions from gp_storage_server ORDER BY 1; |
| srvname | srvacl | srvoptions |
| ---------+--------+------------ |
| (0 rows) |
| |
| CREATE STORAGE SERVER oss_server1; |
| CREATE STORAGE SERVER oss_server2 OPTIONS(protocal 'localhost'); |
| CREATE STORAGE SERVER oss_server3 OPTIONS(endpoint '127.0.0.1:9000'); |
| CREATE STORAGE SERVER oss_server4 OPTIONS(https 'true'); |
| CREATE STORAGE SERVER oss_server5 OPTIONS(virtual_host 'false'); |
| CREATE STORAGE SERVER oss_server6 OPTIONS(protocol 'qingstor', endpoint 'pek3b,qingstor.com'); |
| CREATE STORAGE SERVER oss_server7 OPTIONS(https 'false', virtual_host 'true'); |
| CREATE STORAGE SERVER oss_server8 OPTIONS(protocol 'hdfs', namenode '127.0.0.1:8020'); |
| CREATE STORAGE SERVER oss_server9 OWNER TO postgres; -- fail |
| ERROR: syntax error at or near "OWNER" |
| LINE 1: CREATE STORAGE SERVER oss_server9 OWNER TO postgres; |
| ^ |
| CREATE STORAGE SERVER IF NOT EXISTS oss_server10; |
| CREATE STORAGE SERVER IF NOT EXISTS oss_server11 OPTIONS(protocol 's3av2'); |
| CREATE STORAGE SERVER IF NOT EXISTS oss_server12 OPTIONS(protocol 's3av2', endpoint '127.0.0.1:9000', https 'false'); |
| CREATE STORAGE SERVER IF NOT EXISTS oss_server13 OWNER TO postgres; -- fail |
| ERROR: syntax error at or near "OWNER" |
| LINE 1: CREATE STORAGE SERVER IF NOT EXISTS oss_server13 OWNER TO po... |
| ^ |
| SELECT srvname, srvacl, srvoptions from gp_storage_server ORDER BY 1; |
| srvname | srvacl | srvoptions |
| --------------+--------+------------------------------------------------------ |
| oss_server1 | | |
| oss_server10 | | |
| oss_server11 | | {protocol=s3av2} |
| oss_server12 | | {protocol=s3av2,endpoint=127.0.0.1:9000,https=false} |
| oss_server2 | | {protocal=localhost} |
| oss_server3 | | {endpoint=127.0.0.1:9000} |
| oss_server4 | | {https=true} |
| oss_server5 | | {virtual_host=false} |
| oss_server6 | | {protocol=qingstor,"endpoint=pek3b,qingstor.com"} |
| oss_server7 | | {https=false,virtual_host=true} |
| oss_server8 | | {protocol=hdfs,namenode=127.0.0.1:8020} |
| (11 rows) |
| |
| \c dirtable_db |
| SELECT srvname, srvacl, srvoptions from gp_storage_server ORDER BY 1; |
| srvname | srvacl | srvoptions |
| --------------+--------+------------------------------------------------------ |
| oss_server1 | | |
| oss_server10 | | |
| oss_server11 | | {protocol=s3av2} |
| oss_server12 | | {protocol=s3av2,endpoint=127.0.0.1:9000,https=false} |
| oss_server2 | | {protocal=localhost} |
| oss_server3 | | {endpoint=127.0.0.1:9000} |
| oss_server4 | | {https=true} |
| oss_server5 | | {virtual_host=false} |
| oss_server6 | | {protocol=qingstor,"endpoint=pek3b,qingstor.com"} |
| oss_server7 | | {https=false,virtual_host=true} |
| oss_server8 | | {protocol=hdfs,namenode=127.0.0.1:8020} |
| (11 rows) |
| |
| \c regression |
| -- Test ALTER STORAGE SERVER |
| ALTER STORAGE SERVER oss_server1 OPTIONS(protocol 'aws'); |
| ALTER STORAGE SERVER oss_server1 OPTIONS(protocol 'test'); -- fail |
| ERROR: option "protocol" provided more than once |
| ALTER STORAGE SERVER oss_server2 OPTIONS(https 'true'); |
| ALTER STORAGE SERVER oss_server2 OPTIONS(https 'false', virtual_host 'true'); -- fail |
| ERROR: option "https" provided more than once |
| ALTER STORAGE SERVER oss_server2 OPTIONS(virtual_host 'true'); |
| ALTER STORAGE SERVER oss_server3 OPTIONS(endpoint '192.168.0.1'); -- fail |
| ERROR: option "endpoint" provided more than once |
| ALTER STORAGE SERVER oss_server4 OPTIONS(protocol 'localhost', virtual_host 'true'); |
| ALTER STORAGE SERVER oss_server4 OPTIONS(protocol 'qingstor'); -- fail |
| ERROR: option "protocol" provided more than once |
| ALTER STORAGE SERVER oss_server5; -- fail |
| ERROR: syntax error at or near ";" |
| LINE 1: ALTER STORAGE SERVER oss_server5; |
| ^ |
| ALTER STORAGE SERVER oss_server6 OWNER TO postgres; -- fail |
| ERROR: syntax error at or near "OWNER" |
| LINE 1: ALTER STORAGE SERVER oss_server6 OWNER TO postgres; |
| ^ |
| ALTER STORAGE SERVER IF EXISTS oss_server7 OPTIONS(endpoint '127.0.0.1:6555'); -- fail |
| ERROR: syntax error at or near "EXISTS" |
| LINE 1: ALTER STORAGE SERVER IF EXISTS oss_server7 OPTIONS(endpoint ... |
| ^ |
| ALTER STORAGE SERVER IF NOT EXISTS oss_server8 OPTIONS(virtual_host 'true'); -- fail |
| ERROR: syntax error at or near "NOT" |
| LINE 1: ALTER STORAGE SERVER IF NOT EXISTS oss_server8 OPTIONS(virtu... |
| ^ |
| SELECT srvname, srvacl, srvoptions from gp_storage_server ORDER BY 1; |
| srvname | srvacl | srvoptions |
| --------------+--------+------------------------------------------------------ |
| oss_server1 | | {protocol=aws} |
| oss_server10 | | |
| oss_server11 | | {protocol=s3av2} |
| oss_server12 | | {protocol=s3av2,endpoint=127.0.0.1:9000,https=false} |
| oss_server2 | | {protocal=localhost,https=true,virtual_host=true} |
| oss_server3 | | {endpoint=127.0.0.1:9000} |
| oss_server4 | | {https=true,protocol=localhost,virtual_host=true} |
| oss_server5 | | {virtual_host=false} |
| oss_server6 | | {protocol=qingstor,"endpoint=pek3b,qingstor.com"} |
| oss_server7 | | {https=false,virtual_host=true} |
| oss_server8 | | {protocol=hdfs,namenode=127.0.0.1:8020} |
| (11 rows) |
| |
| \c dirtable_db |
| SELECT srvname, srvacl, srvoptions from gp_storage_server ORDER BY 1; |
| srvname | srvacl | srvoptions |
| --------------+--------+------------------------------------------------------ |
| oss_server1 | | {protocol=aws} |
| oss_server10 | | |
| oss_server11 | | {protocol=s3av2} |
| oss_server12 | | {protocol=s3av2,endpoint=127.0.0.1:9000,https=false} |
| oss_server2 | | {protocal=localhost,https=true,virtual_host=true} |
| oss_server3 | | {endpoint=127.0.0.1:9000} |
| oss_server4 | | {https=true,protocol=localhost,virtual_host=true} |
| oss_server5 | | {virtual_host=false} |
| oss_server6 | | {protocol=qingstor,"endpoint=pek3b,qingstor.com"} |
| oss_server7 | | {https=false,virtual_host=true} |
| oss_server8 | | {protocol=hdfs,namenode=127.0.0.1:8020} |
| (11 rows) |
| |
| \c regression |
| -- Test CREATE STORAGE USER MAPPING |
| CREATE STORAGE USER MAPPING FOR CURRENT_USER; -- fail |
| ERROR: syntax error at or near ";" |
| LINE 1: CREATE STORAGE USER MAPPING FOR CURRENT_USER; |
| ^ |
| CREATE STORAGE USER MAPPING FOR CURRENT_USER STORAGE SERVER oss_server1; |
| CREATE STORAGE USER MAPPING FOR CURRENT_USER STORAGE SERVER oss_server1 |
| OPTIONS (accesskey 'KGFQWEFQQEFXVAEAWLLC', secretkey '0SJIWiIATh6jOlmAKr8DGq6hOAGBI1BnsnvgJmTs'); -- fail |
| ERROR: storage user mapping for "gpadmin" already exists for storage server "oss_server1" |
| CREATE STORAGE USER MAPPING IF NOT EXISTS FOR CURRENT_USER STORAGE SERVER oss_server1; |
| NOTICE: storage user mapping for "gpadmin" already exists for storage server "oss_server1", skipping |
| CREATE STORAGE USER MAPPING IF NOT EXISTS FOR CURRENT_USER STORAGE SERVER oss_server1 |
| OPTIONS (auth_method 'simple'); |
| NOTICE: storage user mapping for "gpadmin" already exists for storage server "oss_server1", skipping |
| CREATE STORAGE USER MAPPING FOR CURRENT_ROLE STORAGE SERVER oss_server2 |
| OPTIONS (accesskey 'EQEJIOJFAKQWESQEJIWQ', secretkey '0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE'); |
| CREATE STORAGE USER MAPPING FOR CURRENT_USER STORAGE SERVER oss_server2 |
| OPTIONS (accesskey 'KGFQWEFQQEFXVAEAWLLC', secretkey '0SJIWiIATh6jOlmAKr8DGq6hOAGBI1BnsnvgJmTs'); -- fail |
| ERROR: storage user mapping for "gpadmin" already exists for storage server "oss_server2" |
| CREATE STORAGE USER MAPPING FOR CURRENT_ROLE STORAGE SERVER oss_server3 |
| OPTIONS (accesskey 'EQEJIOJFAKQWESQEJIWQ', secretkey '0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE'); |
| CREATE STORAGE USER MAPPING FOR CURRENT_USER STORAGE SERVER oss_not_exits; -- fail |
| ERROR: server "oss_not_exits" does not exist |
| CREATE STORAGE USER MAPPING FOR CURRENT_USER STORAGE SERVER oss_not_exits |
| OPTIONS (accesskey 'KGFQWEFQQEFXVAEAWLLC', secretkey '0SJIWiIATh6jOlmAKr8DGq6hOAGBI1BnsnvgJmTs'); -- fail |
| ERROR: server "oss_not_exits" does not exist |
| CREATE STORAGE USER MAPPING FOR test_dirtable1 STORAGE SERVER oss_server1; |
| CREATE STORAGE USER MAPPING FOR test_dirtable1 STORAGE SERVER oss_server1 |
| OPTIONS (accesskey 'EQEJIOJFAKQWESQEJIWQ', secretkey '7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H'); -- fail |
| ERROR: storage user mapping for "test_dirtable1" already exists for storage server "oss_server1" |
| CREATE STORAGE USER MAPPING FOR test_dirtable1 STORAGE SERVER oss_server2 |
| OPTIONS (accesskey 'EQEJIOJFAKQWESQEJIWQ', secretkey '7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H'); |
| CREATE STORAGE USER MAPPING FOR test_dirtable1 STORAGE SERVER oss_server3 |
| OPTIONS (accesskey 'EQEJIOJFAKQWESQEJIWQ', secretkey '7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H'); |
| CREATE STORAGE USER MAPPING FOR no_exist_user STORAGE SERVER oss_server1; -- fail |
| ERROR: role "no_exist_user" does not exist |
| CREATE STORAGE USER MAPPING FOR no_exist_user STORAGE SERVER oss_server1 |
| OPTIONS (accesskey 'EQEJIOJFAKQWESQEJIWQ', secretkey '7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H'); -- fail |
| ERROR: role "no_exist_user" does not exist |
| CREATE STORAGE USER MAPPING IF NOT EXISTS FOR CURRENT_USER STORAGE SERVER oss_server1 |
| OPTIONS (accesskey 'KGFQWEFQQEFXVAEAWLLC', secretkey '0SJIWiIATh6jOlmAKr8DGq6hOAGBI1BnsnvgJmTs'); -- skip |
| NOTICE: storage user mapping for "gpadmin" already exists for storage server "oss_server1", skipping |
| CREATE STORAGE USER MAPPING IF NOT EXISTS FOR test_dirtable2 STORAGE SERVER oss_server3 |
| OPTIONS (endpoint '127.0.0.1:6555'); |
| CREATE STORAGE USER MAPPING IF NOT EXISTS FOR test_dirtable3 STORAGE SERVER oss_server8 |
| OPTIONS (auth_method 'simple'); |
| CREATE STORAGE USER MAPPING IF NOT EXISTS FOR no_exist_user STORAGE SERVER oss_server1; -- fail |
| ERROR: role "no_exist_user" does not exist |
| SELECT umoptions FROM gp_storage_user_mapping ORDER BY 1; |
| umoptions |
| ------------------------------------------------------------------------------------- |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H} |
| {auth_method=simple} |
| {endpoint=127.0.0.1:6555} |
| |
| |
| (8 rows) |
| |
| \c dirtable_db |
| SELECT umoptions FROM gp_storage_user_mapping ORDER BY 1; |
| umoptions |
| ------------------------------------------------------------------------------------- |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H} |
| {auth_method=simple} |
| {endpoint=127.0.0.1:6555} |
| |
| |
| (8 rows) |
| |
| \c regression |
| -- Test ALTER STORAGE USER MAPPING |
| ALTER STORAGE USER MAPPING FOR CURRENT_USER STORAGE SERVER oss_server1; -- fail |
| ERROR: syntax error at or near ";" |
| LINE 1: ...GE USER MAPPING FOR CURRENT_USER STORAGE SERVER oss_server1; |
| ^ |
| ALTER STORAGE USER MAPPING FOR CURRENT_USER STORAGE SERVER oss_server1 |
| OPTIONS (accesskey 'KGFQWEFQQEFXVAEAWLLC', secretkey '0SJIWiIATh6jOlmAKr8DGq6hOAGBI1BnsnvgJmTs'); |
| ALTER STORAGE USER MAPPING FOR CURRENT_ROLE STORAGE SERVER oss_server1 |
| OPTIONS (accesskey 'EQEJIOJFAKQWESQEJIWQ'); -- fail |
| ERROR: option "accesskey" provided more than once |
| ALTER STORAGE USER MAPPING FOR CURRENT_USER STORAGE SERVER oss_server1 |
| OPTIONS (auth_method 'simple'); |
| ALTER STORAGE USER MAPPING FOR CURRENT_USER STORAGE SERVER oss_server2 |
| OPTIONS (accesskey 'EQEJIOJFAKQWESQEJIWQ', secretkey '0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE'); -- fail |
| ERROR: option "accesskey" provided more than once |
| ALTER STORAGE USER MAPPING IF EXISTS FOR CURRENT_USER STORAGE SERVER server_not_exists |
| OPTIONS (accesskey 'EQEJIOJFAKQWESQEJIWQ', secretkey '0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE'); -- fail |
| ERROR: syntax error at or near "IF" |
| LINE 1: ALTER STORAGE USER MAPPING IF EXISTS FOR CURRENT_USER STORAG... |
| ^ |
| ALTER STORAGE USER MAPPING IF EXISTS FOR no_exist_user STORAGE SERVER oss_server1 |
| OPTIONS (accesskey 'EQEJIOJFAKQWESQEJIWQ', secretkey '0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE'); -- fail |
| ERROR: syntax error at or near "IF" |
| LINE 1: ALTER STORAGE USER MAPPING IF EXISTS FOR no_exist_user STORA... |
| ^ |
| ALTER STORAGE USER MAPPING IF NOT EXISTS FOR test_dirtable1 STORAGE SERVER oss_server3 |
| OPTIONS (auth_method 'simple'); -- fail |
| ERROR: syntax error at or near "IF" |
| LINE 1: ALTER STORAGE USER MAPPING IF NOT EXISTS FOR test_dirtable1 ... |
| ^ |
| SELECT umoptions FROM gp_storage_user_mapping ORDER BY 1; |
| umoptions |
| -------------------------------------------------------------------------------------------------------- |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H} |
| {accesskey=KGFQWEFQQEFXVAEAWLLC,secretkey=0SJIWiIATh6jOlmAKr8DGq6hOAGBI1BnsnvgJmTs,auth_method=simple} |
| {auth_method=simple} |
| {endpoint=127.0.0.1:6555} |
| |
| (8 rows) |
| |
| \c dirtable_db |
| SELECT umoptions FROM gp_storage_user_mapping ORDER BY 1; |
| umoptions |
| -------------------------------------------------------------------------------------------------------- |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H} |
| {accesskey=KGFQWEFQQEFXVAEAWLLC,secretkey=0SJIWiIATh6jOlmAKr8DGq6hOAGBI1BnsnvgJmTs,auth_method=simple} |
| {auth_method=simple} |
| {endpoint=127.0.0.1:6555} |
| |
| (8 rows) |
| |
| \c regression |
| -- Test DROP STORAGE USER MAPPING |
| DROP STORAGE USER MAPPING FOR CURRENT_USER; -- fail |
| ERROR: syntax error at or near ";" |
| LINE 1: DROP STORAGE USER MAPPING FOR CURRENT_USER; |
| ^ |
| DROP STORAGE USER MAPPING FOR CURRENT_USER STORAGE SERVER oss_server2; |
| DROP STORAGE USER MAPPING IF EXISTS FOR test_dirtable1 STORAGE SERVER oss_server1; |
| DROP STORAGE USER MAPPING IF EXISTS FOR test_dirtable2 STORAGE SERVER no_exist_server; |
| NOTICE: storage server "no_exist_server" does not exist, skipping |
| DROP STORAGE USER MAPPING FOR test_dirtable3 STORAGE SERVER no_exist_server; -- fail |
| ERROR: storage server "no_exist_server" does not exist |
| DROP STORAGE USER MAPPING FOR no_exist_user STORAGE SERVER oss_server1; -- fail |
| ERROR: role "no_exist_user" does not exist |
| DROP STORAGE USER MAPPING IF EXISTS FOR no_exist_user STORAGE SERVER oss_server1; -- skip |
| NOTICE: role "no_exist_user" does not exist, skipping |
| SELECT umoptions FROM gp_storage_user_mapping ORDER BY 1; |
| umoptions |
| -------------------------------------------------------------------------------------------------------- |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H} |
| {accesskey=KGFQWEFQQEFXVAEAWLLC,secretkey=0SJIWiIATh6jOlmAKr8DGq6hOAGBI1BnsnvgJmTs,auth_method=simple} |
| {auth_method=simple} |
| {endpoint=127.0.0.1:6555} |
| (6 rows) |
| |
| \c dirtable_db |
| SELECT umoptions FROM gp_storage_user_mapping ORDER BY 1; |
| umoptions |
| -------------------------------------------------------------------------------------------------------- |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=0ADQiAxcaUJ2lMHipis80hsUEhdiqui82JhduOKE} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H} |
| {accesskey=EQEJIOJFAKQWESQEJIWQ,secretkey=7KieQKdu02jHEUEjsqUYE83mx9OE2kdj2SJ72h6H} |
| {accesskey=KGFQWEFQQEFXVAEAWLLC,secretkey=0SJIWiIATh6jOlmAKr8DGq6hOAGBI1BnsnvgJmTs,auth_method=simple} |
| {auth_method=simple} |
| {endpoint=127.0.0.1:6555} |
| (6 rows) |
| |
| \c regression |
| -- Test DROP STOARGE SERVER |
| DROP STORAGE SERVER oss_server1; -- fail |
| ERROR: storage server "oss_server1" cannot be dropped because some objects depend on it |
| DETAIL: storage server of storage user mapping for gpadmin on storage server oss_server1 |
| DROP STORAGE SERVER oss_server2; -- fail |
| ERROR: storage server "oss_server2" cannot be dropped because some objects depend on it |
| DETAIL: storage server of storage user mapping for test_dirtable1 on storage server oss_server2 |
| DROP STORAGE SERVER oss_server3; -- fail |
| ERROR: storage server "oss_server3" cannot be dropped because some objects depend on it |
| DETAIL: storage server of storage user mapping for gpadmin on storage server oss_server3 |
| storage server of storage user mapping for test_dirtable1 on storage server oss_server3 |
| storage server of storage user mapping for test_dirtable2 on storage server oss_server3 |
| DROP STORAGE SERVER oss_server4; -- fail |
| DROP STORAGE SERVER oss_server8; -- fail |
| ERROR: storage server "oss_server8" cannot be dropped because some objects depend on it |
| DETAIL: storage server of storage user mapping for test_dirtable3 on storage server oss_server8 |
| DROP STORAGE SERVER oss_server9; -- fail |
| ERROR: storage server "oss_server9" not exists |
| DROP STAROGE SERVER IF EXISTS oss_server9; -- fail |
| ERROR: syntax error at or near "STAROGE" |
| LINE 1: DROP STAROGE SERVER IF EXISTS oss_server9; |
| ^ |
| DROP STORAGE SERVER IF NOT EXISTS oss_server9; --fail |
| ERROR: syntax error at or near "NOT" |
| LINE 1: DROP STORAGE SERVER IF NOT EXISTS oss_server9; |
| ^ |
| DROP STORAGE SERVER IF EXISTS oss_server10; |
| SELECT srvname, srvacl, srvoptions from gp_storage_server ORDER BY 1; |
| srvname | srvacl | srvoptions |
| --------------+--------+------------------------------------------------------ |
| oss_server1 | | {protocol=aws} |
| oss_server11 | | {protocol=s3av2} |
| oss_server12 | | {protocol=s3av2,endpoint=127.0.0.1:9000,https=false} |
| oss_server2 | | {protocal=localhost,https=true,virtual_host=true} |
| oss_server3 | | {endpoint=127.0.0.1:9000} |
| oss_server5 | | {virtual_host=false} |
| oss_server6 | | {protocol=qingstor,"endpoint=pek3b,qingstor.com"} |
| oss_server7 | | {https=false,virtual_host=true} |
| oss_server8 | | {protocol=hdfs,namenode=127.0.0.1:8020} |
| (9 rows) |
| |
| \c dirtable_db |
| SELECT srvname, srvacl, srvoptions from gp_storage_server ORDER BY 1; |
| srvname | srvacl | srvoptions |
| --------------+--------+------------------------------------------------------ |
| oss_server1 | | {protocol=aws} |
| oss_server11 | | {protocol=s3av2} |
| oss_server12 | | {protocol=s3av2,endpoint=127.0.0.1:9000,https=false} |
| oss_server2 | | {protocal=localhost,https=true,virtual_host=true} |
| oss_server3 | | {endpoint=127.0.0.1:9000} |
| oss_server5 | | {virtual_host=false} |
| oss_server6 | | {protocol=qingstor,"endpoint=pek3b,qingstor.com"} |
| oss_server7 | | {https=false,virtual_host=true} |
| oss_server8 | | {protocol=hdfs,namenode=127.0.0.1:8020} |
| (9 rows) |
| |
| \c regression |
| -- Test directory table |
| -- Test CREATE DIRECTORY TABLE |
| SELECT count(*) FROM pg_directory_table; |
| count |
| ------- |
| 0 |
| (1 row) |
| |
| SELECT relname, relisshared, relpersistence, relkind FROM pg_class WHERE relname like '%dir_table%' ORDER BY 1; |
| relname | relisshared | relpersistence | relkind |
| ---------+-------------+----------------+--------- |
| (0 rows) |
| |
| CREATE DIRECTORY TABLE dir_table1; |
| CREATE DIRECTORY TABLE dir_table2 TABLESPACE directory_tblspc; |
| CREATE DIRECTORY TABLE dir_table3 TABLESPACE directory_tblspc DISTRIBUTED BY(relative_path); -- fail |
| ERROR: syntax error at or near "DISTRIBUTED" |
| LINE 1: ...TORY TABLE dir_table3 TABLESPACE directory_tblspc DISTRIBUTE... |
| ^ |
| CREATE DIRECTORY TABLE dir_table3 TABLESPACE directory_tblspc DISTRIBUTED RANDOMLY; -- fail |
| ERROR: syntax error at or near "DISTRIBUTED" |
| LINE 1: ...TORY TABLE dir_table3 TABLESPACE directory_tblspc DISTRIBUTE... |
| ^ |
| CREATE DIRECTORY TABLE dir_table3 TABLESPACE directory_tblspc DISTRIBUTED REPLICATED; -- fail |
| ERROR: syntax error at or near "DISTRIBUTED" |
| LINE 1: ...TORY TABLE dir_table3 TABLESPACE directory_tblspc DISTRIBUTE... |
| ^ |
| CREATE DIRECTORY TABLE dir_table3 TABLESPACE directory_tblspc; |
| CREATE DIRECTORY TABLE IF NOT EXISTS dir_table4 TABLESPACE directory_tblspc; |
| CREATE DIRECTORY TABLE IF NOT EXISTS dir_table2 TABLESPACE directory_tblspc; -- fail |
| NOTICE: relation "dir_table2" already exists, skipping |
| CREATE DIRECTORY TABLE dir_table5 TABLESPACE directory_tblspc; |
| CREATE DIRECTORY TABLE dir_table6 TABLESPACE pg_default; |
| CREATE DIRECTORY TABLE "abs.dir_table"; |
| SELECT count(*) FROM pg_directory_table; |
| count |
| ------- |
| 7 |
| (1 row) |
| |
| SELECT relname, relisshared, relpersistence, relkind FROM pg_class WHERE relname like '%dir_table%' ORDER BY 1; |
| relname | relisshared | relpersistence | relkind |
| --------------------+-------------+----------------+--------- |
| abs.dir_table | f | p | d |
| abs.dir_table_pkey | f | p | i |
| dir_table1 | f | p | d |
| dir_table1_pkey | f | p | i |
| dir_table2 | f | p | d |
| dir_table2_pkey | f | p | i |
| dir_table3 | f | p | d |
| dir_table3_pkey | f | p | i |
| dir_table4 | f | p | d |
| dir_table4_pkey | f | p | i |
| dir_table5 | f | p | d |
| dir_table5_pkey | f | p | i |
| dir_table6 | f | p | d |
| dir_table6_pkey | f | p | i |
| (14 rows) |
| |
| \d+ dir_table1; |
| Directory table "public.dir_table1" |
| Column | Type | Collation | Nullable | Default | Storage | Stats target | Description |
| ---------------+--------------------------+-----------+----------+---------+----------+--------------+------------- |
| relative_path | text | | | | extended | | |
| size | bigint | | | | plain | | |
| last_modified | timestamp with time zone | | | | plain | | |
| md5 | text | | | | extended | | |
| tag | text | | | | extended | | |
| Indexes: |
| "dir_table1_pkey" PRIMARY KEY, btree (relative_path) |
| Distributed by: (relative_path) |
| |
| \d+ dir_table2; |
| Directory table "public.dir_table2" |
| Column | Type | Collation | Nullable | Default | Storage | Stats target | Description |
| ---------------+--------------------------+-----------+----------+---------+----------+--------------+------------- |
| relative_path | text | | | | extended | | |
| size | bigint | | | | plain | | |
| last_modified | timestamp with time zone | | | | plain | | |
| md5 | text | | | | extended | | |
| tag | text | | | | extended | | |
| Indexes: |
| "dir_table2_pkey" PRIMARY KEY, btree (relative_path) |
| Distributed by: (relative_path) |
| |
| \d+ dir_table3; |
| Directory table "public.dir_table3" |
| Column | Type | Collation | Nullable | Default | Storage | Stats target | Description |
| ---------------+--------------------------+-----------+----------+---------+----------+--------------+------------- |
| relative_path | text | | | | extended | | |
| size | bigint | | | | plain | | |
| last_modified | timestamp with time zone | | | | plain | | |
| md5 | text | | | | extended | | |
| tag | text | | | | extended | | |
| Indexes: |
| "dir_table3_pkey" PRIMARY KEY, btree (relative_path) |
| Distributed by: (relative_path) |
| |
| \c dirtable_db |
| SELECT count(*) FROM pg_directory_table; |
| count |
| ------- |
| 0 |
| (1 row) |
| |
| SELECT relname, relisshared, relpersistence, relkind FROM pg_class WHERE relname like '%dir_table%' ORDER BY 1; |
| relname | relisshared | relpersistence | relkind |
| ---------+-------------+----------------+--------- |
| (0 rows) |
| |
| \c regression |
| -- Test create table inherits directory table |
| CREATE TABLE test_inherits1 INHERITS(dir_table1); -- fail |
| ERROR: syntax error at or near "INHERITS" |
| LINE 1: CREATE TABLE test_inherits1 INHERITS(dir_table1); |
| ^ |
| CREATE TABLE test_inherits2(a int) INHERITS(dir_table2); -- fail |
| NOTICE: table has parent, setting distribution columns to match parent table |
| ERROR: inherited relation "dir_table2" is not a table or foreign table |
| CREATE TABLE test_inherits3 INHERITS(dir_table2, dir_table3); -- fail |
| ERROR: syntax error at or near "INHERITS" |
| LINE 1: CREATE TABLE test_inherits3 INHERITS(dir_table2, dir_table3)... |
| ^ |
| CREATE TABLE test_inherits4(b text) INHERITS(dir_table1, dir_table2); -- fail |
| NOTICE: table has parent, setting distribution columns to match parent table |
| ERROR: inherited relation "dir_table1" is not a table or foreign table |
| -- Test DROP DIRECTORY TABLE |
| DROP DIRECTORY TABLE dir_table4; |
| DROP DIRECTORY TABLE dir_table4; |
| NOTICE: directory table "dir_table4" does not exist, skipping |
| DROP DIRECTORY TABLE IF EXISTS dir_table5; |
| DROP DIRECTORY TABLE IF EXISTS dir_table5; -- skip |
| NOTICE: directory table "dir_table5" does not exist, skipping |
| SELECT count(*) FROM pg_directory_table; |
| count |
| ------- |
| 5 |
| (1 row) |
| |
| SELECT relname, relisshared, relpersistence, relkind FROM pg_class WHERE relname like '%dir_table%' ORDER BY 1; |
| relname | relisshared | relpersistence | relkind |
| --------------------+-------------+----------------+--------- |
| abs.dir_table | f | p | d |
| abs.dir_table_pkey | f | p | i |
| dir_table1 | f | p | d |
| dir_table1_pkey | f | p | i |
| dir_table2 | f | p | d |
| dir_table2_pkey | f | p | i |
| dir_table3 | f | p | d |
| dir_table3_pkey | f | p | i |
| dir_table6 | f | p | d |
| dir_table6_pkey | f | p | i |
| (10 rows) |
| |
| \c dirtable_db |
| SELECT count(*) FROM pg_directory_table; |
| count |
| ------- |
| 0 |
| (1 row) |
| |
| SELECT relname, relisshared, relpersistence, relkind FROM pg_class WHERE relname like '%dir_table%' ORDER BY 1; |
| relname | relisshared | relpersistence | relkind |
| ---------+-------------+----------------+--------- |
| (0 rows) |
| |
| \c regression |
| --Test Lock directory table |
| BEGIN; |
| LOCK TABLE dir_table1 IN ACCESS SHARE MODE; |
| LOCK TABLE dir_table1 IN ACCESS EXCLUSIVE MODE; |
| COMMIT; |
| BEGIN; |
| LOCK TABLE dir_table1 IN ACCESS SHARE MODE; |
| LOCK TABLE dir_table1 IN ACCESS EXCLUSIVE MODE; |
| ROLLBACK; |
| -- Test CREATE/DROP/REINDEX on DIRECTORY SCHEMA TABLE |
| -- Test CREATE INDEX on DIRECTORY SCHEMA TABLE |
| CREATE INDEX dirtable1_relative_path_idx on dir_table1(relative_path); |
| CREATE INDEX dirtable1_size_idx on dir_table1(size); |
| CREATE INDEX dirtable1_last_modified_idx on dir_table1(last_modified); |
| CREATE INDEX dirtable1_md5_idx on dir_table1(md5); |
| CREATE INDEX dirtable1_tag_idx on dir_table1(tag); |
| \d+ dir_table1; |
| Directory table "public.dir_table1" |
| Column | Type | Collation | Nullable | Default | Storage | Stats target | Description |
| ---------------+--------------------------+-----------+----------+---------+----------+--------------+------------- |
| relative_path | text | | | | extended | | |
| size | bigint | | | | plain | | |
| last_modified | timestamp with time zone | | | | plain | | |
| md5 | text | | | | extended | | |
| tag | text | | | | extended | | |
| Indexes: |
| "dir_table1_pkey" PRIMARY KEY, btree (relative_path) |
| "dirtable1_last_modified_idx" btree (last_modified) |
| "dirtable1_md5_idx" btree (md5) |
| "dirtable1_relative_path_idx" btree (relative_path) |
| "dirtable1_size_idx" btree (size) |
| "dirtable1_tag_idx" btree (tag) |
| Distributed by: (relative_path) |
| |
| -- Test DROP INDEX on DIRECTORY SCHEMA TABLE |
| DROP INDEX dir_table1_pkey; -- fail |
| ERROR: Disallowed to drop primary index "dir_table1_pkey" on directory table "dir_table1" |
| DROP INDEX dir_table2_pkey; -- fail |
| ERROR: Disallowed to drop primary index "dir_table2_pkey" on directory table "dir_table2" |
| DROP INDEX dir_table3_pkey; -- fail |
| ERROR: Disallowed to drop primary index "dir_table3_pkey" on directory table "dir_table3" |
| DROP INDEX dir_table4_pkey; -- fail |
| ERROR: index "dir_table4_pkey" does not exist |
| DROP INDEX dir_table5_pkey; -- fail |
| ERROR: index "dir_table5_pkey" does not exist |
| DROP INDEX dir_table6_pkey; -- fail |
| ERROR: Disallowed to drop primary index "dir_table6_pkey" on directory table "dir_table6" |
| DROP INDEX dirtable1_relative_path_idx; -- OK |
| DROP INDEX dirtable1_size_idx; -- OK |
| DROP INDEX dirtable1_last_modified_idx; -- OK |
| DROP INDEX dirtable1_md5_idx; -- OK |
| DROP INDEX dirtable1_tag_idx; -- OK |
| \d+ dir_table1; |
| Directory table "public.dir_table1" |
| Column | Type | Collation | Nullable | Default | Storage | Stats target | Description |
| ---------------+--------------------------+-----------+----------+---------+----------+--------------+------------- |
| relative_path | text | | | | extended | | |
| size | bigint | | | | plain | | |
| last_modified | timestamp with time zone | | | | plain | | |
| md5 | text | | | | extended | | |
| tag | text | | | | extended | | |
| Indexes: |
| "dir_table1_pkey" PRIMARY KEY, btree (relative_path) |
| Distributed by: (relative_path) |
| |
| -- Test REINDEX on DIRECTORY SCHEMA TABLE |
| REINDEX INDEX dir_table1_pkey; |
| REINDEX INDEX dir_table2_pkey; |
| REINDEX INDEX dir_table3_pkey; |
| REINDEX INDEX dir_table4_pkey; |
| ERROR: relation "dir_table4_pkey" does not exist |
| REINDEX INDEX dir_table5_pkey; |
| ERROR: relation "dir_table5_pkey" does not exist |
| REINDEX INDEX dir_table6_pkey; |
| REINDEX TABLE dir_table1; |
| REINDEX TABLE dir_table2; |
| REINDEX TABLE dir_table3; |
| REINDEX TABLE dir_table4; |
| ERROR: relation "dir_table4" does not exist |
| REINDEX TABLE dir_table5; |
| ERROR: relation "dir_table5" does not exist |
| REINDEX TABLE dir_table6; |
| -- Test triggers |
| create function triggertest() returns trigger as $$ |
| begin |
| raise notice '% % % %', TG_TABLE_NAME, TG_OP, TG_WHEN, TG_LEVEL; |
| return new; |
| end;$$ language plpgsql; |
| create trigger trigtest_b_row_tg_dirtable_1 before insert or update or delete on dir_table1 |
| for each row execute procedure triggertest(); |
| create trigger trigtest_a_row_tg_dirtable_1 after insert or update or delete on dir_table1 |
| for each row execute procedure triggertest(); |
| create trigger trigtest_b_stmt_tg_dirtable_1 before insert or update or delete on dir_table1 |
| for each statement execute procedure triggertest(); |
| ERROR: Triggers for statements are not yet supported |
| create trigger trigtest_a_stmt_tg_dirtable_1 after insert or update or delete on dir_table1 |
| for each statement execute procedure triggertest(); |
| ERROR: Triggers for statements are not yet supported |
| -- Test COPY DIRECTORY TABLE syntax |
| SELECT relative_path, size, tag FROM dir_table1 ORDER BY 1; |
| relative_path | size | tag |
| ---------------+------+----- |
| (0 rows) |
| |
| SELECT relative_path, size, tag FROM dir_table2 ORDER BY 1; |
| relative_path | size | tag |
| ---------------+------+----- |
| (0 rows) |
| |
| \COPY dir_table1 FROM '@abs_srcdir@/data/nation.csv'; -- fail |
| ERROR: Copy from directory table file name can't be null. |
| \COPY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation'; -- fail |
| ERROR: Only support copy binary from directory table. |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv'; -- fail |
| ERROR: Copy from directory table file name can't be null. |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation1'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg1 127.0.1.1:7003 pid=31193) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation1'; -- fail |
| ERROR: duplicate key value violates unique constraint "dir_table1_pkey" |
| DETAIL: Key (relative_path)=(nation1) already exists. |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation2' 'nation2'; -- fail |
| ERROR: syntax error at or near "'nation2'" |
| LINE 1: COPY BINARY dir_table1 FROM STDIN 'nation2' 'nation2'; -- fa... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation2'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg2 127.0.1.1:7004 pid=31192) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation3' WITH TAG 'nation'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg1 127.0.1.1:7003 pid=31193) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation3' WITH TAG 'nation'; -- fail |
| ERROR: duplicate key value violates unique constraint "dir_table1_pkey" |
| DETAIL: Key (relative_path)=(nation3) already exists. |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation3' WITH TAG 'nation2'; -- fail |
| ERROR: duplicate key value violates unique constraint "dir_table1_pkey" |
| DETAIL: Key (relative_path)=(nation3) already exists. |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation4' WITH TAG 'nation'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg2 127.0.1.1:7004 pid=31192) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation5' WITH TAG 'nation' WITH TAG 'nation2'; -- fail |
| ERROR: syntax error at or near "WITH" |
| LINE 1: ...dir_table1 FROM STDIN 'nation5' WITH TAG 'nation' WITH TAG '... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation6'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg0 127.0.1.1:7002 pid=2727) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation7'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation8'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation9'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation10'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg2 127.0.1.1:7004 pid=2729) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation11'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg0 127.0.1.1:7002 pid=2727) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation12'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation13'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation14'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg2 127.0.1.1:7004 pid=2729) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation15'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg0 127.0.1.1:7002 pid=2727) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation16'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation17'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation18'; |
| NOTICE: dir_table1 INSERT AFTER ROW (seg0 127.0.1.1:7002 pid=2727) |
| SELECT relative_path, size, tag FROM dir_table1 ORDER BY 1; |
| relative_path | size | tag |
| ---------------+------+-------- |
| nation1 | 2199 | |
| nation10 | 2199 | |
| nation11 | 2199 | |
| nation12 | 2199 | |
| nation13 | 2199 | |
| nation14 | 2199 | |
| nation15 | 2199 | |
| nation16 | 2199 | |
| nation17 | 2199 | |
| nation18 | 2199 | |
| nation2 | 2199 | |
| nation3 | 2199 | nation |
| nation4 | 2199 | nation |
| nation6 | 2199 | |
| nation7 | 2199 | |
| nation8 | 2199 | |
| nation9 | 2199 | |
| (17 rows) |
| |
| SELECT relative_path, content FROM directory_table('dir_table1') ORDER BY 1; |
| relative_path | content |
| ---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| nation1 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation10 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation11 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation12 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation13 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation14 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation15 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation16 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation17 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation18 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation2 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation3 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation4 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation6 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation7 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation8 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation9 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| (17 rows) |
| |
| COPY dir_table2 FROM PROGRAM 'cat @abs_srcdir@/data/nation.csv'; -- fail |
| ERROR: Copy from directory table file name can't be null. |
| COPY dir_table2 FROM PROGRAM 'cat @abs_srcdir@/data/nation.csv' 'nation'; -- fail |
| ERROR: Only support copy binary from directory table. |
| COPY BINARY dir_table2 FROM PROGRAM 'cat @abs_srcdir@/data/nation.csv' 'nation1'; |
| COPY BINARY dir_table2 FROM PROGRAM 'cat @abs_srcdir@/data/nation.csv' 'nation1'; -- fail |
| ERROR: duplicate key value violates unique constraint "dir_table2_pkey" |
| DETAIL: Key (relative_path)=(nation1) already exists. |
| COPY BINARY dir_table2 FROM PROGRAM 'cat @abs_srcdir@/data/nation.csv' 'nation2'; |
| COPY BINARY dir_table2 FROM PROGRAM 'cat @abs_srcdir@/data/nation.csv' 'nation3' WITH TAG 'nation'; |
| COPY BINARY dir_table2 FROM PROGRAM 'cat @abs_srcdir@/data/nation.csv' 'nation3' WITH TAG 'nation'; -- fail |
| ERROR: duplicate key value violates unique constraint "dir_table2_pkey" |
| DETAIL: Key (relative_path)=(nation3) already exists. |
| COPY BINARY dir_table2 FROM PROGRAM 'cat @abs_srcdir@/data/nation.csv' 'nation3' WITH TAG 'nation2'; -- fail |
| ERROR: duplicate key value violates unique constraint "dir_table2_pkey" |
| DETAIL: Key (relative_path)=(nation3) already exists. |
| COPY BINARY dir_table2 FROM PROGRAM 'cat @abs_srcdir@/data/nation.csv' 'nation4' WITH TAG 'nation'; |
| COPY BINARY dir_table2 FROM PROGRAM 'cat @abs_srcdir@/data/nation.csv' 'nation5' WITH TAG 'nation' WITH TAG 'nation2'; -- fail |
| ERROR: syntax error at or near "WITH" |
| LINE 1: ...ress/data/nation.csv' 'nation5' WITH TAG 'nation' WITH TAG '... |
| ^ |
| SELECT relative_path, size, tag FROM dir_table2 ORDER BY 1; |
| relative_path | size | tag |
| ---------------+------+-------- |
| nation1 | 2199 | |
| nation2 | 2199 | |
| nation3 | 2199 | nation |
| nation4 | 2199 | nation |
| (4 rows) |
| |
| SELECT relative_path, content FROM directory_table('dir_table2') ORDER BY 1; |
| relative_path | content |
| ---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| nation1 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation2 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation3 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation4 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| (4 rows) |
| |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation.txt'; -- OK |
| NOTICE: dir_table1 INSERT AFTER ROW |
| COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation2.txt'; -- OK |
| NOTICE: dir_table1 INSERT AFTER ROW |
| \COPY BINARY "abs.dir_table" FROM '@abs_srcdir@/data/nation.csv' 'aa.bb'; -- OK |
| COPY BINARY "abs.dir_table" FROM '@abs_srcdir@/data/nation.csv' 'cc.dd'; -- OK |
| -- Test copy binary from directory table |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (format CSV); |
| ERROR: conflicting or redundant options |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (format CSV... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (freeze off); |
| ERROR: option "freeze" not recognized |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (freeze off... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (freeze on); |
| ERROR: option "freeze" not recognized |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (freeze on)... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (delimiter ','); |
| ERROR: option "delimiter" not recognized |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (delimiter ... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (null ' '); |
| ERROR: option "null" not recognized |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (null ' '); |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (header off); |
| ERROR: option "header" not recognized |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (header off... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (header on); |
| ERROR: option "header" not recognized |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (header on)... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (quote ':'); |
| ERROR: option "quote" not recognized |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (quote ':')... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (escape ':'); |
| ERROR: option "escape" not recognized |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (escape ':'... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (force_quote (a)); |
| ERROR: option "force_quote" not recognized |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (force_quot... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (force_quote *); |
| ERROR: option "force_quote" not recognized |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (force_quot... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (force_not_null (a)); |
| ERROR: option "force_not_null" not recognized |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (force_not_... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (force_null (a)); |
| ERROR: option "force_null" not recognized |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (force_null... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (convert_selectively (a)); |
| ERROR: option "convert_selectively" not recognized |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (convert_se... |
| ^ |
| \COPY BINARY dir_table1 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (encoding 'sql_ascii'); |
| ERROR: option "encoding" not recognized |
| LINE 1: ...OPY BINARY dir_table1 FROM STDIN 'nation_failed' (encoding '... |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (format CSV); |
| ERROR: conflicting or redundant options |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (format CSV... |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (freeze off); |
| ERROR: option "freeze" not recognized |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (freeze off... |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (freeze on); |
| ERROR: option "freeze" not recognized |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (freeze on)... |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (delimiter ','); |
| ERROR: option "delimiter" not recognized |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (delimiter ... |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (null ' '); |
| ERROR: option "null" not recognized |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (null ' '); |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (header off); |
| ERROR: option "header" not recognized |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (header off... |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (header on); |
| ERROR: option "header" not recognized |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (header on)... |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (quote ':'); |
| ERROR: option "quote" not recognized |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (quote ':')... |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (escape ':'); |
| ERROR: option "escape" not recognized |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (escape ':'... |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (force_quote (a)); |
| ERROR: option "force_quote" not recognized |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (force_quot... |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (force_quote *); |
| ERROR: option "force_quote" not recognized |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (force_quot... |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (force_not_null (a)); |
| ERROR: option "force_not_null" not recognized |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (force_not_... |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (force_null (a)); |
| ERROR: option "force_null" not recognized |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (force_null... |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (convert_selectively (a)); |
| ERROR: option "convert_selectively" not recognized |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (convert_se... |
| ^ |
| COPY BINARY dir_table2 FROM '@abs_srcdir@/data/nation.csv' 'nation_failed' (encoding 'sql_ascii'); |
| ERROR: option "encoding" not recognized |
| LINE 1: ...rc/test/regress/data/nation.csv' 'nation_failed' (encoding '... |
| ^ |
| -- Test copy file content md5 |
| CREATE OR REPLACE FUNCTION file_content(text, text) RETURNS BYTEA LANGUAGE SQL AS |
| 'select content from directory_table($1) where relative_path = $2'; |
| CREATE OR REPLACE FUNCTION file_md5(text, text) RETURNS TEXT LANGUAGE SQL AS |
| 'select md5 from directory_table($1) where relative_path = $2'; |
| CREATE OR REPLACE FUNCTION md5_equal(text, text) RETURNS BOOL LANGUAGE SQL AS |
| 'SELECT md5(file_content($1, $2)) = (SELECT file_md5($1, $2))'; |
| SELECT md5_equal('dir_table1', 'nation1'); |
| md5_equal |
| ----------- |
| t |
| (1 row) |
| |
| SELECT md5_equal('dir_table1', 'nation2'); |
| md5_equal |
| ----------- |
| t |
| (1 row) |
| |
| SELECT md5_equal('dir_table1', 'nation3'); |
| md5_equal |
| ----------- |
| t |
| (1 row) |
| |
| SELECT md5_equal('dir_table1', 'nation4'); |
| md5_equal |
| ----------- |
| t |
| (1 row) |
| |
| SELECT md5_equal('dir_table2', 'nation1'); |
| md5_equal |
| ----------- |
| t |
| (1 row) |
| |
| SELECT md5_equal('dir_table2', 'nation2'); |
| md5_equal |
| ----------- |
| t |
| (1 row) |
| |
| SELECT md5_equal('dir_table2', 'nation3'); |
| md5_equal |
| ----------- |
| t |
| (1 row) |
| |
| SELECT md5_equal('dir_table2', 'nation4'); |
| md5_equal |
| ----------- |
| t |
| (1 row) |
| |
| -- Test Copy To directory table |
| \COPY dir_table1 TO '@abs_srcdir@/data/dir_table1'; -- fail |
| ERROR: COPY to directory table must specify the relative_path name. |
| \COPY BINARY dir_table1 TO '@abs_srcdir@/data/dir_table1'; -- fail |
| ERROR: COPY to directory table must specify the relative_path name. |
| COPY dir_table1 TO '@abs_srcdir@/data/dir_table1'; -- fail |
| ERROR: COPY to directory table must specify the relative_path name. |
| COPY BINARY dir_table1 TO '@abs_srcdir@/data/dir_table1'; -- fail |
| ERROR: COPY to directory table must specify the relative_path name. |
| \COPY dir_table2 TO '@abs_srcdir@/data/dir_table2'; -- fail |
| ERROR: COPY to directory table must specify the relative_path name. |
| \COPY BINARY dir_table2 TO '@abs_srcdir@/data/dir_table2'; -- fail |
| ERROR: COPY to directory table must specify the relative_path name. |
| COPY dir_table2 TO '@abs_srcdir@/data/dir_table2'; -- fail |
| ERROR: COPY to directory table must specify the relative_path name. |
| COPY BINARY dir_table2 TO '@abs_srcdir@/data/dir_table2'; -- fail |
| ERROR: COPY to directory table must specify the relative_path name. |
| \COPY BINARY dir_table1 TO '@abs_srcdir@/data/dir_table1'; -- fail |
| ERROR: COPY to directory table must specify the relative_path name. |
| COPY BINARY dir_table1 TO '@abs_srcdir@/data/dir_table1'; -- fail |
| ERROR: COPY to directory table must specify the relative_path name. |
| \COPY BINARY DIRECTORY TABLE dir_table1 'nation1' TO '@abs_srcdir@/data/nation1'; -- OK |
| COPY BINARY DIRECTORY TABLE dir_table1 'nation1' TO '@abs_srcdir@/data/nation1'; -- OK |
| \COPY BINARY DIRECTORY TABLE dir_table1 'unknown' TO '@abs_srcdir@/data/unknown'; -- OK |
| COPY BINARY DIRECTORY TABLE dir_table1 'unknown' TO '@abs_srcdir@/data/unknown'; -- OK |
| \COPY BINARY DIRECTORY TABLE dir_table1 'nation2' TO stdin; -- OK |
| 0|ALGERIA|0| haggle. carefully final deposits detect slyly agai |
| 1|ARGENTINA|1|al foxes promise slyly according to the regular accounts. bold requests alon |
| 2|BRAZIL|1|y alongside of the pending deposits. carefully special packages are about the ironic forges. slyly special |
| 3|CANADA|1|eas hang ironic, silent packages. slyly regular packages are furiously over the tithes. fluffily bold |
| 4|EGYPT|4|y above the carefully unusual theodolites. final dugouts are quickly across the furiously regular d |
| 5|ETHIOPIA|0|ven packages wake quickly. regu |
| 6|FRANCE|3|refully final requests. regular, ironi |
| 7|GERMANY|3|l platelets. regular accounts x-ray: unusual, regular acco |
| 8|INDIA|2|ss excuses cajole slyly across the packages. deposits print aroun |
| 9|INDONESIA|2| slyly express asymptotes. regular deposits haggle slyly. carefully ironic hockey players sleep blithely. carefull |
| 10|IRAN|4|efully alongside of the slyly final dependencies. |
| 11|IRAQ|4|nic deposits boost atop the quickly final requests? quickly regula |
| 12|JAPAN|2|ously. final, express gifts cajole a |
| 13|JORDAN|4|ic deposits are blithely about the carefully regular pa |
| 14|KENYA|0| pending excuses haggle furiously deposits. pending, express pinto beans wake fluffily past t |
| 15|MOROCCO|0|rns. blithely bold courts among the closely regular packages use furiously bold platelets? |
| 16|MOZAMBIQUE|0|s. ironic, unusual asymptotes wake blithely r |
| 17|PERU|1|platelets. blithely pending dependencies use fluffily across the even pinto beans. carefully silent accoun |
| 18|CHINA|2|c dependencies. furiously express notornis sleep slyly regular accounts. ideas sleep. depos |
| 19|ROMANIA|3|ular asymptotes are about the furious multipliers. express dependencies nag above the ironically ironic account |
| 20|SAUDI ARABIA|4|ts. silent requests haggle. closely express packages sleep across the blithely |
| 21|VIETNAM|2|hely enticingly express accounts. even, final |
| 22|RUSSIA|3| requests against the platelets use never according to the quickly regular pint |
| 23|UNITED KINGDOM|3|eans boost carefully special requests. accounts are. carefull |
| 24|UNITED STATES|1|y final packages. slow foxes cajole quickly. quickly silent platelets breach ironic accounts. unusual pinto be |
| COPY BINARY DIRECTORY TABLE dir_table1 'nation2' TO stdin; -- OK |
| 0|ALGERIA|0| haggle. carefully final deposits detect slyly agai |
| 1|ARGENTINA|1|al foxes promise slyly according to the regular accounts. bold requests alon |
| 2|BRAZIL|1|y alongside of the pending deposits. carefully special packages are about the ironic forges. slyly special |
| 3|CANADA|1|eas hang ironic, silent packages. slyly regular packages are furiously over the tithes. fluffily bold |
| 4|EGYPT|4|y above the carefully unusual theodolites. final dugouts are quickly across the furiously regular d |
| 5|ETHIOPIA|0|ven packages wake quickly. regu |
| 6|FRANCE|3|refully final requests. regular, ironi |
| 7|GERMANY|3|l platelets. regular accounts x-ray: unusual, regular acco |
| 8|INDIA|2|ss excuses cajole slyly across the packages. deposits print aroun |
| 9|INDONESIA|2| slyly express asymptotes. regular deposits haggle slyly. carefully ironic hockey players sleep blithely. carefull |
| 10|IRAN|4|efully alongside of the slyly final dependencies. |
| 11|IRAQ|4|nic deposits boost atop the quickly final requests? quickly regula |
| 12|JAPAN|2|ously. final, express gifts cajole a |
| 13|JORDAN|4|ic deposits are blithely about the carefully regular pa |
| 14|KENYA|0| pending excuses haggle furiously deposits. pending, express pinto beans wake fluffily past t |
| 15|MOROCCO|0|rns. blithely bold courts among the closely regular packages use furiously bold platelets? |
| 16|MOZAMBIQUE|0|s. ironic, unusual asymptotes wake blithely r |
| 17|PERU|1|platelets. blithely pending dependencies use fluffily across the even pinto beans. carefully silent accoun |
| 18|CHINA|2|c dependencies. furiously express notornis sleep slyly regular accounts. ideas sleep. depos |
| 19|ROMANIA|3|ular asymptotes are about the furious multipliers. express dependencies nag above the ironically ironic account |
| 20|SAUDI ARABIA|4|ts. silent requests haggle. closely express packages sleep across the blithely |
| 21|VIETNAM|2|hely enticingly express accounts. even, final |
| 22|RUSSIA|3| requests against the platelets use never according to the quickly regular pint |
| 23|UNITED KINGDOM|3|eans boost carefully special requests. accounts are. carefull |
| 24|UNITED STATES|1|y final packages. slow foxes cajole quickly. quickly silent platelets breach ironic accounts. unusual pinto be |
| \COPY BINARY DIRECTORY TABLE dir_table1 'nation2' TO stdout; -- OK |
| 0|ALGERIA|0| haggle. carefully final deposits detect slyly agai |
| 1|ARGENTINA|1|al foxes promise slyly according to the regular accounts. bold requests alon |
| 2|BRAZIL|1|y alongside of the pending deposits. carefully special packages are about the ironic forges. slyly special |
| 3|CANADA|1|eas hang ironic, silent packages. slyly regular packages are furiously over the tithes. fluffily bold |
| 4|EGYPT|4|y above the carefully unusual theodolites. final dugouts are quickly across the furiously regular d |
| 5|ETHIOPIA|0|ven packages wake quickly. regu |
| 6|FRANCE|3|refully final requests. regular, ironi |
| 7|GERMANY|3|l platelets. regular accounts x-ray: unusual, regular acco |
| 8|INDIA|2|ss excuses cajole slyly across the packages. deposits print aroun |
| 9|INDONESIA|2| slyly express asymptotes. regular deposits haggle slyly. carefully ironic hockey players sleep blithely. carefull |
| 10|IRAN|4|efully alongside of the slyly final dependencies. |
| 11|IRAQ|4|nic deposits boost atop the quickly final requests? quickly regula |
| 12|JAPAN|2|ously. final, express gifts cajole a |
| 13|JORDAN|4|ic deposits are blithely about the carefully regular pa |
| 14|KENYA|0| pending excuses haggle furiously deposits. pending, express pinto beans wake fluffily past t |
| 15|MOROCCO|0|rns. blithely bold courts among the closely regular packages use furiously bold platelets? |
| 16|MOZAMBIQUE|0|s. ironic, unusual asymptotes wake blithely r |
| 17|PERU|1|platelets. blithely pending dependencies use fluffily across the even pinto beans. carefully silent accoun |
| 18|CHINA|2|c dependencies. furiously express notornis sleep slyly regular accounts. ideas sleep. depos |
| 19|ROMANIA|3|ular asymptotes are about the furious multipliers. express dependencies nag above the ironically ironic account |
| 20|SAUDI ARABIA|4|ts. silent requests haggle. closely express packages sleep across the blithely |
| 21|VIETNAM|2|hely enticingly express accounts. even, final |
| 22|RUSSIA|3| requests against the platelets use never according to the quickly regular pint |
| 23|UNITED KINGDOM|3|eans boost carefully special requests. accounts are. carefull |
| 24|UNITED STATES|1|y final packages. slow foxes cajole quickly. quickly silent platelets breach ironic accounts. unusual pinto be |
| COPY BINARY DIRECTORY TABLE dir_table1 'nation2' TO stdout; -- OK |
| 0|ALGERIA|0| haggle. carefully final deposits detect slyly agai |
| 1|ARGENTINA|1|al foxes promise slyly according to the regular accounts. bold requests alon |
| 2|BRAZIL|1|y alongside of the pending deposits. carefully special packages are about the ironic forges. slyly special |
| 3|CANADA|1|eas hang ironic, silent packages. slyly regular packages are furiously over the tithes. fluffily bold |
| 4|EGYPT|4|y above the carefully unusual theodolites. final dugouts are quickly across the furiously regular d |
| 5|ETHIOPIA|0|ven packages wake quickly. regu |
| 6|FRANCE|3|refully final requests. regular, ironi |
| 7|GERMANY|3|l platelets. regular accounts x-ray: unusual, regular acco |
| 8|INDIA|2|ss excuses cajole slyly across the packages. deposits print aroun |
| 9|INDONESIA|2| slyly express asymptotes. regular deposits haggle slyly. carefully ironic hockey players sleep blithely. carefull |
| 10|IRAN|4|efully alongside of the slyly final dependencies. |
| 11|IRAQ|4|nic deposits boost atop the quickly final requests? quickly regula |
| 12|JAPAN|2|ously. final, express gifts cajole a |
| 13|JORDAN|4|ic deposits are blithely about the carefully regular pa |
| 14|KENYA|0| pending excuses haggle furiously deposits. pending, express pinto beans wake fluffily past t |
| 15|MOROCCO|0|rns. blithely bold courts among the closely regular packages use furiously bold platelets? |
| 16|MOZAMBIQUE|0|s. ironic, unusual asymptotes wake blithely r |
| 17|PERU|1|platelets. blithely pending dependencies use fluffily across the even pinto beans. carefully silent accoun |
| 18|CHINA|2|c dependencies. furiously express notornis sleep slyly regular accounts. ideas sleep. depos |
| 19|ROMANIA|3|ular asymptotes are about the furious multipliers. express dependencies nag above the ironically ironic account |
| 20|SAUDI ARABIA|4|ts. silent requests haggle. closely express packages sleep across the blithely |
| 21|VIETNAM|2|hely enticingly express accounts. even, final |
| 22|RUSSIA|3| requests against the platelets use never according to the quickly regular pint |
| 23|UNITED KINGDOM|3|eans boost carefully special requests. accounts are. carefull |
| 24|UNITED STATES|1|y final packages. slow foxes cajole quickly. quickly silent platelets breach ironic accounts. unusual pinto be |
| \COPY BINARY DIRECTORY TABLE dir_table1 'nation2' TO PROGRAM 'gzip -c -1 > @abs_srcdir@/data/nation2.gz'; -- OK |
| COPY BINARY DIRECTORY TABLE dir_table1 'nation2' TO PROGRAM 'gzip -c -1 > @abs_srcdir@/data/nation2.gz'; -- OK |
| \COPY BINARY DIRECTORY TABLE "abs.dir_table" 'aa.bb' TO '@abs_srcdir@/data/aa.bb'; -- OK |
| COPY BINARY DIRECTORY TABLE "abs.dir_table" 'cc.dd' TO '@abs_srcdir@/data/cc.dd'; -- OK |
| \COPY BINARY DIRECTORY TABLE dir_table1 'nation.txt' TO '@abs_srcdir@/data/nation.txt'; -- OK |
| COPY BINARY DIRECTORY TABLE dir_table1 'nation2.txt' TO '@abs_srcdir@/data/nation2.txt'; -- OK |
| \COPY BINARY DIRECTORY TABLE public.dir_table1 'nation.txt' TO '@abs_srcdir@/data/nation3.txt'; -- OK |
| COPY BINARY DIRECTORY TABLE public.dir_table1 'nation2.txt' TO '@abs_srcdir@/data/nation4.txt'; -- OK |
| SELECT relative_path, size, tag FROM dir_table1 ORDER BY 1; |
| relative_path | size | tag |
| ---------------+------+-------- |
| nation1 | 2199 | |
| nation10 | 2199 | |
| nation11 | 2199 | |
| nation12 | 2199 | |
| nation13 | 2199 | |
| nation14 | 2199 | |
| nation15 | 2199 | |
| nation16 | 2199 | |
| nation17 | 2199 | |
| nation18 | 2199 | |
| nation2 | 2199 | |
| nation2.txt | 2199 | |
| nation3 | 2199 | nation |
| nation4 | 2199 | nation |
| nation6 | 2199 | |
| nation7 | 2199 | |
| nation8 | 2199 | |
| nation9 | 2199 | |
| nation.txt | 2199 | |
| (19 rows) |
| |
| SELECT relative_path, size, tag FROM dir_table2 ORDER BY 1; |
| relative_path | size | tag |
| ---------------+------+-------- |
| nation1 | 2199 | |
| nation2 | 2199 | |
| nation3 | 2199 | nation |
| nation4 | 2199 | nation |
| (4 rows) |
| |
| -- Test join between two directory schema tables |
| ANALYZE dir_table1; |
| ANALYZE dir_table2; |
| EXPLAIN (COSTS OFF) SELECT dir_table1.relative_path FROM dir_table1, dir_table2 |
| WHERE dir_table1.relative_path = dir_table2.relative_path ORDER BY 1; |
| QUERY PLAN |
| -------------------------------------------------------------------------------- |
| Gather Motion 3:1 (slice1; segments: 3) |
| Merge Key: dir_table1.relative_path |
| -> Sort |
| Sort Key: dir_table1.relative_path |
| -> Nested Loop |
| Join Filter: true |
| -> Seq Scan on dir_table2 |
| -> Index Scan using dir_table1_pkey on dir_table1 |
| Index Cond: (relative_path = dir_table2.relative_path) |
| Optimizer: Pivotal Optimizer (GPORCA) |
| (10 rows) |
| |
| SELECT dir_table1.relative_path FROM dir_table1, dir_table2 |
| WHERE dir_table1.relative_path = dir_table2.relative_path ORDER BY 1; |
| relative_path |
| --------------- |
| nation1 |
| nation2 |
| nation3 |
| nation4 |
| (4 rows) |
| |
| ANALYZE dir_table1; |
| ANALYZE dir_table2; |
| EXPLAIN (COSTS OFF) SELECT dir_table1.relative_path FROM dir_table1, dir_table2 |
| WHERE dir_table1.size = dir_table2.size ORDER BY 1 LIMIT 1; |
| QUERY PLAN |
| --------------------------------------------------------------------------------- |
| Limit |
| -> Gather Motion 3:1 (slice1; segments: 3) |
| Merge Key: dir_table1.relative_path |
| -> Limit |
| -> Sort |
| Sort Key: dir_table1.relative_path |
| -> Hash Join |
| Hash Cond: (dir_table1.size = dir_table2.size) |
| -> Seq Scan on dir_table1 |
| -> Hash |
| -> Broadcast Motion 3:3 (slice2; segments: 3) |
| -> Seq Scan on dir_table2 |
| Optimizer: Pivotal Optimizer (GPORCA) |
| (13 rows) |
| |
| SELECT dir_table1.relative_path FROM dir_table1, dir_table2 |
| WHERE dir_table1.size = dir_table2.size ORDER BY 1 LIMIT 1; |
| relative_path |
| --------------- |
| nation1 |
| (1 row) |
| |
| ANALYZE dir_table1; |
| ANALYZE dir_table2; |
| EXPLAIN (COSTS OFF) SELECT dir_table1.relative_path FROM dir_table1, dir_table2 |
| WHERE dir_table1.md5 = dir_table2.md5 ORDER BY 1 LIMIT 1; |
| QUERY PLAN |
| --------------------------------------------------------------------------------- |
| Limit |
| -> Gather Motion 3:1 (slice1; segments: 3) |
| Merge Key: dir_table1.relative_path |
| -> Limit |
| -> Sort |
| Sort Key: dir_table1.relative_path |
| -> Hash Join |
| Hash Cond: (dir_table1.md5 = dir_table2.md5) |
| -> Seq Scan on dir_table1 |
| -> Hash |
| -> Broadcast Motion 3:3 (slice2; segments: 3) |
| -> Seq Scan on dir_table2 |
| Optimizer: Pivotal Optimizer (GPORCA) |
| (13 rows) |
| |
| SELECT dir_table1.relative_path FROM dir_table1, dir_table2 |
| WHERE dir_table1.md5 = dir_table2.md5 ORDER BY 1 LIMIT 1; |
| relative_path |
| --------------- |
| nation1 |
| (1 row) |
| |
| ANALYZE dir_table1; |
| ANALYZE dir_table2; |
| EXPLAIN (COSTS OFF) SELECT dir_table1.relative_path FROM dir_table1, dir_table2 |
| WHERE dir_table1.tag = dir_table2.tag ORDER BY 1; |
| QUERY PLAN |
| --------------------------------------------------------------------- |
| Gather Motion 3:1 (slice1; segments: 3) |
| Merge Key: dir_table1.relative_path |
| -> Sort |
| Sort Key: dir_table1.relative_path |
| -> Hash Join |
| Hash Cond: (dir_table1.tag = dir_table2.tag) |
| -> Seq Scan on dir_table1 |
| -> Hash |
| -> Broadcast Motion 3:3 (slice2; segments: 3) |
| -> Seq Scan on dir_table2 |
| Optimizer: Pivotal Optimizer (GPORCA) |
| (11 rows) |
| |
| SELECT dir_table1.relative_path FROM dir_table1, dir_table2 |
| WHERE dir_table1.tag = dir_table2.tag ORDER BY 1; |
| relative_path |
| --------------- |
| nation3 |
| nation3 |
| nation4 |
| nation4 |
| (4 rows) |
| |
| -- Test DML directory schema table, only allow to update tag |
| INSERT INTO dir_table1 VALUES('insert'); -- fail |
| ERROR: cannot change directory table "dir_table1" |
| INSERT INTO dir_table2 VALUES('insert', 512, '2000-03-21 17:13:27+08', '70f09140d1b83eb3ecf9a0e28494d2a4', 'insert'); -- fail |
| ERROR: cannot change directory table "dir_table2" |
| SELECT relative_path, size, tag FROM dir_table1 ORDER BY 1; |
| relative_path | size | tag |
| ---------------+------+-------- |
| nation1 | 2199 | |
| nation10 | 2199 | |
| nation11 | 2199 | |
| nation12 | 2199 | |
| nation13 | 2199 | |
| nation14 | 2199 | |
| nation15 | 2199 | |
| nation16 | 2199 | |
| nation17 | 2199 | |
| nation18 | 2199 | |
| nation2 | 2199 | |
| nation2.txt | 2199 | |
| nation3 | 2199 | nation |
| nation4 | 2199 | nation |
| nation6 | 2199 | |
| nation7 | 2199 | |
| nation8 | 2199 | |
| nation9 | 2199 | |
| nation.txt | 2199 | |
| (19 rows) |
| |
| SELECT relative_path, size, tag FROM dir_table2 ORDER BY 1; |
| relative_path | size | tag |
| ---------------+------+-------- |
| nation1 | 2199 | |
| nation2 | 2199 | |
| nation3 | 2199 | nation |
| nation4 | 2199 | nation |
| (4 rows) |
| |
| DELETE FROM dir_table1; -- fail |
| ERROR: cannot change directory table "dir_table1" |
| DELETE FROM dir_table2 WHERE relative_path = 'nation1'; -- fail |
| ERROR: cannot change directory table "dir_table2" |
| SELECT relative_path, size, tag FROM dir_table1 ORDER BY 1; |
| relative_path | size | tag |
| ---------------+------+-------- |
| nation1 | 2199 | |
| nation10 | 2199 | |
| nation11 | 2199 | |
| nation12 | 2199 | |
| nation13 | 2199 | |
| nation14 | 2199 | |
| nation15 | 2199 | |
| nation16 | 2199 | |
| nation17 | 2199 | |
| nation18 | 2199 | |
| nation2 | 2199 | |
| nation2.txt | 2199 | |
| nation3 | 2199 | nation |
| nation4 | 2199 | nation |
| nation6 | 2199 | |
| nation7 | 2199 | |
| nation8 | 2199 | |
| nation9 | 2199 | |
| nation.txt | 2199 | |
| (19 rows) |
| |
| SELECT relative_path, size, tag FROM dir_table2 ORDER BY 1; |
| relative_path | size | tag |
| ---------------+------+-------- |
| nation1 | 2199 | |
| nation2 | 2199 | |
| nation3 | 2199 | nation |
| nation4 | 2199 | nation |
| (4 rows) |
| |
| UPDATE dir_table1 SET relative_path = 'nation_updated'; -- fail |
| ERROR: UPDATE on distributed key column not allowed on relation with update triggers |
| UPDATE dir_table2 SET relative_path = 'nation_updated' WHERE relative_path = 'nation2'; -- fail |
| ERROR: Only allow to update directory "tag" column. |
| UPDATE dir_table1 SET size = 512; -- fail |
| ERROR: Only allow to update directory "tag" column. |
| UPDATE dir_table2 SET size = 1024 WHERE relative_path = 'nation1'; -- fail |
| ERROR: Only allow to update directory "tag" column. |
| UPDATE dir_table1 SET last_modified = '2000-03-21 16:55:07+08'; -- fail |
| ERROR: Only allow to update directory "tag" column. |
| UPDATE dir_table2 SET last_modified = '2000-03-21 16:55:07+08' WHERE relative_path = 'nation3'; -- fail |
| ERROR: Only allow to update directory "tag" column. |
| UPDATE dir_table1 SET md5 = '70f09140d1b83eb3ecf9a0e28494d2a4'; -- fail |
| ERROR: Only allow to update directory "tag" column. |
| UPDATE dir_table2 SET md5 = '70f09140d1b83eb3ecf9a0e28494d2a4' WHERE relative_path = 'nation4'; -- fail |
| ERROR: Only allow to update directory "tag" column. |
| UPDATE dir_table1 SET tag = 'nation_new_tag'; -- ok |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg2 127.0.1.1:7004 pid=2729) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg0 127.0.1.1:7002 pid=2727) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg0 127.0.1.1:7002 pid=2727) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg2 127.0.1.1:7004 pid=2729) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg0 127.0.1.1:7002 pid=2727) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg0 127.0.1.1:7002 pid=2727) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg2 127.0.1.1:7004 pid=2729) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg0 127.0.1.1:7002 pid=2727) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg2 127.0.1.1:7004 pid=2729) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg2 127.0.1.1:7004 pid=2729) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg0 127.0.1.1:7002 pid=2727) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg0 127.0.1.1:7002 pid=2727) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg0 127.0.1.1:7002 pid=2727) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg2 127.0.1.1:7004 pid=2729) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg0 127.0.1.1:7002 pid=2727) |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg2 127.0.1.1:7004 pid=2729) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg2 127.0.1.1:7004 pid=2729) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg0 127.0.1.1:7002 pid=2727) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg2 127.0.1.1:7004 pid=2729) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg2 127.0.1.1:7004 pid=2729) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg1 127.0.1.1:7003 pid=2728) |
| UPDATE dir_table1 SET tag = 'nation2_new_tag' WHERE relative_path = 'nation2'; -- ok |
| NOTICE: dir_table1 UPDATE BEFORE ROW (seg2 127.0.1.1:7004 pid=2729) |
| NOTICE: dir_table1 UPDATE AFTER ROW (seg2 127.0.1.1:7004 pid=2729) |
| UPDATE dir_table2 SET tag = 'nation4_new_tag' WHERE relative_path = 'nation3'; -- ok |
| UPDATE dir_table1 SET tag = 'failed_tag' WHERE relative_path = 'not_exist_path'; |
| UPDATE dir_table2 SET tag = 'no_tag' WHERE relative_path = 'not_exist_path'; |
| SELECT relative_path, size, tag FROM dir_table1 ORDER BY 1; |
| relative_path | size | tag |
| ---------------+------+----------------- |
| nation1 | 2199 | nation_new_tag |
| nation10 | 2199 | nation_new_tag |
| nation11 | 2199 | nation_new_tag |
| nation12 | 2199 | nation_new_tag |
| nation13 | 2199 | nation_new_tag |
| nation14 | 2199 | nation_new_tag |
| nation15 | 2199 | nation_new_tag |
| nation16 | 2199 | nation_new_tag |
| nation17 | 2199 | nation_new_tag |
| nation18 | 2199 | nation_new_tag |
| nation2 | 2199 | nation2_new_tag |
| nation2.txt | 2199 | nation_new_tag |
| nation3 | 2199 | nation_new_tag |
| nation4 | 2199 | nation_new_tag |
| nation6 | 2199 | nation_new_tag |
| nation7 | 2199 | nation_new_tag |
| nation8 | 2199 | nation_new_tag |
| nation9 | 2199 | nation_new_tag |
| nation.txt | 2199 | nation_new_tag |
| (19 rows) |
| |
| SELECT relative_path, size, tag FROM dir_table2 ORDER BY 1; |
| relative_path | size | tag |
| ---------------+------+----------------- |
| nation1 | 2199 | |
| nation2 | 2199 | |
| nation3 | 2199 | nation4_new_tag |
| nation4 | 2199 | nation |
| (4 rows) |
| |
| -- Test alter table directory schema table |
| ALTER TABLE dir_table1 ADD COLUMN a int; -- fail |
| ERROR: "dir_table1" is not a table, composite type, or foreign table |
| ALTER DIRECTORY TABLE dir_table1 ADD COLUMN a int; -- fail |
| ERROR: syntax error at or near "ADD" |
| LINE 1: ALTER DIRECTORY TABLE dir_table1 ADD COLUMN a int; |
| ^ |
| ALTER TABLE dir_table2 DROP COLUMN relative_path; -- fail |
| ERROR: "dir_table2" is not a table, composite type, or foreign table |
| ALTER DIRECTORY TABLE dir_table2 DROP COLUMN relative_path; -- fail |
| ERROR: syntax error at or near "DROP" |
| LINE 1: ALTER DIRECTORY TABLE dir_table2 DROP COLUMN relative_path; |
| ^ |
| ALTER TABLE dir_table1 RENAME TO dir_table_new; -- fail |
| ERROR: Rename directory table is not allowed. |
| ALTER DIRECTORY TABLE dir_table1 RENAME TO dir_table_new; -- fail |
| ERROR: syntax error at or near "RENAME" |
| LINE 1: ALTER DIRECTORY TABLE dir_table1 RENAME TO dir_table_new; |
| ^ |
| ALTER TABLE dir_table2 ADD CONSTRAINT dirtable_constraint UNIQUE (tag); -- fail |
| ERROR: "dir_table2" is not a table or foreign table |
| ALTER DIRECTORY TABLE dir_table2 ADD CONSTRAINT dirtable_constraint UNIQUE (tag); -- fail |
| ERROR: syntax error at or near "ADD" |
| LINE 1: ALTER DIRECTORY TABLE dir_table2 ADD CONSTRAINT dirtable_con... |
| ^ |
| ALTER TABLE dir_table1 DROP CONSTRAINT DROP CONSTRAINT test_pkey; -- fail |
| ERROR: syntax error at or near "CONSTRAINT" |
| LINE 1: ALTER TABLE dir_table1 DROP CONSTRAINT DROP CONSTRAINT test_... |
| ^ |
| ALTER DIRECTORY TABLE dir_table1 DROP CONSTRAINT DROP CONSTRAINT test_pkey; -- fail |
| ERROR: syntax error at or near "DROP" |
| LINE 1: ALTER DIRECTORY TABLE dir_table1 DROP CONSTRAINT DROP CONSTR... |
| ^ |
| -- Test remove_table |
| SELECT remove_file('dir_table1', 'nation5'); -- fail |
| remove_file |
| ------------- |
| f |
| (1 row) |
| |
| SELECT remove_file('dir_table1', 'nation1'); |
| remove_file |
| ------------- |
| t |
| (1 row) |
| |
| SELECT remove_file('dir_table2', 'nation1', 'nation2'); -- fail |
| ERROR: function remove_file(unknown, unknown, unknown) does not exist |
| LINE 1: SELECT remove_file('dir_table2', 'nation1', 'nation2'); |
| ^ |
| HINT: No function matches the given name and argument types. You might need to add explicit type casts. |
| SELECT remove_file('dir_table1', 'nation2'); |
| remove_file |
| ------------- |
| t |
| (1 row) |
| |
| SELECT remove_file('dir_table3', 'nation1'); -- fail |
| remove_file |
| ------------- |
| f |
| (1 row) |
| |
| SELECT remove_file('dir_table2', 'nation3'); |
| remove_file |
| ------------- |
| t |
| (1 row) |
| |
| SELECT remove_file('dir_table1', 'nation1'); -- fail |
| remove_file |
| ------------- |
| f |
| (1 row) |
| |
| SELECT relative_path, size, tag FROM dir_table1 ORDER BY 1; |
| relative_path | size | tag |
| ---------------+------+---------------- |
| nation10 | 2199 | nation_new_tag |
| nation11 | 2199 | nation_new_tag |
| nation12 | 2199 | nation_new_tag |
| nation13 | 2199 | nation_new_tag |
| nation14 | 2199 | nation_new_tag |
| nation15 | 2199 | nation_new_tag |
| nation16 | 2199 | nation_new_tag |
| nation17 | 2199 | nation_new_tag |
| nation18 | 2199 | nation_new_tag |
| nation2.txt | 2199 | nation_new_tag |
| nation3 | 2199 | nation_new_tag |
| nation4 | 2199 | nation_new_tag |
| nation6 | 2199 | nation_new_tag |
| nation7 | 2199 | nation_new_tag |
| nation8 | 2199 | nation_new_tag |
| nation9 | 2199 | nation_new_tag |
| nation.txt | 2199 | nation_new_tag |
| (17 rows) |
| |
| SELECT relative_path, size, tag FROM dir_table2 ORDER BY 1; |
| relative_path | size | tag |
| ---------------+------+-------- |
| nation1 | 2199 | |
| nation2 | 2199 | |
| nation4 | 2199 | nation |
| (3 rows) |
| |
| -- Test transaction commit of directory table manipulation |
| CREATE DIRECTORY TABLE dir_table4 TABLESPACE directory_tblspc; |
| BEGIN; |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_commit'; |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_commit2' WITH TAG 'nation'; |
| COMMIT; |
| SELECT relative_path, content FROM directory_table('dir_table4') ORDER BY 1; |
| relative_path | content |
| ----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| nation_commit | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation_commit2 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| (2 rows) |
| |
| BEGIN; |
| SELECT remove_file('dir_table4', 'nation_commit'); |
| remove_file |
| ------------- |
| t |
| (1 row) |
| |
| SELECT relative_path, content FROM directory_table('dir_table4') ORDER BY 1; |
| relative_path | content |
| ----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| nation_commit2 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| (1 row) |
| |
| COMMIT; |
| SELECT relative_path, content FROM directory_table('dir_table4') ORDER BY 1; |
| relative_path | content |
| ----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| nation_commit2 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| (1 row) |
| |
| BEGIN; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ----------------+-------- |
| nation_commit2 | nation |
| (1 row) |
| |
| UPDATE dir_table4 SET tag = 'nation_updated' WHERE relative_path = 'nation_commit2'; |
| COMMIT; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ----------------+---------------- |
| nation_commit2 | nation_updated |
| (1 row) |
| |
| -- Test transaction rollback of directory table manipulation |
| BEGIN; |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_rollback'; |
| SELECT relative_path, content FROM directory_table('dir_table4') ORDER BY 1; |
| relative_path | content |
| -----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| nation_commit2 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| nation_rollback | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| (2 rows) |
| |
| ROLLBACK; |
| SELECT relative_path, content FROM directory_table('dir_table4') ORDER BY 1; |
| relative_path | content |
| ----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| nation_commit2 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| (1 row) |
| |
| BEGIN; |
| SELECT remove_file('dir_table4', 'nation_commit2'); |
| remove_file |
| ------------- |
| t |
| (1 row) |
| |
| SELECT relative_path, content FROM directory_table('dir_table4') ORDER BY 1; |
| relative_path | content |
| ---------------+--------- |
| (0 rows) |
| |
| ROLLBACK; |
| SELECT relative_path, content FROM directory_table('dir_table4') ORDER BY 1; |
| relative_path | content |
| ----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| nation_commit2 | \x307c414c47455249417c307c20686167676c652e206361726566756c6c792066696e616c206465706f736974732064657465637420736c796c7920616761690a317c415247454e54494e417c317c616c20666f7865732070726f6d69736520736c796c79206163636f7264696e6720746f2074686520726567756c6172206163636f756e74732e20626f6c6420726571756573747320616c6f6e0a327c4252415a494c7c317c7920616c6f6e6773696465206f66207468652070656e64696e67206465706f736974732e206361726566756c6c79207370656369616c207061636b61676573206172652061626f7574207468652069726f6e696320666f726765732e20736c796c79207370656369616c200a337c43414e4144417c317c6561732068616e672069726f6e69632c2073696c656e74207061636b616765732e20736c796c7920726567756c6172207061636b616765732061726520667572696f75736c79206f76657220746865207469746865732e20666c756666696c7920626f6c640a347c45475950547c347c792061626f766520746865206361726566756c6c7920756e757375616c207468656f646f6c697465732e2066696e616c206475676f7574732061726520717569636b6c79206163726f73732074686520667572696f75736c7920726567756c617220640a357c455448494f5049417c307c76656e207061636b616765732077616b6520717569636b6c792e20726567750a367c4652414e43457c337c726566756c6c792066696e616c2072657175657374732e20726567756c61722c2069726f6e690a377c4745524d414e597c337c6c20706c6174656c6574732e20726567756c6172206163636f756e747320782d7261793a20756e757375616c2c20726567756c6172206163636f0a387c494e4449417c327c737320657863757365732063616a6f6c6520736c796c79206163726f737320746865207061636b616765732e206465706f73697473207072696e742061726f756e0a397c494e444f4e455349417c327c20736c796c792065787072657373206173796d70746f7465732e20726567756c6172206465706f7369747320686167676c6520736c796c792e206361726566756c6c792069726f6e696320686f636b657920706c617965727320736c65657020626c697468656c792e206361726566756c6c0a31307c4952414e7c347c6566756c6c7920616c6f6e6773696465206f662074686520736c796c792066696e616c20646570656e64656e636965732e200a31317c495241517c347c6e6963206465706f7369747320626f6f73742061746f702074686520717569636b6c792066696e616c2072657175657374733f20717569636b6c7920726567756c610a31327c4a4150414e7c327c6f75736c792e2066696e616c2c20657870726573732067696674732063616a6f6c6520610a31337c4a4f5244414e7c347c6963206465706f736974732061726520626c697468656c792061626f757420746865206361726566756c6c7920726567756c61722070610a31347c4b454e59417c307c2070656e64696e67206578637573657320686167676c6520667572696f75736c79206465706f736974732e2070656e64696e672c20657870726573732070696e746f206265616e732077616b6520666c756666696c79207061737420740a31357c4d4f524f43434f7c307c726e732e20626c697468656c7920626f6c6420636f7572747320616d6f6e672074686520636c6f73656c7920726567756c6172207061636b616765732075736520667572696f75736c7920626f6c6420706c6174656c6574733f0a31367c4d4f5a414d42495155457c307c732e2069726f6e69632c20756e757375616c206173796d70746f7465732077616b6520626c697468656c7920720a31377c504552557c317c706c6174656c6574732e20626c697468656c792070656e64696e6720646570656e64656e636965732075736520666c756666696c79206163726f737320746865206576656e2070696e746f206265616e732e206361726566756c6c792073696c656e74206163636f756e0a31387c4348494e417c327c6320646570656e64656e636965732e20667572696f75736c792065787072657373206e6f746f726e697320736c65657020736c796c7920726567756c6172206163636f756e74732e20696465617320736c6565702e206465706f730a31397c524f4d414e49417c337c756c6172206173796d70746f746573206172652061626f75742074686520667572696f7573206d756c7469706c696572732e206578707265737320646570656e64656e63696573206e61672061626f7665207468652069726f6e6963616c6c792069726f6e6963206163636f756e740a32307c5341554449204152414249417c347c74732e2073696c656e7420726571756573747320686167676c652e20636c6f73656c792065787072657373207061636b6167657320736c656570206163726f73732074686520626c697468656c790a32317c564945544e414d7c327c68656c7920656e746963696e676c792065787072657373206163636f756e74732e206576656e2c2066696e616c200a32327c5255535349417c337c20726571756573747320616761696e73742074686520706c6174656c65747320757365206e65766572206163636f7264696e6720746f2074686520717569636b6c7920726567756c61722070696e740a32337c554e49544544204b494e47444f4d7c337c65616e7320626f6f7374206361726566756c6c79207370656369616c2072657175657374732e206163636f756e7473206172652e206361726566756c6c0a32347c554e49544544205354415445537c317c792066696e616c207061636b616765732e20736c6f7720666f7865732063616a6f6c6520717569636b6c792e20717569636b6c792073696c656e7420706c6174656c657473206272656163682069726f6e6963206163636f756e74732e20756e757375616c2070696e746f2062650a |
| (1 row) |
| |
| BEGIN; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ----------------+---------------- |
| nation_commit2 | nation_updated |
| (1 row) |
| |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_rollback2' WITH TAG 'nation'; |
| UPDATE dir_table4 SET tag = 'nation_updated' WHERE relative_path = 'nation_rollback2'; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_rollback2 | nation_updated |
| (2 rows) |
| |
| ROLLBACK; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ----------------+---------------- |
| nation_commit2 | nation_updated |
| (1 row) |
| |
| -- Test subtransaction commit of directory table manipulation |
| BEGIN; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ----------------+---------------- |
| nation_commit2 | nation_updated |
| (1 row) |
| |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_subcommit' WITH TAG 'nation'; |
| SAVEPOINT s1; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit | nation |
| (2 rows) |
| |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_subcommit2'; |
| SAVEPOINT s2; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| -------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit | nation |
| nation_subcommit2 | |
| (3 rows) |
| |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_subcommit3'; |
| RELEASE SAVEPOINT s1; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| -------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit | nation |
| nation_subcommit2 | |
| nation_subcommit3 | |
| (4 rows) |
| |
| COMMIT; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| -------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit | nation |
| nation_subcommit2 | |
| nation_subcommit3 | |
| (4 rows) |
| |
| BEGIN; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| -------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit | nation |
| nation_subcommit2 | |
| nation_subcommit3 | |
| (4 rows) |
| |
| SELECT remove_file('dir_table4', 'nation_subcommit'); |
| remove_file |
| ------------- |
| t |
| (1 row) |
| |
| SAVEPOINT s1; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| -------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit2 | |
| nation_subcommit3 | |
| (3 rows) |
| |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_subcommit'; |
| SAVEPOINT s2; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| -------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit | |
| nation_subcommit2 | |
| nation_subcommit3 | |
| (4 rows) |
| |
| RELEASE SAVEPOINT s1; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| -------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit | |
| nation_subcommit2 | |
| nation_subcommit3 | |
| (4 rows) |
| |
| COMMIT; |
| BEGIN; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| -------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit | |
| nation_subcommit2 | |
| nation_subcommit3 | |
| (4 rows) |
| |
| SELECT remove_file('dir_table4', 'nation_subcommit'); |
| remove_file |
| ------------- |
| t |
| (1 row) |
| |
| SAVEPOINT s1; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| -------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit2 | |
| nation_subcommit3 | |
| (3 rows) |
| |
| SELECT remove_file('dir_table4', 'nation_subcommit2'); |
| remove_file |
| ------------- |
| t |
| (1 row) |
| |
| SAVEPOINT s2; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| -------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit3 | |
| (2 rows) |
| |
| RELEASE SAVEPOINT s2; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| -------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit3 | |
| (2 rows) |
| |
| COMMIT; |
| BEGIN; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| -------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit3 | |
| (2 rows) |
| |
| SELECT remove_file('dir_table4', 'nation_subcommit2'); |
| remove_file |
| ------------- |
| f |
| (1 row) |
| |
| SAVEPOINT s1; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| -------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit3 | |
| (2 rows) |
| |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_subcommit4'; |
| SAVEPOINT s2; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| -------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit3 | |
| nation_subcommit4 | |
| (3 rows) |
| |
| ROLLBACK TO SAVEPOINT s1; |
| COMMIT; |
| -- Test subtransaction rollback of directory table manipulation |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_subrollback1'; |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_subrollback2'; |
| BEGIN; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ---------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit3 | |
| nation_subrollback1 | |
| nation_subrollback2 | |
| (4 rows) |
| |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_subrollback3'; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ---------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit3 | |
| nation_subrollback1 | |
| nation_subrollback2 | |
| nation_subrollback3 | |
| (5 rows) |
| |
| SAVEPOINT s1; |
| SELECT remove_file('dir_table4', 'nation_subrollback1'); |
| remove_file |
| ------------- |
| t |
| (1 row) |
| |
| SAVEPOINT s2; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ---------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit3 | |
| nation_subrollback2 | |
| nation_subrollback3 | |
| (4 rows) |
| |
| ROLLBACK; |
| BEGIN; |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_subrollback4'; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ---------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit3 | |
| nation_subrollback1 | |
| nation_subrollback2 | |
| nation_subrollback4 | |
| (5 rows) |
| |
| SAVEPOINT s1; |
| SELECT remove_file('dir_table4', 'nation_subrollback4'); |
| remove_file |
| ------------- |
| t |
| (1 row) |
| |
| SAVEPOINT s2; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ---------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit3 | |
| nation_subrollback1 | |
| nation_subrollback2 | |
| (4 rows) |
| |
| RELEASE SAVEPOINT s1; |
| ROLLBACK; |
| BEGIN; |
| SELECT remove_file('dir_table4', 'nation_subrollback2'); |
| remove_file |
| ------------- |
| t |
| (1 row) |
| |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_subrollback5'; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ---------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit3 | |
| nation_subrollback1 | |
| nation_subrollback5 | |
| (4 rows) |
| |
| SAVEPOINT s1; |
| SELECT remove_file('dir_table4', 'nation_subrollback5'); |
| remove_file |
| ------------- |
| t |
| (1 row) |
| |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ---------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit3 | |
| nation_subrollback1 | |
| (3 rows) |
| |
| ROLLBACK TO SAVEPOINT s1; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ---------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit3 | |
| nation_subrollback1 | |
| nation_subrollback5 | |
| (4 rows) |
| |
| COPY BINARY dir_table4 FROM '@abs_srcdir@/data/nation.csv' 'nation_subrollback6'; |
| SELECT relative_path, tag FROM dir_table4 ORDER BY 1; |
| relative_path | tag |
| ---------------------+---------------- |
| nation_commit2 | nation_updated |
| nation_subcommit3 | |
| nation_subrollback1 | |
| nation_subrollback5 | |
| nation_subrollback6 | |
| (5 rows) |
| |
| SAVEPOINT s2; |
| ROLLBACK; |
| -- test create directory table with location |
| CREATE DIRECTORY TABLE dir_table_with_location TABLESPACE directory_tblspc WITH LOCATION '/test_dirtable'; |
| CREATE DIRECTORY TABLE dir_table_with_location2 TABLESPACE directory_tblspc WITH LOCATION '/test_dirtable'; -- error |
| ERROR: directory table path "pg_tblspc//test_dirtable" already exists |
| CREATE DIRECTORY TABLE dir_table_with_location3 WITH LOCATION '/test_dirtable'; |
| SELECT count(*) FROM pg_directory_table; |
| count |
| ------- |
| 8 |
| (1 row) |
| |
| DROP DIRECTORY TABLE dir_table_with_location WITH CONTENT; |
| DROP DIRECTORY TABLE dir_table_with_location3 WITH CONTENT; |
| -- clean up |
| DROP DIRECTORY TABLE IF EXISTS dir_table1; |
| DROP DIRECTORY TABLE IF EXISTS dir_table2; |
| DROP DIRECTORY TABLE IF EXISTS dir_table3; |
| DROP DIRECTORY TABLE IF EXISTS dir_table4; |
| DROP DIRECTORY TABLE IF EXISTS dir_table5; |
| NOTICE: directory table "dir_table5" does not exist, skipping |
| DROP DIRECTORY TABLE IF EXISTS dir_table6; |
| DROP DIRECTORY TABLE IF EXISTS "abs.dir_table"; |
| DROP FUNCTION IF EXISTS triggertest; |
| DROP STORAGE USER MAPPING IF EXISTS FOR CURRENT_USER STORAGE SERVER oss_server1; |
| DROP STORAGE USER MAPPING IF EXISTS FOR CURRENT_USER STORAGE SERVER oss_server2; |
| NOTICE: storage user mapping for "gpadmin" does not exist for storage server "oss_server2", skipping |
| DROP STORAGE USER MAPPING IF EXISTS FOR CURRENT_USER STORAGE SERVER oss_server3; |
| DROP STORAGE USER MAPPING IF EXISTS FOR CURRENT_USER STORAGE SERVER oss_server4; |
| NOTICE: storage server "oss_server4" does not exist, skipping |
| DROP STORAGE USER MAPPING IF EXISTS FOR test_dirtable1 STORAGE SERVER oss_server1; |
| NOTICE: storage user mapping for "test_dirtable1" does not exist for storage server "oss_server1", skipping |
| DROP STORAGE USER MAPPING IF EXISTS FOR test_dirtable1 STORAGE SERVER oss_server2; |
| DROP STORAGE USER MAPPING IF EXISTS FOR test_dirtable1 STORAGE SERVER oss_server3; |
| DROP STORAGE USER MAPPING IF EXISTS FOR test_dirtable2 STORAGE SERVER oss_server3; |
| DROP STORAGE USER MAPPING IF EXISTS FOR test_dirtable3 STORAGE SERVER oss_server8; |
| DROP STORAGE SERVER IF EXISTS oss_server1; |
| DROP STORAGE SERVER IF EXISTS oss_server2; |
| DROP STORAGE SERVER IF EXISTS oss_server3; |
| DROP STORAGE SERVER IF EXISTS oss_server4; |
| NOTICE: storage server "oss_server4" not exists, skipping |
| DROP STORAGE SERVER IF EXISTS oss_server5; |
| DROP STORAGE SERVER IF EXISTS oss_server6; |
| DROP STORAGE SERVER IF EXISTS oss_server7; |
| DROP STORAGE SERVER IF EXISTS oss_server8; |
| DROP STORAGE SERVER IF EXISTS oss_server9; |
| NOTICE: storage server "oss_server9" not exists, skipping |
| DROP STORAGE SERVER IF EXISTS oss_server10; |
| NOTICE: storage server "oss_server10" not exists, skipping |
| DROP STORAGE SERVER IF EXISTS oss_server11; |
| DROP STORAGE SERVER IF EXISTS oss_server12; |
| DROP STORAGE SERVER IF EXISTS oss_server13; |
| NOTICE: storage server "oss_server13" not exists, skipping |
| SELECT srvname, srvacl, srvoptions FROM gp_storage_server; |
| srvname | srvacl | srvoptions |
| ---------+--------+------------ |
| (0 rows) |
| |
| DROP USER test_dirtable1; |
| DROP USER test_dirtable2; |
| DROP USER test_dirtable3; |
| DROP USER test_dirtable4; |
| DROP FUNCTION IF EXISTS file_content; |
| DROP FUNCTION IF EXISTS file_md5; |
| DROP FUNCTION IF EXISTS md5_equal; |
| DROP DATABASE dirtable_db; |
| DROP TRIGGER IF EXISTS trigtest_b_row_tg_dirtable_1 ON dir_table1; |
| NOTICE: relation "dir_table1" does not exist, skipping |
| DROP TRIGGER IF EXISTS trigtest_a_row_tg_dirtable_1 ON dir_table1; |
| NOTICE: relation "dir_table1" does not exist, skipping |
| DROP TRIGGER IF EXISTS trigtest_b_stmt_tg_dirtable_1 ON dir_table1; |
| NOTICE: relation "dir_table1" does not exist, skipping |
| DROP TRIGGER IF EXISTS trigtest_a_stmt_tg_dirtable_1 ON dir_table1; |
| NOTICE: relation "dir_table1" does not exist, skipping |
| \!rm -rf @testtablespace@; |
| DROP TABLESPACE directory_tblspc; |