Remove check-multi-fdw tests, nobody uses Citus with fdws

pull/737/head
Brian Cloutier 2016-08-26 10:41:33 +03:00
parent 2758af8f83
commit 640bb8863b
16 changed files with 4 additions and 545 deletions

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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)

View File

@ -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)

View File

@ -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)

View File

@ -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;

View File

@ -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'

View File

@ -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

View File

@ -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)

View File

@ -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

View File

@ -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)
{

View File

@ -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

View File

@ -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');

View File

@ -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();

View File

@ -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;