Changeset: 37f88242c97b for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=37f88242c97b Modified Files: clients/Tests/MAL-signatures_all.stable.out clients/Tests/MAL-signatures_all.stable.out.int128 clients/Tests/exports.stable.out monetdb5/modules/atoms/mtime.c monetdb5/modules/atoms/mtime.h sql/backends/monet5/generator/Tests/generator04.stable.err sql/backends/monet5/generator/generator.mal sql/backends/monet5/sql.mal sql/benchmarks/ssbm/Tests/01-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/02-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/03-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/04-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/05-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/06-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/07-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/08-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/09-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/10-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/11-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/12-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/13-explain.stable.out.int128 sql/benchmarks/tpch/Tests/01-explain.stable.out.int128 sql/benchmarks/tpch/Tests/02-explain.stable.out sql/benchmarks/tpch/Tests/03-explain.stable.out.int128 sql/benchmarks/tpch/Tests/04-explain.stable.out sql/benchmarks/tpch/Tests/05-explain.stable.out.int128 sql/benchmarks/tpch/Tests/06-explain.stable.out.int128 sql/benchmarks/tpch/Tests/07-explain.stable.out.int128 sql/benchmarks/tpch/Tests/08-explain.stable.out.int128 sql/benchmarks/tpch/Tests/09-explain.stable.out.int128 sql/benchmarks/tpch/Tests/10-explain.stable.out.int128 sql/benchmarks/tpch/Tests/11-explain.stable.out.int128 sql/benchmarks/tpch/Tests/12-explain.stable.out.int128 sql/benchmarks/tpch/Tests/13-explain.stable.out sql/benchmarks/tpch/Tests/14-explain.stable.out.int128 sql/benchmarks/tpch/Tests/16-explain.stable.out sql/benchmarks/tpch/Tests/17-explain.stable.out sql/benchmarks/tpch/Tests/17-explain.stable.out.int128 sql/benchmarks/tpch/Tests/18-explain.stable.out.int128 sql/benchmarks/tpch/Tests/19-explain.stable.out.int128 sql/benchmarks/tpch/Tests/20-explain.stable.out.int128 sql/benchmarks/tpch/Tests/21-explain.stable.out sql/benchmarks/tpch/Tests/22-explain.stable.out.int128 Branch: resultset Log Message:
approved output and cleanup some code changes (more inline with default) diffs (truncated from 3495 to 300 lines): diff --git a/clients/Tests/MAL-signatures_all.stable.out b/clients/Tests/MAL-signatures_all.stable.out --- a/clients/Tests/MAL-signatures_all.stable.out +++ b/clients/Tests/MAL-signatures_all.stable.out @@ -38026,12 +38026,8 @@ pattern generator.series(first:sht,last: address VLTgenerator_table; pattern generator.series(first:bte,last:bte,step:bte):bat[:oid,:bte] address VLTgenerator_table; -pattern generator.series(first:any_1,last:any_1,step:any_1):bat[:oid,:any_1] -address VLTgenerator_table; pattern generator.series(first:dbl,last:dbl):bat[:oid,:dbl] address VLTgenerator_table; -pattern generator.series(first:timestamp,last:timestamp):bat[:oid,:timestamp] -address VLTgenerator_table; pattern generator.series(first:flt,last:flt):bat[:oid,:flt] address VLTgenerator_table; pattern generator.series(first:lng,last:lng):bat[:oid,:lng] @@ -40673,10 +40669,6 @@ pattern sql.evalAlgebra(cmd:str,optimize address RAstatement; comment Compile and execute a single 'relational algebra' statement -pattern sql.eval(cmd:str) (nme:bat[:oid,:str],tpe:bat[:oid,:str],val:bat[:oid,:any]...) -address SQLstatementResult; -comment Compile and execute a single sql statement. Return the result set for rendering - pattern sql.eval(cmd:str,output:bit):void address SQLstatement; comment Compile and execute a single sql statement (and optionaly send output on the output stream) diff --git a/clients/Tests/MAL-signatures_all.stable.out.int128 b/clients/Tests/MAL-signatures_all.stable.out.int128 --- a/clients/Tests/MAL-signatures_all.stable.out.int128 +++ b/clients/Tests/MAL-signatures_all.stable.out.int128 @@ -48937,12 +48937,8 @@ pattern generator.series(first:sht,last: address VLTgenerator_table; pattern generator.series(first:bte,last:bte,step:bte):bat[:oid,:bte] address VLTgenerator_table; -pattern generator.series(first:any_1,last:any_1,step:any_1):bat[:oid,:any_1] -address VLTgenerator_table; pattern generator.series(first:dbl,last:dbl):bat[:oid,:dbl] address VLTgenerator_table; -pattern generator.series(first:timestamp,last:timestamp):bat[:oid,:timestamp] -address VLTgenerator_table; pattern generator.series(first:flt,last:flt):bat[:oid,:flt] address VLTgenerator_table; pattern generator.series(first:lng,last:lng):bat[:oid,:lng] @@ -48953,8 +48949,6 @@ pattern generator.series(first:sht,last: address VLTgenerator_table; pattern generator.series(first:bte,last:bte):bat[:oid,:bte] address VLTgenerator_table; -pattern generator.series(first:any_1,last:any_1):bat[:oid,:any_1] -address VLTgenerator_table; pattern generator.thetasubselect(b:bat[:oid,:hge],cnd:bat[:oid,:oid],low:hge,oper:str):bat[:oid,:oid] address VLTgenerator_thetasubselect; comment Overloaded selection routine @@ -51614,10 +51608,6 @@ pattern sql.evalAlgebra(cmd:str,optimize address RAstatement; comment Compile and execute a single 'relational algebra' statement -pattern sql.eval(cmd:str) (nme:bat[:oid,:str],tpe:bat[:oid,:str],val:bat[:oid,:any]...) -address SQLstatementResult; -comment Compile and execute a single sql statement. Return the result set for rendering - pattern sql.eval(cmd:str,output:bit):void address SQLstatement; comment Compile and execute a single sql statement (and optionaly send output on the output stream) diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out --- a/clients/Tests/exports.stable.out +++ b/clients/Tests/exports.stable.out @@ -111,7 +111,6 @@ BAT *BATcopy(BAT *b, int ht, int tt, int BUN BATcount_no_nil(BAT *b); gdk_return BATcross1(BAT **r1p, BAT **r2p, BAT *l, BAT *r); gdk_return BATdel(BAT *b, BAT *c, bit force); -BAT *BATdelHead(BAT *b, BAT *c, bit force); BAT *BATdelta(BAT *b); void BATderiveHeadProps(BAT *b, int expensive); void BATderiveProps(BAT *b, int expensive); @@ -1589,7 +1588,6 @@ str MTIMEdaytime_extract_sql_seconds_bul str MTIMEdaytime_fromstr(daytime *ret, const char *const *s); str MTIMEepilogue(void *ret); str MTIMEepoch2int(int *res, const timestamp *ts); -str MTIMEepoch2lng(lng *res, const timestamp *ts); str MTIMElocal_timezone(lng *res); str MTIMEmonth_from_str(int *ret, const char *const *month); str MTIMEmonth_to_str(str *ret, const int *month); diff --git a/monetdb5/modules/atoms/mtime.c b/monetdb5/modules/atoms/mtime.c --- a/monetdb5/modules/atoms/mtime.c +++ b/monetdb5/modules/atoms/mtime.c @@ -2643,23 +2643,6 @@ MTIMEepoch2int(int *ret, const timestamp *ret = (int) (v / 1000); return MAL_SUCCEED; } -str -MTIMEepoch2lng(lng *ret, const timestamp *t) -{ - timestamp e; - lng v; - str err; - - if ((err = MTIMEunix_epoch(&e)) != MAL_SUCCEED) - return err; - if ((err = MTIMEtimestamp_diff(&v, t, &e)) != MAL_SUCCEED) - return err; - if (v == lng_nil) - *ret = int_nil; - else - *ret = v; - return MAL_SUCCEED; -} str MTIMEtimestamp(timestamp *ret, const int *sec) @@ -2677,20 +2660,21 @@ MTIMEtimestamp(timestamp *ret, const int l = ((lng) *sec) * 1000; return MTIMEtimestamp_add(ret, &t, &l); } + str -MTIMEtimestamplng(timestamp *ret, const lng *msec) +MTIMEtimestamplng(timestamp *ret, const lng *sec) { timestamp t; lng l; str e; - if (*msec == lng_nil) { + if (*sec == lng_nil) { *ret = *timestamp_nil; return MAL_SUCCEED; } if ((e = MTIMEunix_epoch(&t)) != MAL_SUCCEED) return e; - l = *msec; + l = ((lng) *sec); return MTIMEtimestamp_add(ret, &t, &l); } diff --git a/monetdb5/modules/atoms/mtime.h b/monetdb5/modules/atoms/mtime.h --- a/monetdb5/modules/atoms/mtime.h +++ b/monetdb5/modules/atoms/mtime.h @@ -223,7 +223,6 @@ mtime_export str MTIMEdaytime2(daytime * mtime_export str MTIMEdaytime3(daytime *ret, const int *h, const int *m, const int *s); mtime_export str MTIMEunix_epoch(timestamp *ret); mtime_export str MTIMEepoch2int(int *res, const timestamp *ts); -mtime_export str MTIMEepoch2lng(lng *res, const timestamp *ts); mtime_export str MTIMEtimestamp(timestamp *ret, const int *sec); mtime_export str MTIMEtimestamplng(timestamp *ret, const lng *sec); mtime_export str MTIMEtimestamp_bulk(bat *ret, bat *bid); diff --git a/sql/backends/monet5/generator/Tests/generator04.stable.err b/sql/backends/monet5/generator/Tests/generator04.stable.err --- a/sql/backends/monet5/generator/Tests/generator04.stable.err +++ b/sql/backends/monet5/generator/Tests/generator04.stable.err @@ -29,42 +29,26 @@ stderr of test 'generator04` in director # 21:38:52 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-14305" "--port=36294" # 21:38:52 > -MAPI = (monetdb) /var/tmp/mtest-2974/.s.monetdb.36607 +MAPI = (monetdb) /var/tmp/mtest-20019/.s.monetdb.36969 QUERY = select * from generate_series('a','a','c'); -ERROR = !timestamp (a) has incorrect format -MAPI = (monetdb) /var/tmp/mtest-2974/.s.monetdb.36607 +ERROR = !conversion of string 'c' to type bte failed. +MAPI = (monetdb) /var/tmp/mtest-20019/.s.monetdb.36969 QUERY = select * from generate_series(false,true,false) ; -ERROR = !types boolean(1,0) and timestamp(7,0) are not equal for column 'L1' -MAPI = (monetdb) /var/tmp/mtest-2974/.s.monetdb.36607 -QUERY = select * from generate_series(null,10) ; -ERROR = !Illegal generator range -MAPI = (monetdb) /var/tmp/mtest-2974/.s.monetdb.36607 -QUERY = select * from generate_series(10,null) ; -ERROR = !Illegal generator range -MAPI = (monetdb) /var/tmp/mtest-2974/.s.monetdb.36607 -QUERY = select * from generate_series(null,-1) ; -ERROR = !Illegal generator range -MAPI = (monetdb) /var/tmp/mtest-2974/.s.monetdb.36607 -QUERY = select * from generate_series(-1,null) ; -ERROR = !Illegal generator range -MAPI = (monetdb) /var/tmp/mtest-2974/.s.monetdb.36607 +ERROR = !zero step size not allowed +MAPI = (monetdb) /var/tmp/mtest-20019/.s.monetdb.36969 QUERY = select * from generate_series(null,null,1); ERROR = !Illegal generator range -MAPI = (monetdb) /var/tmp/mtest-2974/.s.monetdb.36607 +MAPI = (monetdb) /var/tmp/mtest-20019/.s.monetdb.36969 QUERY = select * from generate_series(10,null,1); ERROR = !Illegal generator range -MAPI = (monetdb) /var/tmp/mtest-2974/.s.monetdb.36607 +MAPI = (monetdb) /var/tmp/mtest-20019/.s.monetdb.36969 QUERY = select * from generate_series(null,10,1); -ERROR = !types tinyint(8,0) and timestamp(7,0) are not equal for column 'L2' -MAPI = (monetdb) /var/tmp/mtest-2974/.s.monetdb.36607 -QUERY = select * from generate_series(0,10,-2) as v - where value <7 and value >3; ERROR = !Illegal generator range -MAPI = (monetdb) /var/tmp/mtest-2974/.s.monetdb.36607 +MAPI = (monetdb) /var/tmp/mtest-20019/.s.monetdb.36969 QUERY = select * from generate_series( timestamp '2008-03-01 00:00', timestamp '2008-03-04 12:00'); -ERROR = !types timestamp(7,0) and bigint(64,0) are not equal for column 'L1' +ERROR = !types timestamp(7,0) and tinyint(8,0) are not equal for column 'L1' # 21:38:52 > # 21:38:52 > "Done." diff --git a/sql/backends/monet5/generator/generator.mal b/sql/backends/monet5/generator/generator.mal --- a/sql/backends/monet5/generator/generator.mal +++ b/sql/backends/monet5/generator/generator.mal @@ -6,9 +6,6 @@ module generator; -pattern series(first:any_1,last:any_1):bat[:oid,:any_1] -address VLTgenerator_table; - pattern series(first:bte,last:bte):bat[:oid,:bte] address VLTgenerator_table; @@ -24,15 +21,9 @@ address VLTgenerator_table; pattern series(first:flt,last:flt):bat[:oid,:flt] address VLTgenerator_table; -pattern series(first:timestamp,last:timestamp):bat[:oid,:timestamp] -address VLTgenerator_table; - pattern series(first:dbl,last:dbl):bat[:oid,:dbl] address VLTgenerator_table; -pattern series(first:any_1,last:any_1,step:any_1):bat[:oid,:any_1] -address VLTgenerator_table; - pattern series(first:bte,last:bte,step:bte):bat[:oid,:bte] address VLTgenerator_table; diff --git a/sql/backends/monet5/sql.mal b/sql/backends/monet5/sql.mal --- a/sql/backends/monet5/sql.mal +++ b/sql/backends/monet5/sql.mal @@ -102,10 +102,6 @@ pattern eval(cmd:str, output:bit):void address SQLstatement comment "Compile and execute a single sql statement (and optionaly send output on the output stream)"; -pattern eval(cmd:str)(nme:bat[:oid,:str],tpe:bat[:oid,:str],val:bat[:oid,:any]...) -address SQLstatementResult -comment "Compile and execute a single sql statement. Return the result set for rendering"; - pattern include(fname:str):void address SQLinclude comment "Compile and execute a sql statements on the file"; diff --git a/sql/benchmarks/ssbm/Tests/01-explain.stable.out.int128 b/sql/benchmarks/ssbm/Tests/01-explain.stable.out.int128 --- a/sql/benchmarks/ssbm/Tests/01-explain.stable.out.int128 +++ b/sql/benchmarks/ssbm/Tests/01-explain.stable.out.int128 @@ -36,9 +36,9 @@ Ready. % .explain # table_name % mal # name % clob # type -% 263 # length +% 265 # length function user.s2_1{autoCommit=true}(A0:int,A1:int,A2:int,A3:int):void; - X_70:void := querylog.define("explain\nselect sum(lo_extendedprice*lo_discount) as revenue\n\tfrom lineorder, dwdate\n\twhere lo_orderdate = d_datekey\n\t\tand d_year = 1993\n\t\tand lo_discount between 1 and 3\n\t\tand lo_quantity < 25;","sequential_pipe"); + X_70:void := querylog.define("explain\nselect sum(lo_extendedprice*lo_discount) as revenue\n\tfrom lineorder, dwdate\n\twhere lo_orderdate = d_datekey\n\t\tand d_year = 1993\n\t\tand lo_discount between 1 and 3\n\t\tand lo_quantity < 25;","sequential_pipe",44); X_6 := sql.mvc(); X_10:bat[:oid,:int] := sql.bind(X_6,"sys","lineorder","lo_quantity",0); X_18:bat[:oid,:int] := sql.bind(X_6,"sys","lineorder","lo_discount",0); @@ -79,7 +79,7 @@ function user.s2_1{autoCommit=true}(A0:i X_61 := algebra.leftfetchjoin(X_47,X_60); X_62:bat[:oid,:lng] := batcalc.*(X_59,X_61); X_63:hge := aggr.sum(X_62); - sql.resultSet("sys.L1","revenue","hugeint",64,0,X_63); + sql.resultSet("sys.L1","revenue","hugeint",128,0,X_63); end user.s2_1; # 23:10:45 > diff --git a/sql/benchmarks/ssbm/Tests/02-explain.stable.out.int128 b/sql/benchmarks/ssbm/Tests/02-explain.stable.out.int128 --- a/sql/benchmarks/ssbm/Tests/02-explain.stable.out.int128 +++ b/sql/benchmarks/ssbm/Tests/02-explain.stable.out.int128 @@ -36,9 +36,9 @@ Ready. % .explain # table_name % mal # name % clob # type -% 286 # length +% 288 # length function user.s2_1{autoCommit=true}(A0:int,A1:int,A2:int,A3:int,A4:int):void; - X_70:void := querylog.define("explain\nselect sum(lo_extendedprice*lo_discount) as revenue\n\tfrom lineorder, dwdate\n\twhere lo_orderdate = d_datekey\n\t\tand d_yearmonthnum = 199401\n\t\tand lo_discount between 4 and 6\n\t\tand lo_quantity between 26 and 35;","sequential_pipe"); + X_70:void := querylog.define("explain\nselect sum(lo_extendedprice*lo_discount) as revenue\n\tfrom lineorder, dwdate\n\twhere lo_orderdate = d_datekey\n\t\tand d_yearmonthnum = 199401\n\t\tand lo_discount between 4 and 6\n\t\tand lo_quantity between 26 and 35;","sequential_pipe",44); X_7 := sql.mvc(); X_11:bat[:oid,:int] := sql.bind(X_7,"sys","lineorder","lo_quantity",0); X_19:bat[:oid,:int] := sql.bind(X_7,"sys","lineorder","lo_discount",0); @@ -79,7 +79,7 @@ function user.s2_1{autoCommit=true}(A0:i X_61 := algebra.leftfetchjoin(X_47,X_60); X_62:bat[:oid,:lng] := batcalc.*(X_59,X_61); X_63:hge := aggr.sum(X_62); - sql.resultSet("sys.L1","revenue","hugeint",64,0,X_63); + sql.resultSet("sys.L1","revenue","hugeint",128,0,X_63); end user.s2_1; # 23:10:45 > diff --git a/sql/benchmarks/ssbm/Tests/03-explain.stable.out.int128 b/sql/benchmarks/ssbm/Tests/03-explain.stable.out.int128 --- a/sql/benchmarks/ssbm/Tests/03-explain.stable.out.int128 +++ b/sql/benchmarks/ssbm/Tests/03-explain.stable.out.int128 @@ -36,9 +36,9 @@ Ready. % .explain # table_name % mal # name % clob # type -% 300 # length +% 302 # length _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list