Changeset: 9855d58c4b08 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9855d58c4b08 Modified Files: clients/Tests/exports.stable.out monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out sql/backends/monet5/UDF/Tests/udf-fuse.stable.out sql/backends/monet5/UDF/Tests/udf-reverse.stable.out sql/backends/monet5/sql_gencode.c sql/backends/monet5/sql_optimizer.c sql/backends/monet5/sql_optimizer.h sql/backends/monet5/sql_scenario.c sql/test/Tests/systemfunctions.stable.out sql/test/Tests/systemfunctions.stable.out.int128 Branch: jit Log Message:
Approve output diffs (truncated from 478 to 300 lines): 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 @@ -1566,6 +1566,7 @@ int OPTmultiplexImplementation(Client cn str OPTmultiplexSimple(Client cntxt, MalBlkPtr mb); str OPTorcam(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); int OPTorcamImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); +int OPTpostfixImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); int OPTprofilerImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); int OPTprojectionpathImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); int OPTpushselectImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); diff --git a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out --- a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out +++ b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out @@ -61,25 +61,18 @@ Ready. % .explain # table_name % mal # name % clob # type -% 115 # length +% 118 # length function user.s4_1():void; - sql.mvc(); - calc.ptr(nil); - calc.str("|"); - calc.str("\\n"); - calc.str(nil:str); - calc.str("null"); - calc.str("/tmp/xyz"); - calc.lng(-1); - calc.lng(0); - calc.int(0); - calc.int(0); - (X_21:bat[:int],X_22:bat[:int],X_23:bat[:int]) := sql.copy_from(X_2,X_4,X_6,X_8,X_10,X_12,X_14,X_16,X_18,X_20); - sql.append(X_1,"sys","ttt","a",X_21); - sql.append(X_25,"sys","ttt","b",X_22); - sql.append(X_30,"sys","ttt","c",X_23); - aggr.count(X_23); - sql.affectedRows(X_33,X_35); + X_24:void := querylog.define("explain copy into ttt from \\'/tmp/xyz\\';","default_pipe",12); +barrier X_34 := language.dataflow(); + X_1 := sql.mvc(); + (X_11:bat[:int],X_12:bat[:int],X_13:bat[:int]) := sql.copy_from(nil,"|","\\n",nil:str,"null","/tmp/xyz",-1,0,0,0); +exit X_34; + X_14 := sql.append(X_1,"sys","ttt","a",X_11); + X_18 := sql.append(X_14,"sys","ttt","b",X_12); + X_20 := sql.append(X_18,"sys","ttt","c",X_13); + X_22 := aggr.count(X_13); + sql.affectedRows(X_20,X_22); end user.s4_1; #declare opt_pipe_name string; #set opt_pipe_name = ( select optimizer ); @@ -102,25 +95,18 @@ end user.s4_1; % .explain # table_name % mal # name % clob # type -% 115 # length +% 118 # length function user.s12_1():void; - sql.mvc(); - calc.ptr(nil); - calc.str("|"); - calc.str("\\n"); - calc.str(nil:str); - calc.str("null"); - calc.str("/tmp/xyz"); - calc.lng(-1); - calc.lng(0); - calc.int(0); - calc.int(0); - (X_21:bat[:int],X_22:bat[:int],X_23:bat[:int]) := sql.copy_from(X_2,X_4,X_6,X_8,X_10,X_12,X_14,X_16,X_18,X_20); - sql.append(X_1,"sys","ttt","a",X_21); - sql.append(X_25,"sys","ttt","b",X_22); - sql.append(X_30,"sys","ttt","c",X_23); - aggr.count(X_23); - sql.affectedRows(X_33,X_35); + X_24:void := querylog.define("explain copy into ttt from \\'/tmp/xyz\\';","user_1",12); +barrier X_35 := language.dataflow(); + X_1 := sql.mvc(); + (X_11:bat[:int],X_12:bat[:int],X_13:bat[:int]) := sql.copy_from(nil,"|","\\n",nil:str,"null","/tmp/xyz",-1,0,0,0); +exit X_35; + X_14 := sql.append(X_1,"sys","ttt","a",X_11); + X_18 := sql.append(X_14,"sys","ttt","b",X_12); + X_22 := aggr.count(X_13); + X_20 := sql.append(X_18,"sys","ttt","c",X_13); + sql.affectedRows(X_20,X_22); end user.s12_1; #drop table ttt; diff --git a/sql/backends/monet5/UDF/Tests/udf-fuse.stable.out b/sql/backends/monet5/UDF/Tests/udf-fuse.stable.out --- a/sql/backends/monet5/UDF/Tests/udf-fuse.stable.out +++ b/sql/backends/monet5/UDF/Tests/udf-fuse.stable.out @@ -27,13 +27,11 @@ Ready. % .explain # table_name % mal # name % clob # type -% 66 # length -function user.s2_1(A0:bte,A1:bte):void; - sql.mvc(); - A0; - A1; - X_6:sht := udf.fuse(X_4,X_5); - sql.resultSet(".L","fuse_single_value","smallint",16,0,7,X_6); +% 82 # length +function user.s2_1():void; + X_11:void := querylog.define("explain select fuse(1,2);","sequential_pipe",5); + X_3:sht := udf.fuse(1,2); + sql.resultSet(".L","fuse_single_value","smallint",16,0,7,X_3); end user.s2_1; #select fuse(1,2); % .L # table_name @@ -45,13 +43,11 @@ end user.s2_1; % .explain # table_name % mal # name % clob # type -% 70 # length -function user.s3_1(A0:sht,A1:sht):void; - sql.mvc(); - A0; - A1; - X_6:int := udf.fuse(X_4,X_5); - sql.resultSet(".L","fuse_single_value","int",32,0,7,X_6); +% 88 # length +function user.s3_1():void; + X_11:void := querylog.define("explain select fuse(1000,2000);","sequential_pipe",5); + X_3:int := udf.fuse(1000,2000); + sql.resultSet(".L","fuse_single_value","int",32,0,7,X_3); end user.s3_1; #select fuse(1000,2000); % .L # table_name @@ -63,13 +59,11 @@ end user.s3_1; % .explain # table_name % mal # name % clob # type -% 76 # length -function user.s4_1(A0:int,A1:int):void; - sql.mvc(); - A0; - A1; - X_6:lng := udf.fuse(X_4,X_5); - sql.resultSet(".L","fuse_single_value","bigint",64,0,7,X_6); +% 94 # length +function user.s4_1():void; + X_11:void := querylog.define("explain select fuse(1000000,2000000);","sequential_pipe",5); + X_3:lng := udf.fuse(1000000,2000000); + sql.resultSet(".L","fuse_single_value","bigint",64,0,7,X_3); end user.s4_1; #select fuse(1000000,2000000); % .L # table_name @@ -99,94 +93,97 @@ end user.s4_1; % .explain # table_name % mal # name % clob # type -% 78 # length +% 97 # length function user.s8_1():void; - sql.mvc(); - X_2:bat[:oid] := sql.tid(X_1,"sys","udf_fuse"); + X_41:void := querylog.define("explain select fuse(a,b) from udf_fuse;","sequential_pipe",27); + X_24 := bat.new(nil:oid,nil:str); + X_32 := bat.append(X_24,"sys.L"); + X_27 := bat.new(nil:oid,nil:str); + X_34 := bat.append(X_27,"fuse_a"); + X_28 := bat.new(nil:oid,nil:str); + X_36 := bat.append(X_28,"smallint"); + X_29 := bat.new(nil:oid,nil:int); + X_38 := bat.append(X_29,16); + X_31 := bat.new(nil:oid,nil:int); + X_40 := bat.append(X_31,0); + X_1 := sql.mvc(); + C_2:bat[:oid] := sql.tid(X_1,"sys","udf_fuse"); X_5:bat[:bte] := sql.bind(X_1,"sys","udf_fuse","a",0); - (X_8,r1_8) := sql.bind(X_1,"sys","udf_fuse","a",2); + (C_8,r1_8) := sql.bind(X_1,"sys","udf_fuse","a",2); X_11:bat[:bte] := sql.bind(X_1,"sys","udf_fuse","a",1); - sql.delta(X_5,X_8,r1_8,X_11); - algebra.projection(X_2,X_13); + X_13 := sql.delta(X_5,C_8,r1_8,X_11); + X_14 := algebra.projection(C_2,X_13); X_15:bat[:bte] := sql.bind(X_1,"sys","udf_fuse","b",0); - (X_17,r1_17) := sql.bind(X_1,"sys","udf_fuse","b",2); + (C_17,r1_17) := sql.bind(X_1,"sys","udf_fuse","b",2); X_19:bat[:bte] := sql.bind(X_1,"sys","udf_fuse","b",1); - sql.delta(X_15,X_17,r1_17,X_19); - algebra.projection(X_2,X_20); - X_22:bat[:sht] := mal.multiplex("udf","fuse",X_14,X_21); - bat.new(nil:oid,nil:str); - bat.new(nil:oid,nil:str); - bat.new(nil:oid,nil:str); - bat.new(nil:oid,nil:int); - bat.new(nil:oid,nil:int); - bat.append(X_26,"sys.L"); - bat.append(X_29,"fuse_a"); - bat.append(X_30,"smallint"); - bat.append(X_31,16); - bat.append(X_33,0); - sql.resultSet(X_34,X_36,X_38,X_40,X_42,X_22); + X_20 := sql.delta(X_15,C_17,r1_17,X_19); + X_21 := algebra.projection(C_2,X_20); + X_22:bat[:sht] := batudf.fuse(X_14,X_21); + sql.resultSet(X_32,X_34,X_36,X_38,X_40,X_22); end user.s8_1; #explain select fuse(c,d) from udf_fuse; % .explain # table_name % mal # name % clob # type -% 78 # length +% 97 # length function user.s9_1():void; - sql.mvc(); - X_2:bat[:oid] := sql.tid(X_1,"sys","udf_fuse"); + X_41:void := querylog.define("explain select fuse(c,d) from udf_fuse;","sequential_pipe",27); + X_24 := bat.new(nil:oid,nil:str); + X_32 := bat.append(X_24,"sys.L"); + X_27 := bat.new(nil:oid,nil:str); + X_34 := bat.append(X_27,"fuse_c"); + X_28 := bat.new(nil:oid,nil:str); + X_36 := bat.append(X_28,"int"); + X_29 := bat.new(nil:oid,nil:int); + X_38 := bat.append(X_29,32); + X_31 := bat.new(nil:oid,nil:int); + X_40 := bat.append(X_31,0); + X_1 := sql.mvc(); + C_2:bat[:oid] := sql.tid(X_1,"sys","udf_fuse"); X_5:bat[:sht] := sql.bind(X_1,"sys","udf_fuse","c",0); - (X_8,r1_8) := sql.bind(X_1,"sys","udf_fuse","c",2); + (C_8,r1_8) := sql.bind(X_1,"sys","udf_fuse","c",2); X_11:bat[:sht] := sql.bind(X_1,"sys","udf_fuse","c",1); - sql.delta(X_5,X_8,r1_8,X_11); - algebra.projection(X_2,X_13); + X_13 := sql.delta(X_5,C_8,r1_8,X_11); + X_14 := algebra.projection(C_2,X_13); X_15:bat[:sht] := sql.bind(X_1,"sys","udf_fuse","d",0); - (X_17,r1_17) := sql.bind(X_1,"sys","udf_fuse","d",2); + (C_17,r1_17) := sql.bind(X_1,"sys","udf_fuse","d",2); X_19:bat[:sht] := sql.bind(X_1,"sys","udf_fuse","d",1); - sql.delta(X_15,X_17,r1_17,X_19); - algebra.projection(X_2,X_20); - X_22:bat[:int] := mal.multiplex("udf","fuse",X_14,X_21); - bat.new(nil:oid,nil:str); - bat.new(nil:oid,nil:str); - bat.new(nil:oid,nil:str); - bat.new(nil:oid,nil:int); - bat.new(nil:oid,nil:int); - bat.append(X_26,"sys.L"); - bat.append(X_29,"fuse_c"); - bat.append(X_30,"int"); - bat.append(X_31,32); - bat.append(X_33,0); - sql.resultSet(X_34,X_36,X_38,X_40,X_42,X_22); + X_20 := sql.delta(X_15,C_17,r1_17,X_19); + X_21 := algebra.projection(C_2,X_20); + X_22:bat[:int] := batudf.fuse(X_14,X_21); + sql.resultSet(X_32,X_34,X_36,X_38,X_40,X_22); end user.s9_1; #explain select fuse(e,f) from udf_fuse; % .explain # table_name % mal # name % clob # type -% 78 # length +% 97 # length function user.s10_1():void; - sql.mvc(); - X_2:bat[:oid] := sql.tid(X_1,"sys","udf_fuse"); + X_41:void := querylog.define("explain select fuse(e,f) from udf_fuse;","sequential_pipe",27); + X_24 := bat.new(nil:oid,nil:str); + X_32 := bat.append(X_24,"sys.L"); + X_27 := bat.new(nil:oid,nil:str); + X_34 := bat.append(X_27,"fuse_e"); + X_28 := bat.new(nil:oid,nil:str); + X_36 := bat.append(X_28,"bigint"); + X_29 := bat.new(nil:oid,nil:int); + X_38 := bat.append(X_29,64); + X_31 := bat.new(nil:oid,nil:int); + X_40 := bat.append(X_31,0); + X_1 := sql.mvc(); + C_2:bat[:oid] := sql.tid(X_1,"sys","udf_fuse"); X_5:bat[:int] := sql.bind(X_1,"sys","udf_fuse","e",0); - (X_8,r1_8) := sql.bind(X_1,"sys","udf_fuse","e",2); + (C_8,r1_8) := sql.bind(X_1,"sys","udf_fuse","e",2); X_11:bat[:int] := sql.bind(X_1,"sys","udf_fuse","e",1); - sql.delta(X_5,X_8,r1_8,X_11); - algebra.projection(X_2,X_13); + X_13 := sql.delta(X_5,C_8,r1_8,X_11); + X_14 := algebra.projection(C_2,X_13); X_15:bat[:int] := sql.bind(X_1,"sys","udf_fuse","f",0); - (X_17,r1_17) := sql.bind(X_1,"sys","udf_fuse","f",2); + (C_17,r1_17) := sql.bind(X_1,"sys","udf_fuse","f",2); X_19:bat[:int] := sql.bind(X_1,"sys","udf_fuse","f",1); - sql.delta(X_15,X_17,r1_17,X_19); - algebra.projection(X_2,X_20); - X_22:bat[:lng] := mal.multiplex("udf","fuse",X_14,X_21); - bat.new(nil:oid,nil:str); - bat.new(nil:oid,nil:str); - bat.new(nil:oid,nil:str); - bat.new(nil:oid,nil:int); - bat.new(nil:oid,nil:int); - bat.append(X_26,"sys.L"); - bat.append(X_29,"fuse_e"); - bat.append(X_30,"bigint"); - bat.append(X_31,64); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list