Changeset: 63d9202329ec for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=63d9202329ec
Modified Files:
monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
monetdb5/optimizer/Tests/dataflow.stable.out
monetdb5/optimizer/Tests/dataflow3.stable.out
monetdb5/optimizer/opt_garbageCollector.c
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-2010/Tests/LIMIT_OFFSET_big-endian.Bug-2622.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-2015/Tests/schemadiff.Bug-3778.stable.out
sql/test/BugTracker-2016/Tests/decimal_vs_integer.Bug-3941.stable.out
sql/test/mapi/Tests/sql_int128.stable.out
sql/test/mergetables/Tests/mergequery.stable.out
sql/test/remote/Tests/partition_elim.stable.out
Branch: default
Log Message:
Rename temporary variables
The variables are renamed after their position in the symbol table.
diffs (truncated from 2696 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
@@ -63,14 +63,14 @@ Ready.
% clob # type
% 158 # length
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_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);
+ X_1:void := querylog.define("explain copy into ttt from \\'/tmp/xyz\\';",
"default_pipe", 21:int);
+ X_4 := sql.mvc();
+ (X_25:bat[:int], X_26:bat[:int], X_27:bat[:int]) := sql.copy_from(nil:ptr,
"|", "\\n", nil:str, "null", "/tmp/xyz", -1:lng, 0:lng, 0:int, 0:int, nil:str);
+ X_29 := sql.append(X_4, "sys", "ttt", "a", X_25);
+ X_34 := sql.append(X_29, "sys", "ttt", "b", X_26);
+ X_37 := sql.append(X_34, "sys", "ttt", "c", X_27);
+ X_39 := aggr.count(X_27);
+ sql.affectedRows(X_37, X_39);
end user.s8_1;
#inline actions= 0 time=1 usec
#candidates actions= 1 time=14 usec
@@ -122,14 +122,14 @@ end user.s8_1;
% clob # type
% 158 # length
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_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);
+ X_1:void := querylog.define("explain copy into ttt from \\'/tmp/xyz\\';",
"user_1", 21:int);
+ X_4 := sql.mvc();
+ (X_25:bat[:int], X_26:bat[:int], X_27:bat[:int]) := sql.copy_from(nil:ptr,
"|", "\\n", nil:str, "null", "/tmp/xyz", -1:lng, 0:lng, 0:int, 0:int, nil:str);
+ X_29 := sql.append(X_4, "sys", "ttt", "a", X_25);
+ X_34 := sql.append(X_29, "sys", "ttt", "b", X_26);
+ X_39 := aggr.count(X_27);
+ X_37 := sql.append(X_34, "sys", "ttt", "c", X_27);
+ sql.affectedRows(X_37, X_39);
end user.s24_1;
#inline actions= 0 time=1 usec
#candidates actions= 1 time=14 usec
diff --git a/monetdb5/optimizer/Tests/dataflow.stable.out
b/monetdb5/optimizer/Tests/dataflow.stable.out
--- a/monetdb5/optimizer/Tests/dataflow.stable.out
+++ b/monetdb5/optimizer/Tests/dataflow.stable.out
@@ -30,7 +30,7 @@ function user.tst():void;
h:int := l:int; #[3] (0) 6 <- 5
#mdb.setTimer(true);
#mdb.setThread(true);
-barrier X_14:bit := language.dataflow(); #[6] (0) MALstartDataflow 28
+barrier X_28:bit := language.dataflow(); #[6] (0) MALstartDataflow 28
z:bat[:oid] := nil:bat[:oid]; #[7] (0) 9 <- 10
t1:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit,
true:bit, false:bit); #[8] (0) ALGselect1 11 <- 1 5 6 12 13 14
t2:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit,
true:bit, false:bit); #[9] (0) ALGselect1 15 <- 1 5 6 12 12 14
@@ -41,7 +41,7 @@ barrier X_14:bit := language.dataflow();
t7:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit,
true:bit, false:bit); #[14] (0) ALGselect1 20 <- 1 5 6 12 12 14
t8:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit,
true:bit, false:bit); #[15] (0) ALGselect1 21 <- 1 5 6 12 12 14
language.pass(s:bat[:int]); #[16] (0) MALpass 27 <- 1
-exit X_14:bit; #[17] (0) 28
+exit X_28:bit; #[17] (0) 28
z:bat[:oid] := mat.pack(t1:bat[:oid], t2:bat[:oid], t3:bat[:oid],
t4:bat[:oid], t5:bat[:oid], t6:bat[:oid], t7:bat[:oid], t8:bat[:oid]); #[18]
(0) MATpack 9 <- 11 15 16 17 18 19 20 21
mdb.var(); #[19] (0) MDBvar 22
c:lng := aggr.count(z:bat[:oid]); #[20] (0) ALGcount_bat 23 <- 9
diff --git a/monetdb5/optimizer/Tests/dataflow3.stable.out
b/monetdb5/optimizer/Tests/dataflow3.stable.out
--- a/monetdb5/optimizer/Tests/dataflow3.stable.out
+++ b/monetdb5/optimizer/Tests/dataflow3.stable.out
@@ -26,13 +26,13 @@ Ready.
#mdb.list("user","s1_0");
function user.s1_0():void;
-barrier X_30 := language.dataflow();
+barrier X_52 := language.dataflow();
X17 := bat.new(:lng);
X54 := bat.new(:lng);
X55 := bat.new(:lng);
X56 := bat.new(:lng);
X57 := bat.new(:lng);
-exit X_30;
+exit X_52;
X59 := remote.connect("mapi:monetdb://volund.ins.cwi.nl:50000/sn4",
"monetdb", "monetdb", "msql");
remote.register(X59, "user", "s1_0map");
X66 := remote.put(X59, X54);
diff --git a/monetdb5/optimizer/opt_garbageCollector.c
b/monetdb5/optimizer/opt_garbageCollector.c
--- a/monetdb5/optimizer/opt_garbageCollector.c
+++ b/monetdb5/optimizer/opt_garbageCollector.c
@@ -121,6 +121,14 @@ OPTgarbageCollectorImplementation(Client
}
#endif
+ /* rename all temporaries for ease of debugging */
+ for( i = 0; i < mb->vtop; i++)
+ if( sscanf(getVarName(mb,i),"X_%d", &j) == 1)
+ snprintf(getVarName(mb,i),IDLENGTH,"X_%d",i);
+ else
+ if( sscanf(getVarName(mb,i),"C_%d", &j) == 1)
+ snprintf(getVarName(mb,i),IDLENGTH,"C_%d",i);
+
/* leave a consistent scope admin behind */
setVariableScope(mb);
/* Defense line against incorrect plans */
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
@@ -29,9 +29,9 @@ Ready.
% clob # type
% 87 # length
function user.s4_1():void;
- X_0:void := querylog.define("explain select fuse(1,2);",
"sequential_pipe", 8:int);
- X_6:sht := udf.fuse(1:bte, 2:bte);
- sql.resultSet(".L2", "L2", "smallint", 16:int, 0:int, 7:int, X_6);
+ X_3:void := querylog.define("explain select fuse(1,2);",
"sequential_pipe", 8:int);
+ X_9:sht := udf.fuse(1:bte, 2:bte);
+ sql.resultSet(".L2", "L2", "smallint", 16:int, 0:int, 7:int, X_9);
end user.s4_1;
#inline actions= 0 time=2 usec
#candidates actions= 1 time=12 usec
@@ -70,9 +70,9 @@ end user.s4_1;
% clob # type
% 93 # length
function user.s6_1():void;
- X_0:void := querylog.define("explain select fuse(1000,2000);",
"sequential_pipe", 8:int);
- X_6:int := udf.fuse(1000:sht, 2000:sht);
- sql.resultSet(".L2", "L2", "int", 32:int, 0:int, 7:int, X_6);
+ X_3:void := querylog.define("explain select fuse(1000,2000);",
"sequential_pipe", 8:int);
+ X_9:int := udf.fuse(1000:sht, 2000:sht);
+ sql.resultSet(".L2", "L2", "int", 32:int, 0:int, 7:int, X_9);
end user.s6_1;
#inline actions= 0 time=2 usec
#candidates actions= 1 time=10 usec
@@ -111,9 +111,9 @@ end user.s6_1;
% clob # type
% 99 # length
function user.s8_1():void;
- X_0:void := querylog.define("explain select fuse(1000000,2000000);",
"sequential_pipe", 8:int);
- X_6:lng := udf.fuse(1000000:int, 2000000:int);
- sql.resultSet(".L2", "L2", "bigint", 64:int, 0:int, 7:int, X_6);
+ X_3:void := querylog.define("explain select fuse(1000000,2000000);",
"sequential_pipe", 8:int);
+ X_9:lng := udf.fuse(1000000:int, 2000000:int);
+ sql.resultSet(".L2", "L2", "bigint", 64:int, 0:int, 7:int, X_9);
end user.s8_1;
#inline actions= 0 time=3 usec
#candidates actions= 1 time=10 usec
@@ -170,25 +170,25 @@ end user.s8_1;
% clob # type
% 102 # length
function user.s16_1():void;
- X_0:void := querylog.define("explain select fuse(a,b) from udf_fuse;",
"sequential_pipe", 27: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_1:void := querylog.define("explain select fuse(a,b) from udf_fuse;",
"sequential_pipe", 27:int);
+ X_29 := bat.new(nil:str);
+ X_36 := bat.append(X_29, "sys.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_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);
+ X_38 := bat.append(X_31, "L2");
+ X_32 := bat.new(nil:str);
+ X_40 := bat.append(X_32, "smallint");
+ X_33 := bat.new(nil:int);
+ X_42 := bat.append(X_33, 16:int);
+ X_35 := bat.new(nil:int);
+ X_44 := bat.append(X_35, 0:int);
+ X_4 := sql.mvc();
+ C_5:bat[:oid] := sql.tid(X_4, "sys", "udf_fuse");
+ X_8:bat[:bte] := sql.bind(X_4, "sys", "udf_fuse", "a", 0:int);
+ X_17 := algebra.projection(C_5, X_8);
+ X_18:bat[:bte] := sql.bind(X_4, "sys", "udf_fuse", "b", 0:int);
+ X_24 := algebra.projection(C_5, X_18);
+ X_25:bat[:sht] := batudf.fuse(X_17, X_24);
+ sql.resultSet(X_36, X_38, X_40, X_42, X_44, X_25);
end user.s16_1;
#inline actions= 0 time=4 usec
#candidates actions= 1 time=19 usec
@@ -221,25 +221,25 @@ end user.s16_1;
% clob # type
% 102 # length
function user.s18_1():void;
- X_0:void := querylog.define("explain select fuse(c,d) from udf_fuse;",
"sequential_pipe", 27: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_1:void := querylog.define("explain select fuse(c,d) from udf_fuse;",
"sequential_pipe", 27:int);
+ X_29 := bat.new(nil:str);
+ X_36 := bat.append(X_29, "sys.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_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);
+ X_38 := bat.append(X_31, "L2");
+ X_32 := bat.new(nil:str);
+ X_40 := bat.append(X_32, "int");
+ X_33 := bat.new(nil:int);
+ X_42 := bat.append(X_33, 32:int);
+ X_35 := bat.new(nil:int);
+ X_44 := bat.append(X_35, 0:int);
+ X_4 := sql.mvc();
+ C_5:bat[:oid] := sql.tid(X_4, "sys", "udf_fuse");
+ X_8:bat[:sht] := sql.bind(X_4, "sys", "udf_fuse", "c", 0:int);
+ X_17 := algebra.projection(C_5, X_8);
+ X_18:bat[:sht] := sql.bind(X_4, "sys", "udf_fuse", "d", 0:int);
+ X_24 := algebra.projection(C_5, X_18);
+ X_25:bat[:int] := batudf.fuse(X_17, X_24);
+ sql.resultSet(X_36, X_38, X_40, X_42, X_44, X_25);
end user.s18_1;
#inline actions= 0 time=2 usec
#candidates actions= 1 time=19 usec
@@ -272,25 +272,25 @@ end user.s18_1;
% clob # type
% 102 # length
function user.s20_1():void;
- X_0:void := querylog.define("explain select fuse(e,f) from udf_fuse;",
"sequential_pipe", 27: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_1:void := querylog.define("explain select fuse(e,f) from udf_fuse;",
"sequential_pipe", 27:int);
+ X_29 := bat.new(nil:str);
+ X_36 := bat.append(X_29, "sys.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_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);
+ X_38 := bat.append(X_31, "L2");
+ X_32 := bat.new(nil:str);
+ X_40 := bat.append(X_32, "bigint");
+ X_33 := bat.new(nil:int);
+ X_42 := bat.append(X_33, 64:int);
+ X_35 := bat.new(nil:int);
+ X_44 := bat.append(X_35, 0:int);
+ X_4 := sql.mvc();
+ C_5:bat[:oid] := sql.tid(X_4, "sys", "udf_fuse");
+ X_8:bat[:int] := sql.bind(X_4, "sys", "udf_fuse", "e", 0:int);
+ X_17 := algebra.projection(C_5, X_8);
+ X_18:bat[:int] := sql.bind(X_4, "sys", "udf_fuse", "f", 0:int);
+ X_24 := algebra.projection(C_5, X_18);
+ X_25:bat[:lng] := batudf.fuse(X_17, X_24);
+ sql.resultSet(X_36, X_38, X_40, X_42, X_44, X_25);
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
@@ -50,9 +50,9 @@ Ready.
% clob # type
% 100 # length
function user.s4_1():void;
- X_0:void := querylog.define("explain select reverse(\\'MonetDB\\');",
"sequential_pipe", 7:int);
- X_5:str := udf.reverse("MonetDB");
- sql.resultSet(".L2", "L2", "clob", 0:int, 0:int, 4:int, X_5);
+ X_2:void := querylog.define("explain select reverse(\\'MonetDB\\');",
"sequential_pipe", 7:int);
+ X_7:str := udf.reverse("MonetDB");
+ sql.resultSet(".L2", "L2", "clob", 0:int, 0:int, 4:int, X_7);
end user.s4_1;
#inline actions= 0 time=2 usec
#candidates actions= 1 time=8 usec
@@ -109,23 +109,23 @@ end user.s4_1;
% clob # type
% 106 # length
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list