You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hawq.apache.org by "Lei Chang (JIRA)" <ji...@apache.org> on 2016/04/10 12:02:25 UTC
[jira] [Closed] (HAWQ-350) Disable some of installcheck tests due
to plpython is not installed by default
[ https://issues.apache.org/jira/browse/HAWQ-350?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Lei Chang closed HAWQ-350.
--------------------------
Resolution: Fixed
Fix Version/s: (was: backlog)
2.0.0
has been fixed in latest code.
> Disable some of installcheck tests due to plpython is not installed by default
> ------------------------------------------------------------------------------
>
> Key: HAWQ-350
> URL: https://issues.apache.org/jira/browse/HAWQ-350
> Project: Apache HAWQ
> Issue Type: Bug
> Components: Tests
> Affects Versions: 2.0.0-beta-incubating
> Reporter: Ruilong Huo
> Assignee: Ruilong Huo
> Fix For: 2.0.0
>
>
> We have 3 three suites in installcheck test failes:
> 1. subplan and set_functions fail due to plpython is not installed by default
> 2. exttab1 fails due to gpfdist changes
> {noformat}
> [gpadmin@localhost incubator-hawq]$ make installcheck-good
> ============== dropping database "regression" ==============
> NOTICE: database "regression" does not exist, skipping
> DROP DATABASE
> ============== creating database "regression" ==============
> CREATE DATABASE
> ALTER DATABASE
> ============== checking optimizer status ==============
> Optimizer disabled. Using planner answer files
> ============== running regression test queries ==============
> test type_sanity ... ok (0.05 sec)
> test querycontext ... ok (8.19 sec)
> test errortbl ... ok (4.80 sec)
> test goh_create_type_composite ... ok (3.10 sec)
> test goh_partition ... ok (37.64 sec)
> test goh_toast ... ok (1.25 sec)
> test goh_database ... ok (2.84 sec)
> test goh_gp_dist_random ... ok (0.24 sec)
> test gpsql_alter_table ... ok (12.11 sec)
> test goh_portals ... ok (8.25 sec)
> test goh_prepare ... ok (7.08 sec)
> test goh_alter_owner ... ok (0.25 sec)
> test boolean ... ok (3.18 sec)
> test char ... ok (2.58 sec)
> test name ... ok (2.29 sec)
> test varchar ... ok (2.58 sec)
> test text ... ok (0.58 sec)
> test int2 ... ok (4.35 sec)
> test int4 ... ok (5.63 sec)
> test int8 ... ok (4.17 sec)
> test oid ... ok (2.01 sec)
> test float4 ... ok (2.89 sec)
> test date ... ok (2.45 sec)
> test time ... ok (1.98 sec)
> test insert ... ok (4.44 sec)
> test create_function_1 ... ok (0.01 sec)
> test function ... ok (8.10 sec)
> test function_extensions ... ok (0.03 sec)
> test subplan ... FAILED (9.59 sec)
> test create_table_test ... ok (0.25 sec)
> test create_table_distribution ... ok (3.20 sec)
> test copy ... ok (35.09 sec)
> test create_aggregate ... ok (9.77 sec)
> test aggregate_with_groupingsets ... ok (0.81 sec)
> test information_schema ... ok (0.09 sec)
> test transactions ... ok (6.32 sec)
> test temp ... ok (4.09 sec)
> test set_functions ... FAILED (5.86 sec)
> test sequence ... ok (1.19 sec)
> test polymorphism ... ok (3.99 sec)
> test rowtypes ... ok (2.67 sec)
> test exttab1 ... FAILED (13.85 sec)
> test gpcopy ... ok (29.14 sec)
> test madlib_svec_test ... ok (1.57 sec)
> test agg_derived_win ... ok (3.18 sec)
> test parquet_ddl ... ok (8.29 sec)
> test parquet_multipletype ... ok (2.81 sec)
> test parquet_pagerowgroup_size ... ok (14.40 sec)
> test parquet_compression ... ok (13.93 sec)
> test parquet_subpartition ... ok (7.24 sec)
> test caqlinmem ... ok (0.14 sec)
> test hcatalog_lookup ... ok (2.02 sec)
> test json_load ... ok (0.42 sec)
> test external_oid ... ok (0.79 sec)
> test validator_function ... ok (0.03 sec)
> =======================
> 3 of 55 tests failed.
> =======================
> The differences that caused some tests to fail can be viewed in the
> file "./regression.diffs". A copy of the test summary that you see
> above is saved in the file "./regression.out".
> {noformat}
> {noformat}
> [gpadmin@localhost incubator-hawq]$ cat src/test/regress/regression.diffs
> *** ./expected/subplan.out 2016-01-18 05:36:05.000680391 -0800
> --- ./results/subplan.out 2016-01-18 05:36:05.048608087 -0800
> ***************
> *** 20,25 ****
> --- 20,26 ----
> insert into i4 select i, i-10 from generate_series(-5,0)i;
> DROP LANGUAGE IF EXISTS plpythonu CASCADE;
> CREATE LANGUAGE plpythonu;
> + ERROR: could not access file "$libdir/plpython": No such file or directory
> create or replace function twice(int) returns int as $$
> select 2 * $1;
> $$ language sql;
> ***************
> *** 34,56 ****
> else:
> return x * 3
> $$ language plpythonu;
> select t1.* from t1 where (t1.a, t1.b) not in
> (select twice(i3.a), i3.b from i3 union select i4.a, thrice(i4.b) from i4);
> ! a | b
> ! ----+----
> ! 0 | 10
> ! 1 | 11
> ! 2 | 12
> ! 3 | 13
> ! 4 | 14
> ! 5 | 15
> ! -1 | 9
> ! -2 | 8
> ! -3 | 7
> ! -4 | 6
> ! -5 | 5
> ! (11 rows)
> !
> select t1.* from t1 where (t1.a, half(t1.b)) not in
> (select twice(i3.a), i3.b from i3 union all select i4.a, i4.b from i4);
> a | b
> --- 35,48 ----
> else:
> return x * 3
> $$ language plpythonu;
> + ERROR: language "plpythonu" does not exist
> + HINT: Use CREATE LANGUAGE to load the language into the database.
> select t1.* from t1 where (t1.a, t1.b) not in
> (select twice(i3.a), i3.b from i3 union select i4.a, thrice(i4.b) from i4);
> ! ERROR: function thrice(integer) does not exist
> ! LINE 2: ...lect twice(i3.a), i3.b from i3 union select i4.a, thrice(i4....
> ! ^
> ! HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> select t1.* from t1 where (t1.a, half(t1.b)) not in
> (select twice(i3.a), i3.b from i3 union all select i4.a, i4.b from i4);
> a | b
> ***************
> *** 59,103 ****
> select t1.a, half(t1.b) from t1 where (t1.a, t1.b) not in
> (select 1, thrice(2) union select 3, 4);
> ! a | half
> ! ----+------
> ! 0 | 5
> ! 1 | 5
> ! 2 | 6
> ! 3 | 6
> ! 4 | 7
> ! 5 | 7
> ! -1 | 4
> ! -2 | 4
> ! -3 | 3
> ! -4 | 3
> ! -5 | 2
> ! (11 rows)
> !
> select t1.* from t1 where (half(t1.a), t1.b) not in
> (select thrice(i3.a), i3.b from i3 union select i4.a, i4.b from i4);
> ! a | b
> ! ---+---
> ! (0 rows)
> !
> select t1.* from t1 where (t1.a, t1.b) not in
> (select i3.a, half(i3.b) from i3 union all
> select i4.a, thrice(i4.b) from i4);
> ! a | b
> ! ----+----
> ! 0 | 10
> ! 1 | 11
> ! 2 | 12
> ! 3 | 13
> ! 4 | 14
> ! 5 | 15
> ! -1 | 9
> ! -2 | 8
> ! -3 | 7
> ! -4 | 6
> ! -5 | 5
> ! (11 rows)
> !
> -- Two SubPlan nodes
> select t1.* from t1 where (t1.a, t1.b) not in (select i3.a, i3.b from i3) or
> (t1.a, t1.b) not in (select i4.a, i4.b from i4);
> --- 51,73 ----
> select t1.a, half(t1.b) from t1 where (t1.a, t1.b) not in
> (select 1, thrice(2) union select 3, 4);
> ! ERROR: function thrice(integer) does not exist
> ! LINE 2: (select 1, thrice(2) union select 3, 4);
> ! ^
> ! HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> select t1.* from t1 where (half(t1.a), t1.b) not in
> (select thrice(i3.a), i3.b from i3 union select i4.a, i4.b from i4);
> ! ERROR: function thrice(integer) does not exist
> ! LINE 2: (select thrice(i3.a), i3.b from i3 union select i4.a, i4....
> ! ^
> ! HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> select t1.* from t1 where (t1.a, t1.b) not in
> (select i3.a, half(i3.b) from i3 union all
> select i4.a, thrice(i4.b) from i4);
> ! ERROR: function thrice(integer) does not exist
> ! LINE 3: select i4.a, thrice(i4.b) from i4);
> ! ^
> ! HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> -- Two SubPlan nodes
> select t1.* from t1 where (t1.a, t1.b) not in (select i3.a, i3.b from i3) or
> (t1.a, t1.b) not in (select i4.a, i4.b from i4);
> ***************
> *** 120,158 ****
> select t1.* from t1 where
> (t1.a, twice(t1.b)) not in (select thrice(i3.a), i3.b from i3) or
> (t1.a, half(t1.b)) not in (select i4.a, i4.b from i4);
> ! a | b
> ! ----+----
> ! 0 | 10
> ! 1 | 11
> ! 2 | 12
> ! 3 | 13
> ! 4 | 14
> ! 5 | 15
> ! -1 | 9
> ! -2 | 8
> ! -3 | 7
> ! -4 | 6
> ! -5 | 5
> ! (11 rows)
> !
> -- Two SubPlan nodes
> select t1.* from t1 where (t1.a, t1.b) not in (select i3.a,i3.b from i3) or
> (t1.a, half(t1.b)) not in (select thrice(i4.a), i4.b from i4);
> ! a | b
> ! ----+----
> ! 0 | 10
> ! 1 | 11
> ! 2 | 12
> ! 3 | 13
> ! 4 | 14
> ! 5 | 15
> ! -1 | 9
> ! -2 | 8
> ! -3 | 7
> ! -4 | 6
> ! -5 | 5
> ! (11 rows)
> !
> -- SUITE: diff-rel-cols-not-in
> truncate table t1;
> create table t2(a int, b int) distributed by (a);
> --- 90,106 ----
> select t1.* from t1 where
> (t1.a, twice(t1.b)) not in (select thrice(i3.a), i3.b from i3) or
> (t1.a, half(t1.b)) not in (select i4.a, i4.b from i4);
> ! ERROR: function thrice(integer) does not exist
> ! LINE 2: (t1.a, twice(t1.b)) not in (select thrice(i3.a), i3.b fro...
> ! ^
> ! HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> -- Two SubPlan nodes
> select t1.* from t1 where (t1.a, t1.b) not in (select i3.a,i3.b from i3) or
> (t1.a, half(t1.b)) not in (select thrice(i4.a), i4.b from i4);
> ! ERROR: function thrice(integer) does not exist
> ! LINE 2: (t1.a, half(t1.b)) not in (select thrice(i4.a), i4.b from...
> ! ^
> ! HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> -- SUITE: diff-rel-cols-not-in
> truncate table t1;
> create table t2(a int, b int) distributed by (a);
> ***************
> *** 173,204 ****
> return x * 3
> return 0
> $$ language plpythonu;
> select t1.a, twice(t2.b) from t1, t2 where t1.a = half(t2.a) or
> ((t1.a, t2.b) not in (select i1.a, thrice(i1.b) from i1));
> ! a | twice
> ! ----+-------
> ! 0 | -10
> ! 0 | -12
> ! 0 | -14
> ! 0 | -16
> ! 1 | -10
> ! 1 | -12
> ! 1 | -14
> ! 1 | -16
> ! 2 | -10
> ! 2 | -12
> ! 2 | -14
> ! 2 | -16
> ! 3 | -10
> ! 3 | -12
> ! 3 | -14
> ! 3 | -16
> ! -1 | -10
> ! -1 | -12
> ! -1 | -14
> ! -1 | -16
> ! (20 rows)
> !
> select t1.a, t2.b from t1 left join t2 on
> (t1.a = t2.a and ((t1.a, half(t2.b)) not in (select i1.a, i1.b from i1)));
> a | b
> --- 121,134 ----
> return x * 3
> return 0
> $$ language plpythonu;
> + ERROR: language "plpythonu" does not exist
> + HINT: Use CREATE LANGUAGE to load the language into the database.
> select t1.a, twice(t2.b) from t1, t2 where t1.a = half(t2.a) or
> ((t1.a, t2.b) not in (select i1.a, thrice(i1.b) from i1));
> ! ERROR: function thrice(integer) does not exist
> ! LINE 2: ((t1.a, t2.b) not in (select i1.a, thrice(i1.b) from i1))...
> ! ^
> ! HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> select t1.a, t2.b from t1 left join t2 on
> (t1.a = t2.a and ((t1.a, half(t2.b)) not in (select i1.a, i1.b from i1)));
> a | b
> ***************
> *** 212,253 ****
> select t1.a, t2.b from t1, t2 where t1.a = t2.a or
> ((t1.a, t2.b) not in (select thrice(i1.a), i1.b from i1));
> ! a | b
> ! ----+----
> ! 0 | -5
> ! 0 | -6
> ! 0 | -7
> ! 0 | -8
> ! 1 | -5
> ! 1 | -6
> ! 1 | -7
> ! 1 | -8
> ! 2 | -5
> ! 2 | -6
> ! 2 | -7
> ! 2 | -8
> ! 3 | -5
> ! 3 | -6
> ! 3 | -7
> ! 3 | -8
> ! -1 | -5
> ! -1 | -6
> ! -1 | -7
> ! -1 | -8
> ! (20 rows)
> !
> select t1.a, t2.b from t1 left join t2 on
> (thrice(t1.a) = thrice(t2.a) and
> ((t1.a, t2.b) not in (select i1.a, i1.b from i1)));
> ! a | b
> ! ----+----
> ! 0 |
> ! 1 |
> ! 2 | -8
> ! 3 |
> ! -1 |
> ! (5 rows)
> !
> select t1.a, t2.b from t1, t2 where t1.a = t2.a or
> ((t1.a, t2.b) not in (select i1.a, half(i1.b) from i1));
> a | b
> --- 142,158 ----
> select t1.a, t2.b from t1, t2 where t1.a = t2.a or
> ((t1.a, t2.b) not in (select thrice(i1.a), i1.b from i1));
> ! ERROR: function thrice(integer) does not exist
> ! LINE 2: ((t1.a, t2.b) not in (select thrice(i1.a), i1.b from i1))...
> ! ^
> ! HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> select t1.a, t2.b from t1 left join t2 on
> (thrice(t1.a) = thrice(t2.a) and
> ((t1.a, t2.b) not in (select i1.a, i1.b from i1)));
> ! ERROR: function thrice(integer) does not exist
> ! LINE 2: (thrice(t1.a) = thrice(t2.a) and
> ! ^
> ! HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> select t1.a, t2.b from t1, t2 where t1.a = t2.a or
> ((t1.a, t2.b) not in (select i1.a, half(i1.b) from i1));
> a | b
> ***************
> *** 277,291 ****
> select t1.a, t2.b from t1 left join t2 on
> (t1.a = t2.a and
> ((t1.a, twice(t2.b)) not in (select i1.a, thrice(i1.b) from i1)));
> ! a | b
> ! ----+----
> ! 0 |
> ! 1 |
> ! 2 | -8
> ! 3 | -7
> ! -1 |
> ! (5 rows)
> !
> -- From MPP-2869
> create table bug_data (domain integer, class integer, attr text, value integer)
> distributed by (domain);
> --- 182,191 ----
> select t1.a, t2.b from t1 left join t2 on
> (t1.a = t2.a and
> ((t1.a, twice(t2.b)) not in (select i1.a, thrice(i1.b) from i1)));
> ! ERROR: function thrice(integer) does not exist
> ! LINE 3: ((t1.a, twice(t2.b)) not in (select i1.a, thrice(i1.b)...
> ! ^
> ! HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> -- From MPP-2869
> create table bug_data (domain integer, class integer, attr text, value integer)
> distributed by (domain);
> ***************
> *** 296,304 ****
> --- 196,210 ----
> create table foo as
> SELECT attr, class, (select thrice(count(distinct class)::int) from bug_data)
> as dclass FROM bug_data GROUP BY attr, class distributed by (attr);
> + ERROR: function thrice(integer) does not exist
> + LINE 2: SELECT attr, class, (select thrice(count(distinct class)::in...
> + ^
> + HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> -- Query from GPSQL-1260, produces InitPlan and a SubPlan.
> create or replace function nop(a int) returns int as $$ return a $$
> language plpythonu;
> + ERROR: language "plpythonu" does not exist
> + HINT: Use CREATE LANGUAGE to load the language into the database.
> create table toy as select generate_series(1, 10) i distributed by (i);
> select * from toy; -- only for debugging
> i
> ***************
> *** 316,326 ****
> (10 rows)
> select array(select nop(i) from toy order by i);
> ! ?column?
> ! ------------------------
> ! {1,2,3,4,5,6,7,8,9,10}
> ! (1 row)
> !
> GP_IGNORE:-- start_ignore
> GP_IGNORE:drop schema subplan_tests cascade;
> GP_IGNORE:NOTICE: drop cascades to append only table toy
> --- 222,231 ----
> (10 rows)
> select array(select nop(i) from toy order by i);
> ! ERROR: function nop(integer) does not exist
> ! LINE 1: select array(select nop(i) from toy order by i);
> ! ^
> ! HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> GP_IGNORE:-- start_ignore
> GP_IGNORE:drop schema subplan_tests cascade;
> GP_IGNORE:NOTICE: drop cascades to append only table toy
> ======================================================================
> *** ./expected/set_functions.out 2016-01-18 05:37:12.899006690 -0800
> --- ./results/set_functions.out 2016-01-18 05:37:12.944966492 -0800
> ***************
> *** 7,12 ****
> --- 7,13 ----
> set search_path=set_functions;
> DROP LANGUAGE IF EXISTS plpythonu CASCADE;
> CREATE LANGUAGE plpythonu;
> + ERROR: could not access file "$libdir/plpython": No such file or directory
> CREATE TABLE foo2(fooid int, f2 int);
> INSERT INTO foo2 VALUES(1, 11);
> INSERT INTO foo2 VALUES(2, 22);
> ***************
> *** 68,143 ****
> for i in range(1, (1 << len(x)) - 2):
> yield subset(x, i)
> $$ language plpythonu strict;
> select x[1] || ' => ' || x[2] from combination('a,b,c,d') x;
> ! ?column?
> ! --------------
> ! a => b, c, d
> ! a, b => c, d
> ! a, b, c => d
> ! a, b, d => c
> ! a, c => b, d
> ! a, c, d => b
> ! a, d => b, c
> ! b => a, c, d
> ! b, c => a, d
> ! b, d => a, c
> ! c => a, b, d
> ! c, d => a, b
> ! d => a, b, c
> ! (13 rows)
> !
> CREATE TABLE rules(rule text) distributed by (rule);
> insert into rules values('a,b,c');
> insert into rules values('d,e');
> insert into rules values('f,g,h,i,j');
> insert into rules values('k,l,m');
> SELECT rule, combination(rule) from rules order by 1,2;
> ! rule | combination
> ! -----------+--------------------
> ! a,b,c | {a,"b, c"}
> ! a,b,c | {"a, b",c}
> ! a,b,c | {"a, c",b}
> ! a,b,c | {b,"a, c"}
> ! a,b,c | {c,"a, b"}
> ! d,e | {d,e}
> ! f,g,h,i,j | {f,"g, h, i, j"}
> ! f,g,h,i,j | {"f, g","h, i, j"}
> ! f,g,h,i,j | {"f, g, h","i, j"}
> ! f,g,h,i,j | {"f, g, h, i",j}
> ! f,g,h,i,j | {"f, g, h, j",i}
> ! f,g,h,i,j | {"f, g, i","h, j"}
> ! f,g,h,i,j | {"f, g, i, j",h}
> ! f,g,h,i,j | {"f, g, j","h, i"}
> ! f,g,h,i,j | {"f, h","g, i, j"}
> ! f,g,h,i,j | {"f, h, i","g, j"}
> ! f,g,h,i,j | {"f, h, i, j",g}
> ! f,g,h,i,j | {"f, h, j","g, i"}
> ! f,g,h,i,j | {"f, i","g, h, j"}
> ! f,g,h,i,j | {"f, i, j","g, h"}
> ! f,g,h,i,j | {"f, j","g, h, i"}
> ! f,g,h,i,j | {g,"f, h, i, j"}
> ! f,g,h,i,j | {"g, h","f, i, j"}
> ! f,g,h,i,j | {"g, h, i","f, j"}
> ! f,g,h,i,j | {"g, h, j","f, i"}
> ! f,g,h,i,j | {"g, i","f, h, j"}
> ! f,g,h,i,j | {"g, i, j","f, h"}
> ! f,g,h,i,j | {"g, j","f, h, i"}
> ! f,g,h,i,j | {h,"f, g, i, j"}
> ! f,g,h,i,j | {"h, i","f, g, j"}
> ! f,g,h,i,j | {"h, i, j","f, g"}
> ! f,g,h,i,j | {"h, j","f, g, i"}
> ! f,g,h,i,j | {i,"f, g, h, j"}
> ! f,g,h,i,j | {"i, j","f, g, h"}
> ! f,g,h,i,j | {j,"f, g, h, i"}
> ! k,l,m | {k,"l, m"}
> ! k,l,m | {"k, l",m}
> ! k,l,m | {"k, m",l}
> ! k,l,m | {l,"k, m"}
> ! k,l,m | {m,"k, l"}
> ! (40 rows)
> !
> DROP TABLE IF EXISTS foo;
> CREATE TABLE foo AS SELECT rule, combination(rule) from rules distributed by (rule);
> -- UDT as argument/return type of set returning UDF
> CREATE TYPE r_type as (a int, b text);
> CREATE FUNCTION f1(x r_type) returns setof text as $$ SELECT $1.b from generate_series(1, $1.a) $$ language sql;
> --- 69,97 ----
> for i in range(1, (1 << len(x)) - 2):
> yield subset(x, i)
> $$ language plpythonu strict;
> + ERROR: language "plpythonu" does not exist
> + HINT: Use CREATE LANGUAGE to load the language into the database.
> select x[1] || ' => ' || x[2] from combination('a,b,c,d') x;
> ! ERROR: function combination(unknown) does not exist
> ! LINE 1: select x[1] || ' => ' || x[2] from combination('a,b,c,d') x;
> ! ^
> ! HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> CREATE TABLE rules(rule text) distributed by (rule);
> insert into rules values('a,b,c');
> insert into rules values('d,e');
> insert into rules values('f,g,h,i,j');
> insert into rules values('k,l,m');
> SELECT rule, combination(rule) from rules order by 1,2;
> ! ERROR: function combination(text) does not exist
> ! LINE 1: SELECT rule, combination(rule) from rules order by 1,2;
> ! ^
> ! HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> DROP TABLE IF EXISTS foo;
> CREATE TABLE foo AS SELECT rule, combination(rule) from rules distributed by (rule);
> + ERROR: function combination(text) does not exist
> + LINE 1: CREATE TABLE foo AS SELECT rule, combination(rule) from rule...
> + ^
> + HINT: No function matches the given name and argument types. You may need to add explicit type casts.
> -- UDT as argument/return type of set returning UDF
> CREATE TYPE r_type as (a int, b text);
> CREATE FUNCTION f1(x r_type) returns setof text as $$ SELECT $1.b from generate_series(1, $1.a) $$ language sql;
> ======================================================================
> *** ./expected/exttab1.out 2016-01-18 05:37:35.792982848 -0800
> --- ./results/exttab1.out 2016-01-18 05:37:35.859924298 -0800
> ***************
> *** 608,615 ****
> --drop foreign table ext; -- should fail (wrong object)
> --drop external table ext;
> ----------------------------------------------------------------------
> ! r_name
> ! MIDDLE EAST
> --
> --
> --
> --- 609,616 ----
> --drop foreign table ext; -- should fail (wrong object)
> --drop external table ext;
> ----------------------------------------------------------------------
> ! x
> ! Okay, gpfdist version "2.0.0.0_beta build dev" is running on localhost:7070.
> --
> --
> --
> ***************
> *** 671,681 ****
> -- in between runs, so we don't check for count(*), and instead check for distinct.
> -- negative
> -- positive
> ! ---------------------------
> ----------------------------------------------------------------------
> ! ERROR: ON clause may not be used with a writable external table
> ERROR: it is not possible to read from a WRITABLE external table.
> ERROR: location uri "gpfdist://localhost:7070/wet.out" appears more than once
> ERROR: the file protocol for external tables is deprecated
> HINT: Create the table as READABLE instead
> HINT: use the gpfdist protocol or COPY FROM instead
> --- 672,683 ----
> -- in between runs, so we don't check for count(*), and instead check for distinct.
> -- negative
> -- positive
> ! -- start_ignore
> ----------------------------------------------------------------------
> ! ------------------------------------------------------------------------------
> ERROR: it is not possible to read from a WRITABLE external table.
> ERROR: location uri "gpfdist://localhost:7070/wet.out" appears more than once
> + ERROR: the ON segment syntax for writable external tables is deprecated
> ERROR: the file protocol for external tables is deprecated
> HINT: Create the table as READABLE instead
> HINT: use the gpfdist protocol or COPY FROM instead
> ***************
> *** 690,720 ****
> create writable external table wet_pos3(like wet_pos2) location('gpfdist://localhost:7070/wet.out') format 'text' distributed by(a,b);
> create writable external table wet_region(like reg_region) location('gpfdist://localhost:7070/wet_region.out') format 'text';
> create writable external web table wet_pos5(a text, b text) execute 'some command' on segment 0 format 'text';
> select * from wet_pos1;
> (1 row)
> ! GP_IGNORE:-- start_ignore
> ! GP_IGNORE:select * from gpfdist_status;
> ! GP_IGNORE: x
> ! GP_IGNORE:-------------------------------------------------------------------------
> ! GP_IGNORE: Okay, gpfdist version "2.0.0.0 build dev" is running on localhost:7070.
> ! GP_IGNORE:(1 row)
> ! GP_IGNORE:
> ! GP_IGNORE:select * from gpfdist_stop;
> ! GP_IGNORE: x
> ! GP_IGNORE:-------------
> ! GP_IGNORE: stopping...
> ! GP_IGNORE:(1 row)
> ! GP_IGNORE:
> ! GP_IGNORE:select * from gpfdist_status;
> ! GP_IGNORE: x
> ! GP_IGNORE:------------------------------------------------------
> ! GP_IGNORE: Error: gpfdist is not running (reason: socket error)
> ! GP_IGNORE: Exit: 1
> ! GP_IGNORE:
> ! GP_IGNORE:(3 rows)
> ! GP_IGNORE:
> ! GP_IGNORE:-- end_ignore
> --
> -- get an error for missing gpfdist
> --
> --- 692,716 ----
> create writable external table wet_pos3(like wet_pos2) location('gpfdist://localhost:7070/wet.out') format 'text' distributed by(a,b);
> create writable external table wet_region(like reg_region) location('gpfdist://localhost:7070/wet_region.out') format 'text';
> create writable external web table wet_pos5(a text, b text) execute 'some command' on segment 0 format 'text';
> + select * from gpfdist_status;
> select * from wet_pos1;
> (1 row)
> ! select * from gpfdist_stop;
> ! x
> ! -------------
> ! stopping...
> ! (1 row)
> !
> ! select * from gpfdist_status;
> ! x
> ! ------------------------------------------------------
> !
> ! Error: gpfdist is not running (reason: socket error)
> ! Exit: 1
> ! (3 rows)
> !
> ! -- end_ignore
> --
> -- get an error for missing gpfdist
> --
> ======================================================================
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)