mirror of https://github.com/citusdata/citus.git
Remove check-multi-fdw tests, nobody uses Citus with fdws
parent
2758af8f83
commit
640bb8863b
|
@ -18,5 +18,5 @@ install:
|
|||
- install_uncrustify
|
||||
- install_pg
|
||||
before_script: citus_indent --quiet --check
|
||||
script: CFLAGS=-Werror pg_travis_multi_test check-multi check-worker check-multi-fdw
|
||||
script: CFLAGS=-Werror pg_travis_multi_test check-multi check-worker
|
||||
after_success: sync_to_enterprise
|
||||
|
|
|
@ -37,7 +37,7 @@ output_files := $(patsubst $(citus_abs_srcdir)/output/%.source,expected/%.out, $
|
|||
# intermediate, for muscle memory backward compatibility.
|
||||
check: check-full
|
||||
# check-full triggers all tests that ought to be run routinely
|
||||
check-full: check-multi check-multi-task-tracker-extra check-multi-binary check-worker check-multi-fdw
|
||||
check-full: check-multi check-multi-task-tracker-extra check-multi-binary check-worker
|
||||
|
||||
# using pg_regress_multi_check unnecessarily starts up multiple nodes, which isn't needed
|
||||
# for check-worker. But that's harmless besides a few cycles.
|
||||
|
@ -49,10 +49,6 @@ check-multi: all tempinstall-main
|
|||
$(pg_regress_multi_check) --load-extension=citus \
|
||||
-- $(MULTI_REGRESS_OPTS) --schedule=$(citus_abs_srcdir)/multi_schedule $(EXTRA_TESTS)
|
||||
|
||||
check-multi-fdw: all tempinstall-main
|
||||
$(pg_regress_multi_check) --load-extension=citus --load-extension=file_fdw -- \
|
||||
$(MULTI_REGRESS_OPTS) --schedule=$(citus_abs_srcdir)/multi_fdw_schedule $(EXTRA_TESTS)
|
||||
|
||||
check-multi-hll: all tempinstall-main
|
||||
$(pg_regress_multi_check) --load-extension=citus --load-extension=hll -- \
|
||||
$(MULTI_REGRESS_OPTS) $(EXTRA_TESTS) multi_create_table multi_master_protocol multi_stage_data multi_agg_approximate_distinct
|
||||
|
|
|
@ -5,8 +5,6 @@
|
|||
/multi_append_table_to_shard.out
|
||||
/multi_copy.out
|
||||
/multi_create_schema.out
|
||||
/multi_fdw_large_shardid.out
|
||||
/multi_fdw_stage_data.out
|
||||
/multi_large_shardid.out
|
||||
/multi_master_delete_protocol.out
|
||||
/multi_outer_join.out
|
||||
|
|
|
@ -1,105 +0,0 @@
|
|||
--
|
||||
-- MULTI_FDW_CREATE_TABLE
|
||||
--
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_shardid_seq RESTART 590000;
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_jobid_seq RESTART 590000;
|
||||
-- Create new table definitions for use in testing in distributed foreign data
|
||||
-- wrapper functionality.
|
||||
SELECT fdwname FROM pg_foreign_data_wrapper;
|
||||
fdwname
|
||||
----------
|
||||
file_fdw
|
||||
(1 row)
|
||||
|
||||
CREATE SERVER file_server FOREIGN DATA WRAPPER file_fdw;
|
||||
CREATE FOREIGN TABLE lineitem (
|
||||
l_orderkey bigint not null,
|
||||
l_partkey integer not null,
|
||||
l_suppkey integer not null,
|
||||
l_linenumber integer not null,
|
||||
l_quantity decimal(15, 2) not null,
|
||||
l_extendedprice decimal(15, 2) not null,
|
||||
l_discount decimal(15, 2) not null,
|
||||
l_tax decimal(15, 2) not null,
|
||||
l_returnflag char(1) not null,
|
||||
l_linestatus char(1) not null,
|
||||
l_shipdate date not null,
|
||||
l_commitdate date not null,
|
||||
l_receiptdate date not null,
|
||||
l_shipinstruct char(25) not null,
|
||||
l_shipmode char(10) not null,
|
||||
l_comment varchar(44) not null)
|
||||
SERVER file_server
|
||||
OPTIONS (format 'text', filename '', delimiter '|', null '');
|
||||
SELECT master_create_distributed_table('lineitem', 'l_orderkey', 'append');
|
||||
master_create_distributed_table
|
||||
---------------------------------
|
||||
|
||||
(1 row)
|
||||
|
||||
CREATE FOREIGN TABLE orders (
|
||||
o_orderkey bigint not null,
|
||||
o_custkey integer not null,
|
||||
o_orderstatus char(1) not null,
|
||||
o_totalprice decimal(15,2) not null,
|
||||
o_orderdate date not null,
|
||||
o_orderpriority char(15) not null,
|
||||
o_clerk char(15) not null,
|
||||
o_shippriority integer not null,
|
||||
o_comment varchar(79) not null)
|
||||
SERVER file_server
|
||||
OPTIONS (format 'text', filename '', delimiter '|', null '');
|
||||
SELECT master_create_distributed_table('orders', 'o_orderkey', 'append');
|
||||
master_create_distributed_table
|
||||
---------------------------------
|
||||
|
||||
(1 row)
|
||||
|
||||
CREATE FOREIGN TABLE customer (
|
||||
c_custkey integer not null,
|
||||
c_name varchar(25) not null,
|
||||
c_address varchar(40) not null,
|
||||
c_nationkey integer not null,
|
||||
c_phone char(15) not null,
|
||||
c_acctbal decimal(15,2) not null,
|
||||
c_mktsegment char(10) not null,
|
||||
c_comment varchar(117) not null)
|
||||
SERVER file_server
|
||||
OPTIONS (format 'text', filename '', delimiter '|', null '');
|
||||
SELECT master_create_distributed_table('customer', 'c_custkey', 'append');
|
||||
master_create_distributed_table
|
||||
---------------------------------
|
||||
|
||||
(1 row)
|
||||
|
||||
CREATE FOREIGN TABLE nation (
|
||||
n_nationkey integer not null,
|
||||
n_name char(25) not null,
|
||||
n_regionkey integer not null,
|
||||
n_comment varchar(152))
|
||||
SERVER file_server
|
||||
OPTIONS (format 'text', filename '', delimiter '|', null '');
|
||||
SELECT master_create_distributed_table('nation', 'n_nationkey', 'append');
|
||||
master_create_distributed_table
|
||||
---------------------------------
|
||||
|
||||
(1 row)
|
||||
|
||||
CREATE FOREIGN TABLE part (
|
||||
p_partkey integer not null,
|
||||
p_name varchar(55) not null,
|
||||
p_mfgr char(25) not null,
|
||||
p_brand char(10) not null,
|
||||
p_type varchar(25) not null,
|
||||
p_size integer not null,
|
||||
p_container char(10) not null,
|
||||
p_retailprice decimal(15,2) not null,
|
||||
p_comment varchar(23) not null)
|
||||
SERVER file_server
|
||||
OPTIONS (format 'text', filename '', delimiter '|', null '');
|
||||
SELECT master_create_distributed_table('part', 'p_partkey', 'append');
|
||||
master_create_distributed_table
|
||||
---------------------------------
|
||||
|
||||
(1 row)
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
--
|
||||
-- MULTI_FDW_MASTER_PROTOCOL
|
||||
--
|
||||
-- Tests that check the metadata returned by the master node.
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_shardid_seq RESTART 600000;
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_jobid_seq RESTART 600000;
|
||||
SELECT part_storage_type, part_key, part_replica_count, part_max_size,
|
||||
part_placement_policy FROM master_get_table_metadata('lineitem');
|
||||
part_storage_type | part_key | part_replica_count | part_max_size | part_placement_policy
|
||||
-------------------+------------+--------------------+---------------+-----------------------
|
||||
f | l_orderkey | 2 | 307200 | 2
|
||||
(1 row)
|
||||
|
||||
SELECT * FROM master_get_table_ddl_events('lineitem');
|
||||
master_get_table_ddl_events
|
||||
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
CREATE EXTENSION IF NOT EXISTS file_fdw WITH SCHEMA public
|
||||
CREATE SERVER file_server FOREIGN DATA WRAPPER file_fdw
|
||||
CREATE FOREIGN TABLE public.lineitem (l_orderkey bigint NOT NULL, l_partkey integer NOT NULL, l_suppkey integer NOT NULL, l_linenumber integer NOT NULL, l_quantity numeric(15,2) NOT NULL, l_extendedprice numeric(15,2) NOT NULL, l_discount numeric(15,2) NOT NULL, l_tax numeric(15,2) NOT NULL, l_returnflag character(1) NOT NULL, l_linestatus character(1) NOT NULL, l_shipdate date NOT NULL, l_commitdate date NOT NULL, l_receiptdate date NOT NULL, l_shipinstruct character(25) NOT NULL, l_shipmode character(10) NOT NULL, l_comment character varying(44) NOT NULL) SERVER file_server OPTIONS (format 'text', filename '', delimiter '|', "null" '')
|
||||
(3 rows)
|
||||
|
||||
SELECT * FROM master_get_new_shardid();
|
||||
master_get_new_shardid
|
||||
------------------------
|
||||
600000
|
||||
(1 row)
|
||||
|
|
@ -1,63 +0,0 @@
|
|||
--
|
||||
-- MULTI_FDW_STORAGE_TYPE
|
||||
--
|
||||
-- Create two tables one regular and one foreign, then check whether
|
||||
-- shardstorage is correct
|
||||
-- explicitly set shard id
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_shardid_seq RESTART 400000;
|
||||
-- create regular table
|
||||
CREATE TABLE people (
|
||||
id bigint not null,
|
||||
firstname char(10) not null,
|
||||
lastname char(10) not null,
|
||||
age integer not null);
|
||||
-- create distributed table
|
||||
SELECT master_create_distributed_table('people', 'id', 'append');
|
||||
master_create_distributed_table
|
||||
---------------------------------
|
||||
|
||||
(1 row)
|
||||
|
||||
-- create worker shards
|
||||
SELECT master_create_empty_shard('people');
|
||||
master_create_empty_shard
|
||||
---------------------------
|
||||
400000
|
||||
(1 row)
|
||||
|
||||
-- check shardstorage
|
||||
SELECT shardstorage FROM pg_dist_shard WHERE shardid = 400000;
|
||||
shardstorage
|
||||
--------------
|
||||
t
|
||||
(1 row)
|
||||
|
||||
-- create foreign table
|
||||
CREATE FOREIGN TABLE people_foreign (
|
||||
id bigint not null,
|
||||
firstname char(10) not null,
|
||||
lastname char(10) not null,
|
||||
age integer not null)
|
||||
SERVER file_server
|
||||
OPTIONS (format 'text', filename '', delimiter '|', null '');
|
||||
-- create distributed table
|
||||
SELECT master_create_distributed_table('people_foreign', 'id', 'append');
|
||||
master_create_distributed_table
|
||||
---------------------------------
|
||||
|
||||
(1 row)
|
||||
|
||||
-- create worker shards
|
||||
SELECT master_create_empty_shard('people_foreign');
|
||||
master_create_empty_shard
|
||||
---------------------------
|
||||
400001
|
||||
(1 row)
|
||||
|
||||
-- check shardstorage
|
||||
SELECT shardstorage FROM pg_dist_shard WHERE shardid = 400001;
|
||||
shardstorage
|
||||
--------------
|
||||
f
|
||||
(1 row)
|
||||
|
|
@ -1,53 +0,0 @@
|
|||
--
|
||||
-- MULTI_FDW_LARGE_SHARDID
|
||||
--
|
||||
|
||||
-- Stage data to distributed tables, and run TPC-H query #1 and #6. This test
|
||||
-- differs from previous tests in that it modifies the *internal* shardId
|
||||
-- generator, forcing the distributed database to use 64-bit shard identifiers.
|
||||
|
||||
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_shardid_seq RESTART 100200300400500;
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_jobid_seq RESTART 9000000;
|
||||
|
||||
|
||||
-- Stage additional data to start using large shard identifiers.
|
||||
|
||||
\STAGE lineitem FROM '@abs_srcdir@/data/lineitem.1.data'
|
||||
\STAGE lineitem FROM '@abs_srcdir@/data/lineitem.2.data'
|
||||
|
||||
-- Query #1 from the TPC-H decision support benchmark.
|
||||
|
||||
SELECT
|
||||
l_returnflag,
|
||||
l_linestatus,
|
||||
sum(l_quantity) as sum_qty,
|
||||
sum(l_extendedprice) as sum_base_price,
|
||||
sum(l_extendedprice * (1 - l_discount)) as sum_disc_price,
|
||||
sum(l_extendedprice * (1 - l_discount) * (1 + l_tax)) as sum_charge,
|
||||
avg(l_quantity) as avg_qty,
|
||||
avg(l_extendedprice) as avg_price,
|
||||
avg(l_discount) as avg_disc,
|
||||
count(*) as count_order
|
||||
FROM
|
||||
lineitem
|
||||
WHERE
|
||||
l_shipdate <= date '1998-12-01' - interval '90 days'
|
||||
GROUP BY
|
||||
l_returnflag,
|
||||
l_linestatus
|
||||
ORDER BY
|
||||
l_returnflag,
|
||||
l_linestatus;
|
||||
|
||||
-- Query #6 from the TPC-H decision support benchmark.
|
||||
|
||||
SELECT
|
||||
sum(l_extendedprice * l_discount) as revenue
|
||||
FROM
|
||||
lineitem
|
||||
WHERE
|
||||
l_shipdate >= date '1994-01-01'
|
||||
and l_shipdate < date '1994-01-01' + interval '1 year'
|
||||
and l_discount between 0.06 - 0.01 and 0.06 + 0.01
|
||||
and l_quantity < 24;
|
|
@ -1,22 +0,0 @@
|
|||
--
|
||||
-- MULTI_FDW_STAGE_DATA
|
||||
--
|
||||
|
||||
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_shardid_seq RESTART 330000;
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_jobid_seq RESTART 330000;
|
||||
|
||||
|
||||
-- Tests for staging foreign data in a distributed cluster.
|
||||
|
||||
\STAGE lineitem FROM '@abs_srcdir@/data/lineitem.1.data'
|
||||
\STAGE lineitem FROM '@abs_srcdir@/data/lineitem.2.data'
|
||||
|
||||
\STAGE orders FROM '@abs_srcdir@/data/orders.1.data'
|
||||
\STAGE orders FROM '@abs_srcdir@/data/orders.2.data'
|
||||
|
||||
SELECT set_config('citus.shard_replication_factor', '1', false);
|
||||
|
||||
\STAGE customer FROM '@abs_srcdir@/data/customer.1.data'
|
||||
\STAGE nation FROM '@abs_srcdir@/data/nation.data'
|
||||
\STAGE part FROM '@abs_srcdir@/data/part.data'
|
|
@ -1,26 +0,0 @@
|
|||
# ----------
|
||||
# $Id$
|
||||
#
|
||||
# Regression tests that exercise distributed foreign data wrappers functionality.
|
||||
# ----------
|
||||
|
||||
# ----------
|
||||
# All distributed tests depend on creating a distributed foreign table and uploading
|
||||
# data to it.
|
||||
# ----------
|
||||
test: multi_fdw_create_table
|
||||
test: multi_fdw_master_protocol
|
||||
test: multi_fdw_stage_data
|
||||
test: multi_fdw_storage_type
|
||||
|
||||
# ----------
|
||||
# Parallel TPC-H tests to check our distributed execution behavior
|
||||
# ----------
|
||||
test: multi_tpch_query1 multi_tpch_query3 multi_tpch_query6 multi_tpch_query10
|
||||
test: multi_tpch_query12 multi_tpch_query14 multi_tpch_query19
|
||||
|
||||
# ----------
|
||||
# multi_fdw_large_shardid loads more lineitem data using high shard identifiers, and must
|
||||
# come last
|
||||
# ----------
|
||||
test: multi_fdw_large_shardid
|
|
@ -1,60 +0,0 @@
|
|||
--
|
||||
-- MULTI_FDW_LARGE_SHARDID
|
||||
--
|
||||
-- Stage data to distributed tables, and run TPC-H query #1 and #6. This test
|
||||
-- differs from previous tests in that it modifies the *internal* shardId
|
||||
-- generator, forcing the distributed database to use 64-bit shard identifiers.
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_shardid_seq RESTART 100200300400500;
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_jobid_seq RESTART 9000000;
|
||||
-- Stage additional data to start using large shard identifiers.
|
||||
\STAGE lineitem FROM '@abs_srcdir@/data/lineitem.1.data'
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
||||
\STAGE lineitem FROM '@abs_srcdir@/data/lineitem.2.data'
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
||||
-- Query #1 from the TPC-H decision support benchmark.
|
||||
SELECT
|
||||
l_returnflag,
|
||||
l_linestatus,
|
||||
sum(l_quantity) as sum_qty,
|
||||
sum(l_extendedprice) as sum_base_price,
|
||||
sum(l_extendedprice * (1 - l_discount)) as sum_disc_price,
|
||||
sum(l_extendedprice * (1 - l_discount) * (1 + l_tax)) as sum_charge,
|
||||
avg(l_quantity) as avg_qty,
|
||||
avg(l_extendedprice) as avg_price,
|
||||
avg(l_discount) as avg_disc,
|
||||
count(*) as count_order
|
||||
FROM
|
||||
lineitem
|
||||
WHERE
|
||||
l_shipdate <= date '1998-12-01' - interval '90 days'
|
||||
GROUP BY
|
||||
l_returnflag,
|
||||
l_linestatus
|
||||
ORDER BY
|
||||
l_returnflag,
|
||||
l_linestatus;
|
||||
l_returnflag | l_linestatus | sum_qty | sum_base_price | sum_disc_price | sum_charge | avg_qty | avg_price | avg_disc | count_order
|
||||
--------------+--------------+-----------+----------------+----------------+------------------+---------------------+--------------------+------------------------+-------------
|
||||
A | F | 150930.00 | 227239747.26 | 215682574.1456 | 224342306.491846 | 25.6334918478260870 | 38593.707075407609 | 0.05055027173913043478 | 5888
|
||||
N | F | 4044.00 | 6205102.90 | 5905081.4236 | 6145285.541304 | 26.6052631578947368 | 40823.045394736842 | 0.05263157894736842105 | 152
|
||||
N | O | 299556.00 | 449413896.32 | 427269715.3708 | 444268143.859602 | 25.4594594594594595 | 38195.979629440762 | 0.04939486656467788543 | 11766
|
||||
R | F | 146312.00 | 217875959.46 | 207033247.3396 | 215487067.568656 | 25.2175112030334367 | 37551.871675284385 | 0.04983798690106859704 | 5802
|
||||
(4 rows)
|
||||
|
||||
-- Query #6 from the TPC-H decision support benchmark.
|
||||
SELECT
|
||||
sum(l_extendedprice * l_discount) as revenue
|
||||
FROM
|
||||
lineitem
|
||||
WHERE
|
||||
l_shipdate >= date '1994-01-01'
|
||||
and l_shipdate < date '1994-01-01' + interval '1 year'
|
||||
and l_discount between 0.06 - 0.01 and 0.06 + 0.01
|
||||
and l_quantity < 24;
|
||||
revenue
|
||||
-------------
|
||||
486555.5716
|
||||
(1 row)
|
||||
|
|
@ -1,30 +0,0 @@
|
|||
--
|
||||
-- MULTI_FDW_STAGE_DATA
|
||||
--
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_shardid_seq RESTART 330000;
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_jobid_seq RESTART 330000;
|
||||
-- Tests for staging foreign data in a distributed cluster.
|
||||
\STAGE lineitem FROM '@abs_srcdir@/data/lineitem.1.data'
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
||||
\STAGE lineitem FROM '@abs_srcdir@/data/lineitem.2.data'
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
||||
\STAGE orders FROM '@abs_srcdir@/data/orders.1.data'
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
||||
\STAGE orders FROM '@abs_srcdir@/data/orders.2.data'
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
||||
SELECT set_config('citus.shard_replication_factor', '1', false);
|
||||
set_config
|
||||
------------
|
||||
1
|
||||
(1 row)
|
||||
|
||||
\STAGE customer FROM '@abs_srcdir@/data/customer.1.data'
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
||||
\STAGE nation FROM '@abs_srcdir@/data/nation.data'
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
||||
\STAGE part FROM '@abs_srcdir@/data/part.data'
|
||||
NOTICE: extension "file_fdw" already exists, skipping
|
|
@ -135,14 +135,13 @@ for my $port (@workerPorts)
|
|||
system("rm", ('-rf', "tmp_check/worker.$port")) == 0 or die "Could not remove worker directory";
|
||||
}
|
||||
|
||||
# Prepare directory in which 'psql' is a wrapper around 'csql', which
|
||||
# also adds some variables to csql.
|
||||
# Prepare directory in which 'psql' has some helpful variables for locating the workers
|
||||
system("mkdir", ('-p', "tmp_check/tmp-bin")) == 0
|
||||
or die "Could not create tmp-bin directory";
|
||||
sysopen my $fh, "tmp_check/tmp-bin/psql", O_CREAT|O_TRUNC|O_RDWR, 0700
|
||||
or die "Could not create psql wrapper";
|
||||
print $fh "#!/bin/bash\n";
|
||||
print $fh "exec $bindir/csql ";
|
||||
print $fh "exec $bindir/psql ";
|
||||
print $fh "--variable=master_port=$masterPort ";
|
||||
for my $workeroff (0 .. $#workerPorts)
|
||||
{
|
||||
|
|
|
@ -4,8 +4,6 @@
|
|||
/multi_append_table_to_shard.sql
|
||||
/multi_copy.sql
|
||||
/multi_create_schema.sql
|
||||
/multi_fdw_large_shardid.sql
|
||||
/multi_fdw_stage_data.sql
|
||||
/multi_large_shardid.sql
|
||||
/multi_master_delete_protocol.sql
|
||||
/multi_outer_join.sql
|
||||
|
|
|
@ -1,86 +0,0 @@
|
|||
--
|
||||
-- MULTI_FDW_CREATE_TABLE
|
||||
--
|
||||
|
||||
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_shardid_seq RESTART 590000;
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_jobid_seq RESTART 590000;
|
||||
|
||||
|
||||
-- Create new table definitions for use in testing in distributed foreign data
|
||||
-- wrapper functionality.
|
||||
|
||||
SELECT fdwname FROM pg_foreign_data_wrapper;
|
||||
|
||||
CREATE SERVER file_server FOREIGN DATA WRAPPER file_fdw;
|
||||
|
||||
CREATE FOREIGN TABLE lineitem (
|
||||
l_orderkey bigint not null,
|
||||
l_partkey integer not null,
|
||||
l_suppkey integer not null,
|
||||
l_linenumber integer not null,
|
||||
l_quantity decimal(15, 2) not null,
|
||||
l_extendedprice decimal(15, 2) not null,
|
||||
l_discount decimal(15, 2) not null,
|
||||
l_tax decimal(15, 2) not null,
|
||||
l_returnflag char(1) not null,
|
||||
l_linestatus char(1) not null,
|
||||
l_shipdate date not null,
|
||||
l_commitdate date not null,
|
||||
l_receiptdate date not null,
|
||||
l_shipinstruct char(25) not null,
|
||||
l_shipmode char(10) not null,
|
||||
l_comment varchar(44) not null)
|
||||
SERVER file_server
|
||||
OPTIONS (format 'text', filename '', delimiter '|', null '');
|
||||
SELECT master_create_distributed_table('lineitem', 'l_orderkey', 'append');
|
||||
|
||||
CREATE FOREIGN TABLE orders (
|
||||
o_orderkey bigint not null,
|
||||
o_custkey integer not null,
|
||||
o_orderstatus char(1) not null,
|
||||
o_totalprice decimal(15,2) not null,
|
||||
o_orderdate date not null,
|
||||
o_orderpriority char(15) not null,
|
||||
o_clerk char(15) not null,
|
||||
o_shippriority integer not null,
|
||||
o_comment varchar(79) not null)
|
||||
SERVER file_server
|
||||
OPTIONS (format 'text', filename '', delimiter '|', null '');
|
||||
SELECT master_create_distributed_table('orders', 'o_orderkey', 'append');
|
||||
|
||||
CREATE FOREIGN TABLE customer (
|
||||
c_custkey integer not null,
|
||||
c_name varchar(25) not null,
|
||||
c_address varchar(40) not null,
|
||||
c_nationkey integer not null,
|
||||
c_phone char(15) not null,
|
||||
c_acctbal decimal(15,2) not null,
|
||||
c_mktsegment char(10) not null,
|
||||
c_comment varchar(117) not null)
|
||||
SERVER file_server
|
||||
OPTIONS (format 'text', filename '', delimiter '|', null '');
|
||||
SELECT master_create_distributed_table('customer', 'c_custkey', 'append');
|
||||
|
||||
CREATE FOREIGN TABLE nation (
|
||||
n_nationkey integer not null,
|
||||
n_name char(25) not null,
|
||||
n_regionkey integer not null,
|
||||
n_comment varchar(152))
|
||||
SERVER file_server
|
||||
OPTIONS (format 'text', filename '', delimiter '|', null '');
|
||||
SELECT master_create_distributed_table('nation', 'n_nationkey', 'append');
|
||||
|
||||
CREATE FOREIGN TABLE part (
|
||||
p_partkey integer not null,
|
||||
p_name varchar(55) not null,
|
||||
p_mfgr char(25) not null,
|
||||
p_brand char(10) not null,
|
||||
p_type varchar(25) not null,
|
||||
p_size integer not null,
|
||||
p_container char(10) not null,
|
||||
p_retailprice decimal(15,2) not null,
|
||||
p_comment varchar(23) not null)
|
||||
SERVER file_server
|
||||
OPTIONS (format 'text', filename '', delimiter '|', null '');
|
||||
SELECT master_create_distributed_table('part', 'p_partkey', 'append');
|
|
@ -1,17 +0,0 @@
|
|||
--
|
||||
-- MULTI_FDW_MASTER_PROTOCOL
|
||||
--
|
||||
|
||||
-- Tests that check the metadata returned by the master node.
|
||||
|
||||
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_shardid_seq RESTART 600000;
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_jobid_seq RESTART 600000;
|
||||
|
||||
|
||||
SELECT part_storage_type, part_key, part_replica_count, part_max_size,
|
||||
part_placement_policy FROM master_get_table_metadata('lineitem');
|
||||
|
||||
SELECT * FROM master_get_table_ddl_events('lineitem');
|
||||
|
||||
SELECT * FROM master_get_new_shardid();
|
|
@ -1,43 +0,0 @@
|
|||
--
|
||||
-- MULTI_FDW_STORAGE_TYPE
|
||||
--
|
||||
|
||||
-- Create two tables one regular and one foreign, then check whether
|
||||
-- shardstorage is correct
|
||||
|
||||
-- explicitly set shard id
|
||||
ALTER SEQUENCE pg_catalog.pg_dist_shardid_seq RESTART 400000;
|
||||
|
||||
-- create regular table
|
||||
CREATE TABLE people (
|
||||
id bigint not null,
|
||||
firstname char(10) not null,
|
||||
lastname char(10) not null,
|
||||
age integer not null);
|
||||
|
||||
-- create distributed table
|
||||
SELECT master_create_distributed_table('people', 'id', 'append');
|
||||
|
||||
-- create worker shards
|
||||
SELECT master_create_empty_shard('people');
|
||||
|
||||
-- check shardstorage
|
||||
SELECT shardstorage FROM pg_dist_shard WHERE shardid = 400000;
|
||||
|
||||
-- create foreign table
|
||||
CREATE FOREIGN TABLE people_foreign (
|
||||
id bigint not null,
|
||||
firstname char(10) not null,
|
||||
lastname char(10) not null,
|
||||
age integer not null)
|
||||
SERVER file_server
|
||||
OPTIONS (format 'text', filename '', delimiter '|', null '');
|
||||
|
||||
-- create distributed table
|
||||
SELECT master_create_distributed_table('people_foreign', 'id', 'append');
|
||||
|
||||
-- create worker shards
|
||||
SELECT master_create_empty_shard('people_foreign');
|
||||
|
||||
-- check shardstorage
|
||||
SELECT shardstorage FROM pg_dist_shard WHERE shardid = 400001;
|
Loading…
Reference in New Issue