Changeset: 1c69475ca649 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1c69475ca649 Modified Files: sql/test/BugTracker-2014/Tests/All sql/test/pg_regress/Tests/All sql/test/pg_regress/Tests/case.stable.err sql/test/pg_regress/Tests/case.stable.out sql/test/pg_regress/Tests/random.sql Branch: default Log Message:
Update on the pg-regression suite. diffs (truncated from 512 to 300 lines): diff --git a/sql/test/BugTracker-2014/Tests/All b/sql/test/BugTracker-2014/Tests/All --- a/sql/test/BugTracker-2014/Tests/All +++ b/sql/test/BugTracker-2014/Tests/All @@ -50,3 +50,4 @@ insert_into_temp_table.Bug-3600 queueError.Bug-3604 querylog.Bug-3607 fk-property-assert.Bug-3612 +coalesce.Bug-3616 diff --git a/sql/test/pg_regress/Tests/All b/sql/test/pg_regress/Tests/All --- a/sql/test/pg_regress/Tests/All +++ b/sql/test/pg_regress/Tests/All @@ -70,15 +70,15 @@ select_into #ToDo select_having #ToDo subselect #ToDo union -#ToDo case +case #ToDo join #ToDo aggregates #ToDo transactions #ToDo random #ToDo portals arrays -#ToDo btree_index -#ToDo hash_index +#btree_index [MK]MonetDB does not support construction of btrees +#hash_index [MK]MonetDB does not support hash index management by the user #ToDo update #ToDo namespace #ToDo privileges @@ -86,22 +86,22 @@ arrays #ToDo select_views #ToDo portals_p2 #ToDo foreign_key -#ToDo cluster -loadwisconsin -limit +#cluster [MK]MonetDB does not support clustering of tables +loadwisconsin #[MK] copied from benchmarks +limit #[MK] #ToDo plpgsql #ToDo copy2 #ToDo temp -#ToDo domain +#ToDo domain [MK] MonetDB does not support type/domain/object system #ToDo rangefuncs -#ToDo prepare +#ToDo prepare [MK] seems like a useful feature without_oid #ToDo conversion -#ToDo truncate +#ToDo truncate [MK] a combination of a DROP TABLE followed by its CREATE table alter_table #ToDo sequence #ToDo polymorphism -#ToDo rowtypes +#rowtypes [MK] MonetDB does not support object type definitions #ToDo stats # these four were in a 2005 pgregress set, but are no longer diff --git a/sql/test/pg_regress/Tests/case.stable.err b/sql/test/pg_regress/Tests/case.stable.err --- a/sql/test/pg_regress/Tests/case.stable.err +++ b/sql/test/pg_regress/Tests/case.stable.err @@ -29,31 +29,32 @@ stderr of test 'case` in directory 'sql/ # 17:11:19 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-1142" "--port=38959" # 17:11:19 > -#-- -#-- CASE -#-- Test the case statement -#-- -#-- -#-- Simplest examples without tables -#-- -#-- Test for cases involving untyped literals in test expression -#-- -#-- Examples of targets involving tables -#-- -#-- -#-- Examples of qualifications involving tables -#-- -#-- -#-- NULLIF() and COALESCE() -#-- Shorthand forms for typical CASE constructs -#-- defined in the SQL92 standard. -#-- -#-- -#-- Examples of updates involving tables -#-- -#-- -#-- Clean up -#-- +MAPI = (monetdb) /var/tmp/mtest-14363/.s.monetdb.36251 +QUERY = SELECT CASE 'a' WHEN 'a' THEN 1 ELSE 2 COMMIT; +ERROR = !syntax error, unexpected COMMIT, expecting END in: "select case 'a' when 'a' then 1 else 2 commit" +MAPI = (monetdb) /var/tmp/mtest-14363/.s.monetdb.36251 +QUERY = UPDATE CASE_TBL + SET i = CASE WHEN i >= 3 THEN (- i) + ELSE (2 * i) COMMIT; +ERROR = !syntax error, unexpected COMMIT, expecting END in: "update case_tbl + ! set i = case when i >= 3 then (- i) + ! else (2 * " +MAPI = (monetdb) /var/tmp/mtest-14363/.s.monetdb.36251 +QUERY = UPDATE CASE_TBL + SET i = CASE WHEN i >= 2 THEN (2 * i) + ELSE (3 * i) COMMIT; +ERROR = !syntax error, unexpected COMMIT, expecting END in: "update case_tbl + ! set i = case when i >= 2 then (2 * i) + ! else (3 " +MAPI = (monetdb) /var/tmp/mtest-14363/.s.monetdb.36251 +QUERY = UPDATE CASE_TBL + SET i = CASE WHEN b.i >= 2 THEN (2 * j) + ELSE (3 * j) END + FROM CASE2_TBL b + WHERE j = -CASE_TBL.i; +ERROR = !syntax error, unexpected FROM, expecting SCOLON in: "update case_tbl + ! set i = case when b.i >= 2 then (2 * j) + ! else (" # 17:11:19 > # 17:11:19 > "Done." diff --git a/sql/test/pg_regress/Tests/case.stable.out b/sql/test/pg_regress/Tests/case.stable.out --- a/sql/test/pg_regress/Tests/case.stable.out +++ b/sql/test/pg_regress/Tests/case.stable.out @@ -65,78 +65,62 @@ Ready. # CASE # WHEN 1 < 2 THEN 3 # END AS "Simple WHEN"; -% sys.L0, sys.L0 # table_name +% .L, .L # table_name % One, Simple WHEN # name -% ?, ? # type -% ?, ? # length -[ 3, 3 ] - +% char, tinyint # type +% 1, 1 # length +[ "3", 3 ] #SELECT '<NULL>' AS "One", # CASE # WHEN 1 > 2 THEN 3 # END AS "Simple default"; -% sys.L0, sys.L0 # table_name +% .L, .L # table_name % One, Simple default # name -% ?, ? # type -% ?, ? # length -[ "<NULL>", "" ] - +% char, tinyint # type +% 6, 4 # length +[ "<NULL>", NULL ] #SELECT '3' AS "One", # CASE # WHEN 1 < 2 THEN 3 # ELSE 4 # END AS "Simple ELSE"; -% sys.L0, sys.L0 # table_name +% .L, .L # table_name % One, Simple ELSE # name -% ?, ? # type -% ?, ? # length -[ 3, 3 ] - +% char, tinyint # type +% 1, 1 # length +[ "3", 3 ] #SELECT '4' AS "One", # CASE # WHEN 1 > 2 THEN 3 # ELSE 4 # END AS "ELSE default"; -% sys.L0, sys.L0 # table_name +% .L, .L # table_name % One, ELSE default # name -% ?, ? # type -% ?, ? # length -[ 4, 4 ] - +% char, tinyint # type +% 1, 1 # length +[ "4", 4 ] #SELECT '6' AS "One", # CASE # WHEN 1 > 2 THEN 3 # WHEN 4 < 5 THEN 6 # ELSE 7 # END AS "Two WHEN with default"; -% sys.L0, sys.L0 # table_name +% .L, .L # table_name % One, Two WHEN with default # name -% ?, ? # type -% ?, ? # length -[ 6, 6 ] - -#-- Test for cases involving untyped literals in test expression -#SELECT CASE 'a' WHEN 'a' THEN 1 ELSE 2 COMMIT; -% sys.L0 # table_name -% case # name -% ? # type -% ? # length -[ 1 ] - -#-- -#-- Examples of targets involving tables -#-- +% char, tinyint # type +% 1, 1 # length +[ "6", 6 ] #SELECT '' AS "Five", # CASE # WHEN i >= 3 THEN i # END AS ">= 3 or Null" # FROM CASE_TBL; -% sys.L0, sys.L0 # table_name +% .L, sys.L # table_name % Five, >= 3 or Null # name -% ?, ? # type -% ?, ? # length -[ "", "" ] -[ "", "" ] +% char, int # type +% 0, 1 # length +[ "", NULL ] +[ "", NULL ] [ "", 3 ] [ "", 4 ] @@ -145,10 +129,10 @@ Ready. # ELSE i # END AS "Simplest Math" # FROM CASE_TBL; -% sys.L0, sys.L0 # table_name +% .L, sys.L # table_name % Five, Simplest Math # name -% ?, ? # type -% ?, ? # length +% char, bigint # type +% 0, 1 # length [ "", 1 ] [ "", 2 ] [ "", 6 ] @@ -162,10 +146,10 @@ Ready. # ELSE 'big' # END AS "Category" # FROM CASE_TBL; -% sys.L0, sys.L0, sys.L0 # table_name +% .L, sys.L, sys.L # table_name % Five, Value, Category # name -% ?, ?, ? # type -% ?, ?, ? # length +% char, int, char # type +% 0, 1, 5 # length [ "", 1, "one" ] [ "", 2, "two" ] [ "", 3, "big" ] @@ -179,10 +163,10 @@ Ready. # ELSE 'big' # END AS "Category" # FROM CASE_TBL; -% sys.L0, sys.L0 # table_name +% .L, sys.L # table_name % Five, Category # name -% ?, ? # type -% ?, ? # length +% char, char # type +% 0, 5 # length [ "", "one" ] [ "", "two" ] [ "", "big" ] @@ -197,24 +181,22 @@ Ready. #-- defined in the SQL92 standard. #-- #SELECT * FROM CASE_TBL WHERE COALESCE(f,i) = 4; -% sys.L0, sys.L0 # table_name +% sys.case_tbl, sys.case_tbl # table_name % i, f # name -% ?, ? # type -% ?, ? # length -[ 4, "" ] - +% int, double # type +% 1, 24 # length +[ 4, NULL ] #SELECT * FROM CASE_TBL WHERE NULLIF(f,i) = 2; -% sys.L0, sys.L0 # table_name +% sys.case_tbl, sys.case_tbl # table_name % i, f # name -% ?, ? # type -% ?, ? # length - +% int, double # type +% 1, 24 # length #SELECT COALESCE(a.f, b.i, b.j) # FROM CASE_TBL a, CASE2_TBL b; -% sys.L0 # table_name -% coalesce # name -% ? # type -% ? # length +% sys.L # table_name _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list