Changeset: 5f5b0b43a641 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5f5b0b43a641
Modified Files:
monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
monetdb5/optimizer/Tests/GCexample01.stable.out
sql/backends/monet5/UDF/cudf/Tests/udf-fuse.stable.out
sql/backends/monet5/UDF/cudf/Tests/udf-reverse.stable.out
sql/test/BugTracker-2009/Tests/POWER_vs_prod.SF-2596114.stable.out
sql/test/BugTracker-2009/Tests/segfault_when_quitting_debugger.SF-2538837.stable.out
sql/test/BugTracker-2012/Tests/rewrite_like_into_likesubselect.Bug-3179.stable.out
sql/test/BugTracker-2014/Tests/manifold.Bug-3556.stable.out
sql/test/BugTracker-2014/Tests/querylog.Bug-3607.stable.out
sql/test/BugTracker-2016/Tests/decimal_vs_integer.Bug-3941.stable.out
sql/test/Tests/setoptimizer.stable.out
sql/test/Tests/setoptimizer.stable.out.Windows
sql/test/mapi/Tests/sql_int128.stable.out
sql/test/mergetables/Tests/mergequery.stable.out
Branch: default
Log Message:
Approve output
diffs (truncated from 1471 to 300 lines):
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
@@ -55,8 +55,8 @@ Ready.
% .L1 # table_name
% def # name
% clob # type
-% 579 # length
-[
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.reduce();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.jit();optimizer.garbageCollector();"
]
+% 544 # length
+[
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.garbageCollector();"
]
#explain copy into ttt from '/tmp/xyz';
% .explain # table_name
% mal # name
@@ -65,13 +65,12 @@ Ready.
function user.s8_1():void;
X_0:void := querylog.define("explain copy into ttt from
\\'/tmp/xyz\\';","default_pipe",21:int);
X_3 := sql.mvc();
- (X_13:bat[:int],X_14:bat[:int],X_15:bat[:int]) :=
sql.copy_from(nil:ptr,"|","\\n",nil:str,"null","/tmp/xyz",-1:lng,0:lng,0:int,0:int,nil:str);
-# querylog.define("explain copy into ttt from \\'/tmp/xyz\\';","default_pipe")
- X_16 := sql.append(X_3,"sys","ttt","a",X_13);
- X_20 := sql.append(X_16,"sys","ttt","b",X_14);
- X_22 := sql.append(X_20,"sys","ttt","c",X_15);
- X_24 := aggr.count(X_15);
- sql.affectedRows(X_22,X_24);
+ (X_24:bat[:int],X_25:bat[:int],X_26:bat[:int]) :=
sql.copy_from(nil:ptr,"|","\\n",nil:str,"null","/tmp/xyz",-1:lng,0:lng,0:int,0:int,nil:str);
+ X_28 := sql.append(X_3,"sys","ttt","a",X_24);
+ X_33 := sql.append(X_28,"sys","ttt","b",X_25);
+ X_36 := sql.append(X_33,"sys","ttt","c",X_26);
+ X_38 := aggr.count(X_26);
+ sql.affectedRows(X_36,X_38);
end user.s8_1;
#inline actions= 0 time=1 usec
#candidates actions= 1 time=14 usec
@@ -115,8 +114,8 @@ end user.s8_1;
% .L1 # table_name
% def # name
% clob # type
-% 602 # length
-[
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.reduce();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.jit();optimizer.sql_append();optimizer.garbageCollector();"
]
+% 567 # length
+[
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.sql_append();optimizer.garbageCollector();"
]
#explain copy into ttt from '/tmp/xyz';
% .explain # table_name
% mal # name
@@ -125,13 +124,12 @@ end user.s8_1;
function user.s24_1():void;
X_0:void := querylog.define("explain copy into ttt from
\\'/tmp/xyz\\';","user_1",21:int);
X_3 := sql.mvc();
- (X_13:bat[:int],X_14:bat[:int],X_15:bat[:int]) :=
sql.copy_from(nil:ptr,"|","\\n",nil:str,"null","/tmp/xyz",-1:lng,0:lng,0:int,0:int,nil:str);
-# querylog.define("explain copy into ttt from \\'/tmp/xyz\\';","user_1")
- X_16 := sql.append(X_3,"sys","ttt","a",X_13);
- X_20 := sql.append(X_16,"sys","ttt","b",X_14);
- X_24 := aggr.count(X_15);
- X_22 := sql.append(X_20,"sys","ttt","c",X_15);
- sql.affectedRows(X_22,X_24);
+ (X_24:bat[:int],X_25:bat[:int],X_26:bat[:int]) :=
sql.copy_from(nil:ptr,"|","\\n",nil:str,"null","/tmp/xyz",-1:lng,0:lng,0:int,0:int,nil:str);
+ X_28 := sql.append(X_3,"sys","ttt","a",X_24);
+ X_33 := sql.append(X_28,"sys","ttt","b",X_25);
+ X_38 := aggr.count(X_26);
+ X_36 := sql.append(X_33,"sys","ttt","c",X_26);
+ sql.affectedRows(X_36,X_38);
end user.s24_1;
#inline actions= 0 time=1 usec
#candidates actions= 1 time=14 usec
diff --git a/monetdb5/optimizer/Tests/GCexample01.stable.out
b/monetdb5/optimizer/Tests/GCexample01.stable.out
--- a/monetdb5/optimizer/Tests/GCexample01.stable.out
+++ b/monetdb5/optimizer/Tests/GCexample01.stable.out
@@ -37,19 +37,17 @@ function user.qry():void;
barrier (x:oid,z:int) := iterator.new(b:bat[:int]); #[5] (0) ITRbunIterator
7 8 <- 1
io.print(x:oid); #[6] (0) IOprint_val 9 <- 7
exit (x:oid,z:int); #[7] (0) 7 8
- b:bat[:int] := nil:bat[:int]; #[8] (0) 1 <- 16
-barrier (x:oid,z:int) := iterator.new(c:bat[:int]); #[9] (0) ITRbunIterator
7 8 <- 3
- io.print(x:oid); #[10] (0) IOprint_val 10 <- 7
- redo (x:oid,z:int) := iterator.next(c:bat[:int]); #[11] (0) ITRbunNext 7
8 <- 3
-exit (x:oid,z:int); #[12] (0) 7 8
- c:bat[:int] := nil:bat[:int]; #[13] (0) 3 <- 18
+barrier (x:oid,z:int) := iterator.new(c:bat[:int]); #[8] (0) ITRbunIterator
7 8 <- 3
+ io.print(x:oid); #[9] (0) IOprint_val 10 <- 7
+ redo (x:oid,z:int) := iterator.next(c:bat[:int]); #[10] (0) ITRbunNext 7
8 <- 3
+exit (x:oid,z:int); #[11] (0) 7 8
# do not close d, it may be reused
-barrier go:bit := true:bit; #[15] (0) 12 <- 13
- io.print(d:bat[:int]); #[16] (0) IOprint_val 14 <- 4
- redo go:bit := true:bit; #[17] (0) 12 <- 13
-exit go:bit; #[18] (0) 12
- d:bat[:int] := nil:bat[:int]; #[19] (0) 4 <- 20
-end user.qry; #[20] (0)
+barrier go:bit := true:bit; #[13] (0) 12 <- 13
+ io.print(d:bat[:int]); #[14] (0) IOprint_val 14 <- 4
+ redo go:bit := true:bit; #[15] (0) 12 <- 13
+exit go:bit; #[16] (0) 12
+end user.qry; #[17] (0)
+#garbagecollector actions= 1 time=22 usec
function user.qry():void; #[0] (0) 0
b:bat[:int] := bat.new(:int); #[1] (0) CMDBATnew 1 <- 2
c:bat[:int] := bat.new(:int); #[2] (0) CMDBATnew 3 <- 2
@@ -58,19 +56,17 @@ function user.qry():void;
barrier (x:oid,z:int) := iterator.new(b:bat[:int]); #[5] (0) ITRbunIterator
7 8 <- 1
io.print(x:oid); #[6] (0) IOprint_val 9 <- 7
exit (x:oid,z:int); #[7] (0) 7 8
- b:bat[:int] := nil:bat[:int]; #[8] (0) 1 <- 16
-barrier (x:oid,z:int) := iterator.new(c:bat[:int]); #[9] (0) ITRbunIterator
7 8 <- 3
- io.print(x:oid); #[10] (0) IOprint_val 10 <- 7
- redo (x:oid,z:int) := iterator.next(c:bat[:int]); #[11] (0) ITRbunNext 7
8 <- 3
-exit (x:oid,z:int); #[12] (0) 7 8
- c:bat[:int] := nil:bat[:int]; #[13] (0) 3 <- 18
+barrier (x:oid,z:int) := iterator.new(c:bat[:int]); #[8] (0) ITRbunIterator
7 8 <- 3
+ io.print(x:oid); #[9] (0) IOprint_val 10 <- 7
+ redo (x:oid,z:int) := iterator.next(c:bat[:int]); #[10] (0) ITRbunNext 7
8 <- 3
+exit (x:oid,z:int); #[11] (0) 7 8
# do not close d, it may be reused
-barrier go:bit := true:bit; #[15] (0) 12 <- 13
- io.print(d:bat[:int]); #[16] (0) IOprint_val 14 <- 4
- redo go:bit := true:bit; #[17] (0) 12 <- 13
-exit go:bit; #[18] (0) 12
- d:bat[:int] := nil:bat[:int]; #[19] (0) 4 <- 20
-end user.qry; #[20] (0)
+barrier go:bit := true:bit; #[13] (0) 12 <- 13
+ io.print(d:bat[:int]); #[14] (0) IOprint_val 14 <- 4
+ redo go:bit := true:bit; #[15] (0) 12 <- 13
+exit go:bit; #[16] (0) 12
+end user.qry; #[17] (0)
+#garbagecollector actions= 1 time=22 usec
# 23:17:49 >
# 23:17:49 > Done.
diff --git a/sql/backends/monet5/UDF/cudf/Tests/udf-fuse.stable.out
b/sql/backends/monet5/UDF/cudf/Tests/udf-fuse.stable.out
--- a/sql/backends/monet5/UDF/cudf/Tests/udf-fuse.stable.out
+++ b/sql/backends/monet5/UDF/cudf/Tests/udf-fuse.stable.out
@@ -30,9 +30,8 @@ Ready.
% 85 # length
function user.s4_1():void;
X_0:void := querylog.define("explain select
fuse(1,2);","sequential_pipe",8:int);
- X_3:sht := udf.fuse(1:bte,2:bte);
-# querylog.define("explain select fuse(1,2);","sequential_pipe")
- sql.resultSet(".L2","L2","smallint",16:int,0:int,7:int,X_3);
+ X_6:sht := udf.fuse(1:bte,2:bte);
+ sql.resultSet(".L2","L2","smallint",16:int,0:int,7:int,X_6);
end user.s4_1;
#inline actions= 0 time=2 usec
#candidates actions= 1 time=12 usec
@@ -72,9 +71,8 @@ end user.s4_1;
% 91 # length
function user.s6_1():void;
X_0:void := querylog.define("explain select
fuse(1000,2000);","sequential_pipe",8:int);
- X_3:int := udf.fuse(1000:sht,2000:sht);
-# querylog.define("explain select fuse(1000,2000);","sequential_pipe")
- sql.resultSet(".L2","L2","int",32:int,0:int,7:int,X_3);
+ X_6:int := udf.fuse(1000:sht,2000:sht);
+ sql.resultSet(".L2","L2","int",32:int,0:int,7:int,X_6);
end user.s6_1;
#inline actions= 0 time=2 usec
#candidates actions= 1 time=10 usec
@@ -114,9 +112,8 @@ end user.s6_1;
% 97 # length
function user.s8_1():void;
X_0:void := querylog.define("explain select
fuse(1000000,2000000);","sequential_pipe",8:int);
- X_3:lng := udf.fuse(1000000:int,2000000:int);
-# querylog.define("explain select fuse(1000000,2000000);","sequential_pipe")
- sql.resultSet(".L2","L2","bigint",64:int,0:int,7:int,X_3);
+ X_6:lng := udf.fuse(1000000:int,2000000:int);
+ sql.resultSet(".L2","L2","bigint",64:int,0:int,7:int,X_6);
end user.s8_1;
#inline actions= 0 time=3 usec
#candidates actions= 1 time=10 usec
@@ -174,25 +171,24 @@ end user.s8_1;
% 100 # length
function user.s16_1():void;
X_0:void := querylog.define("explain select fuse(a,b) from
udf_fuse;","sequential_pipe",27:int);
- X_16 := bat.new(nil:str);
- X_23 := bat.append(X_16,"sys.L2");
- X_18 := bat.new(nil:str);
- X_25 := bat.append(X_18,"L2");
- X_19 := bat.new(nil:str);
- X_27 := bat.append(X_19,"smallint");
- X_20 := bat.new(nil:int);
- X_29 := bat.append(X_20,16:int);
- X_22 := bat.new(nil:int);
- X_31 := bat.append(X_22,0:int);
+ X_28 := bat.new(nil:str);
+ X_35 := bat.append(X_28,"sys.L2");
+ X_30 := bat.new(nil:str);
+ X_37 := bat.append(X_30,"L2");
+ X_31 := bat.new(nil:str);
+ X_39 := bat.append(X_31,"smallint");
+ X_32 := bat.new(nil:int);
+ X_41 := bat.append(X_32,16:int);
+ X_34 := bat.new(nil:int);
+ X_43 := bat.append(X_34,0:int);
X_3 := sql.mvc();
C_4:bat[:oid] := sql.tid(X_3,"sys","udf_fuse");
X_7:bat[:bte] := sql.bind(X_3,"sys","udf_fuse","a",0:int);
- X_10 := algebra.projection(C_4,X_7);
- X_11:bat[:bte] := sql.bind(X_3,"sys","udf_fuse","b",0:int);
- X_13 := algebra.projection(C_4,X_11);
- X_14:bat[:sht] := batudf.fuse(X_10,X_13);
-# querylog.define("explain select fuse(a,b) from udf_fuse;","sequential_pipe")
- sql.resultSet(X_23,X_25,X_27,X_29,X_31,X_14);
+ X_16 := algebra.projection(C_4,X_7);
+ X_17:bat[:bte] := sql.bind(X_3,"sys","udf_fuse","b",0:int);
+ X_23 := algebra.projection(C_4,X_17);
+ X_24:bat[:sht] := batudf.fuse(X_16,X_23);
+ sql.resultSet(X_35,X_37,X_39,X_41,X_43,X_24);
end user.s16_1;
#inline actions= 0 time=4 usec
#candidates actions= 1 time=19 usec
@@ -226,25 +222,24 @@ end user.s16_1;
% 100 # length
function user.s18_1():void;
X_0:void := querylog.define("explain select fuse(c,d) from
udf_fuse;","sequential_pipe",27:int);
- X_16 := bat.new(nil:str);
- X_23 := bat.append(X_16,"sys.L2");
- X_18 := bat.new(nil:str);
- X_25 := bat.append(X_18,"L2");
- X_19 := bat.new(nil:str);
- X_27 := bat.append(X_19,"int");
- X_20 := bat.new(nil:int);
- X_29 := bat.append(X_20,32:int);
- X_22 := bat.new(nil:int);
- X_31 := bat.append(X_22,0:int);
+ X_28 := bat.new(nil:str);
+ X_35 := bat.append(X_28,"sys.L2");
+ X_30 := bat.new(nil:str);
+ X_37 := bat.append(X_30,"L2");
+ X_31 := bat.new(nil:str);
+ X_39 := bat.append(X_31,"int");
+ X_32 := bat.new(nil:int);
+ X_41 := bat.append(X_32,32:int);
+ X_34 := bat.new(nil:int);
+ X_43 := bat.append(X_34,0:int);
X_3 := sql.mvc();
C_4:bat[:oid] := sql.tid(X_3,"sys","udf_fuse");
X_7:bat[:sht] := sql.bind(X_3,"sys","udf_fuse","c",0:int);
- X_10 := algebra.projection(C_4,X_7);
- X_11:bat[:sht] := sql.bind(X_3,"sys","udf_fuse","d",0:int);
- X_13 := algebra.projection(C_4,X_11);
- X_14:bat[:int] := batudf.fuse(X_10,X_13);
-# querylog.define("explain select fuse(c,d) from udf_fuse;","sequential_pipe")
- sql.resultSet(X_23,X_25,X_27,X_29,X_31,X_14);
+ X_16 := algebra.projection(C_4,X_7);
+ X_17:bat[:sht] := sql.bind(X_3,"sys","udf_fuse","d",0:int);
+ X_23 := algebra.projection(C_4,X_17);
+ X_24:bat[:int] := batudf.fuse(X_16,X_23);
+ sql.resultSet(X_35,X_37,X_39,X_41,X_43,X_24);
end user.s18_1;
#inline actions= 0 time=2 usec
#candidates actions= 1 time=19 usec
@@ -278,25 +273,24 @@ end user.s18_1;
% 100 # length
function user.s20_1():void;
X_0:void := querylog.define("explain select fuse(e,f) from
udf_fuse;","sequential_pipe",27:int);
- X_16 := bat.new(nil:str);
- X_23 := bat.append(X_16,"sys.L2");
- X_18 := bat.new(nil:str);
- X_25 := bat.append(X_18,"L2");
- X_19 := bat.new(nil:str);
- X_27 := bat.append(X_19,"bigint");
- X_20 := bat.new(nil:int);
- X_29 := bat.append(X_20,64:int);
- X_22 := bat.new(nil:int);
- X_31 := bat.append(X_22,0:int);
+ X_28 := bat.new(nil:str);
+ X_35 := bat.append(X_28,"sys.L2");
+ X_30 := bat.new(nil:str);
+ X_37 := bat.append(X_30,"L2");
+ X_31 := bat.new(nil:str);
+ X_39 := bat.append(X_31,"bigint");
+ X_32 := bat.new(nil:int);
+ X_41 := bat.append(X_32,64:int);
+ X_34 := bat.new(nil:int);
+ X_43 := bat.append(X_34,0:int);
X_3 := sql.mvc();
C_4:bat[:oid] := sql.tid(X_3,"sys","udf_fuse");
X_7:bat[:int] := sql.bind(X_3,"sys","udf_fuse","e",0:int);
- X_10 := algebra.projection(C_4,X_7);
- X_11:bat[:int] := sql.bind(X_3,"sys","udf_fuse","f",0:int);
- X_13 := algebra.projection(C_4,X_11);
- X_14:bat[:lng] := batudf.fuse(X_10,X_13);
-# querylog.define("explain select fuse(e,f) from udf_fuse;","sequential_pipe")
- sql.resultSet(X_23,X_25,X_27,X_29,X_31,X_14);
+ X_16 := algebra.projection(C_4,X_7);
+ X_17:bat[:int] := sql.bind(X_3,"sys","udf_fuse","f",0:int);
+ X_23 := algebra.projection(C_4,X_17);
+ X_24:bat[:lng] := batudf.fuse(X_16,X_23);
+ sql.resultSet(X_35,X_37,X_39,X_41,X_43,X_24);
end user.s20_1;
#inline actions= 0 time=2 usec
#candidates actions= 1 time=18 usec
diff --git a/sql/backends/monet5/UDF/cudf/Tests/udf-reverse.stable.out
b/sql/backends/monet5/UDF/cudf/Tests/udf-reverse.stable.out
--- a/sql/backends/monet5/UDF/cudf/Tests/udf-reverse.stable.out
+++ b/sql/backends/monet5/UDF/cudf/Tests/udf-reverse.stable.out
@@ -51,9 +51,8 @@ Ready.
% 98 # length
function user.s4_1():void;
X_0:void := querylog.define("explain select
reverse(\\'MonetDB\\');","sequential_pipe",7:int);
- X_3:str := udf.reverse("MonetDB");
-# querylog.define("explain select reverse(\\'MonetDB\\');","sequential_pipe")
- sql.resultSet(".L2","L2","clob",0:int,0:int,4:int,X_3);
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list