Changeset: d8bd9ed4fab1 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=d8bd9ed4fab1
Removed Files:
        monetdb5/tests/BugTracker/Tests/joinpath-loop.Bug-2965.mal
        monetdb5/tests/BugTracker/Tests/joinpath-loop.Bug-2965.stable.err
        monetdb5/tests/BugTracker/Tests/joinpath-loop.Bug-2965.stable.out
Modified Files:
        monetdb5/optimizer/Tests/tst4300.mal
        monetdb5/optimizer/Tests/tst4300.stable.out
        monetdb5/tests/BugTracker/Tests/All
        sql/benchmarks/tpch/Tests/02-explain.stable.out
        sql/benchmarks/tpch/Tests/03-explain.stable.out
        sql/benchmarks/tpch/Tests/03-explain.stable.out.int128
        sql/benchmarks/tpch/Tests/16-explain.stable.out
        sql/test/leaks/Tests/check0_bam.stable.out.int128
Branch: default
Log Message:

Approve output


diffs (truncated from 341 to 300 lines):

diff --git a/monetdb5/optimizer/Tests/tst4300.mal 
b/monetdb5/optimizer/Tests/tst4300.mal
--- a/monetdb5/optimizer/Tests/tst4300.mal
+++ b/monetdb5/optimizer/Tests/tst4300.mal
@@ -20,6 +20,6 @@ io.print(i);
 bo := batcalc.oid(b);
 co := batcalc.oid(c);
 cor:= bat.reverse(co);
-zz:= algebra.joinPath(bo,cor,d);
+zz:= algebra.leftjoinPath(bo,cor,d);
 i:= aggr.count(zz);
 io.print(i);
diff --git a/monetdb5/optimizer/Tests/tst4300.stable.out 
b/monetdb5/optimizer/Tests/tst4300.stable.out
--- a/monetdb5/optimizer/Tests/tst4300.stable.out
+++ b/monetdb5/optimizer/Tests/tst4300.stable.out
@@ -31,7 +31,7 @@ exit v;
     bo := batcalc.oid(b);
     co := batcalc.oid(c);
     cor := bat.reverse(co);
-    zz := algebra.joinPath(bo,cor,d);
+    zz := algebra.leftjoinPath(bo,cor,d);
     i := aggr.count(zz);
     io.print(i);
 end user.main;
diff --git a/monetdb5/tests/BugTracker/Tests/All 
b/monetdb5/tests/BugTracker/Tests/All
--- a/monetdb5/tests/BugTracker/Tests/All
+++ b/monetdb5/tests/BugTracker/Tests/All
@@ -5,6 +5,5 @@ batcast.SF-1730987
 empty_line_crash.SF-1806638
 parser.SF-2051309
 mal_var_persistent_over_sessions.SF-2581675
-joinpath-loop.Bug-2965
 algebra_project.Bug-3045
 stdev.Bug-3178
diff --git a/monetdb5/tests/BugTracker/Tests/joinpath-loop.Bug-2965.mal 
b/monetdb5/tests/BugTracker/Tests/joinpath-loop.Bug-2965.mal
deleted file mode 100644
--- a/monetdb5/tests/BugTracker/Tests/joinpath-loop.Bug-2965.mal
+++ /dev/null
@@ -1,13 +0,0 @@
-a:bat[:oid, :int] := bat.new(:oid, :int);
-b:bat[:oid, :int] := bat.new(:oid, :int);
-c:bat[:oid, :int] := bat.new(:oid, :int);
-bat.append(a, 1);
-bat.append(a, 2);
-bat.append(a, 3);
-bat.append(b, 1);
-bat.append(b, 2);
-bat.append(b, 0);
-bat.append(c, 0);
-bat.append(c, 3);
-bat.append(c, 1);
-algebra.joinPath(a, b, c);
diff --git a/monetdb5/tests/BugTracker/Tests/joinpath-loop.Bug-2965.stable.err 
b/monetdb5/tests/BugTracker/Tests/joinpath-loop.Bug-2965.stable.err
deleted file mode 100644
--- a/monetdb5/tests/BugTracker/Tests/joinpath-loop.Bug-2965.stable.err
+++ /dev/null
@@ -1,31 +0,0 @@
-stderr of test 'joinpath-loop.Bug-2965` in directory 
'monetdb5/tests/BugTracker` itself:
-
-
-# 16:23:27 >  
-# 16:23:27 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"gdk_dbfarm=/ufs/sjoerd/Monet-candidate/var/MonetDB" "--set" "mapi_open=true" 
"--set" "mapi_port=39263" "--set" "monet_prompt=" "--trace" "--forcemito" 
"--set" "mal_listing=2" "--dbname=mTests_tests_BugTracker" 
"joinpath-loop.Bug-2965.mal"
-# 16:23:27 >  
-
-# builtin opt  gdk_dbname = demo
-# builtin opt  gdk_dbfarm = /ufs/sjoerd/Monet-candidate/var/monetdb5/dbfarm
-# builtin opt  gdk_debug = 0
-# builtin opt  gdk_alloc_map = no
-# builtin opt  gdk_vmtrim = yes
-# builtin opt  monet_prompt = >
-# builtin opt  monet_daemon = no
-# builtin opt  mapi_port = 50000
-# builtin opt  mapi_open = false
-# builtin opt  mapi_autosense = false
-# builtin opt  sql_optimizer = default_pipe
-# builtin opt  sql_debug = 0
-# cmdline opt  gdk_nr_threads = 0
-# cmdline opt  gdk_dbfarm = /ufs/sjoerd/Monet-candidate/var/MonetDB
-# cmdline opt  mapi_open = true
-# cmdline opt  mapi_port = 39263
-# cmdline opt  monet_prompt = 
-# cmdline opt  mal_listing = 2
-# cmdline opt  gdk_dbname = mTests_tests_BugTracker
-
-# 16:23:27 >  
-# 16:23:27 >  "Done."
-# 16:23:27 >  
-
diff --git a/monetdb5/tests/BugTracker/Tests/joinpath-loop.Bug-2965.stable.out 
b/monetdb5/tests/BugTracker/Tests/joinpath-loop.Bug-2965.stable.out
deleted file mode 100644
--- a/monetdb5/tests/BugTracker/Tests/joinpath-loop.Bug-2965.stable.out
+++ /dev/null
@@ -1,39 +0,0 @@
-stdout of test 'joinpath-loop.Bug-2965` in directory 
'monetdb5/tests/BugTracker` itself:
-
-
-# 16:23:27 >  
-# 16:23:27 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"gdk_dbfarm=/ufs/sjoerd/Monet-candidate/var/MonetDB" "--set" "mapi_open=true" 
"--set" "mapi_port=39263" "--set" "monet_prompt=" "--trace" "--forcemito" 
"--set" "mal_listing=2" "--dbname=mTests_tests_BugTracker" 
"joinpath-loop.Bug-2965.mal"
-# 16:23:27 >  
-
-# MonetDB 5 server v11.7.0
-# This is an unreleased version
-# Serving database 'mTests_tests_BugTracker', using 8 threads
-# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs dynamically 
linked
-# Found 15.662 GiB available main-memory.
-# Copyright (c) 1993-July 2008 CWI.
-# Copyright (c) August 2008-2015 MonetDB B.V., all rights reserved
-# Visit http://www.monetdb.org/ for further information
-# Listening for connection requests on mapi:monetdb://madrid.ins.cwi.nl:39263/
-# MonetDB/GIS module loaded
-# MonetDB/SQL module loaded
-function user.main():void;
-    a:bat[:oid,:int]  := bat.new(:oid,:int);
-    b:bat[:oid,:int]  := bat.new(:oid,:int);
-    c:bat[:oid,:int]  := bat.new(:oid,:int);
-    bat.append(a,1);
-    bat.append(a,2);
-    bat.append(a,3);
-    bat.append(b,1);
-    bat.append(b,2);
-    bat.append(b,0);
-    bat.append(c,0);
-    bat.append(c,3);
-    bat.append(c,1);
-    algebra.joinPath(a,b,c);
-end user.main;
-!MALException:algebra.joinPath:Type mismatch
-
-# 16:23:27 >  
-# 16:23:27 >  "Done."
-# 16:23:27 >  
-
diff --git a/sql/benchmarks/tpch/Tests/02-explain.stable.out 
b/sql/benchmarks/tpch/Tests/02-explain.stable.out
--- a/sql/benchmarks/tpch/Tests/02-explain.stable.out
+++ b/sql/benchmarks/tpch/Tests/02-explain.stable.out
@@ -66,7 +66,7 @@ Ready.
 % clob # type
 % 844 # length
 function user.s2_1{autoCommit=true}(A0:int,A1:str,A2:str,A3:str):void;
-    X_314:void  := querylog.define("explain 
select\n\ts_acctbal,\n\ts_name,\n\tn_name,\n\tp_partkey,\n\tp_mfgr,\n\ts_address,\n\ts_phone,\n\ts_comment\nfrom\n\tpart,\n\tsupplier,\n\tpartsupp,\n\tnation,\n\tregion\nwhere\n\tp_partkey
 = ps_partkey\n\tand s_suppkey = ps_suppkey\n\tand p_size = 15\n\tand p_type 
like \\'%BRASS\\'\n\tand s_nationkey = n_nationkey\n\tand n_regionkey = 
r_regionkey\n\tand r_name = \\'EUROPE\\'\n\tand ps_supplycost = 
(\n\t\tselect\n\t\t\tmin(ps_supplycost)\n\t\tfrom\n\t\t\tpartsupp,\n\t\t\tsupplier,\n\t\t\tnation,\n\t\t\tregion\n\t\twhere\n\t\t\tp_partkey
 = ps_partkey\n\t\t\tand s_suppkey = ps_suppkey\n\t\t\tand s_nationkey = 
n_nationkey\n\t\t\tand n_regionkey = r_regionkey\n\t\t\tand r_name = 
\\'EUROPE\\'\n\t)\norder by\n\ts_acctbal 
desc,\n\tn_name,\n\ts_name,\n\tp_partkey\nlimit 100;","sequential_pipe",171);
+    X_314:void := querylog.define("explain 
select\n\ts_acctbal,\n\ts_name,\n\tn_name,\n\tp_partkey,\n\tp_mfgr,\n\ts_address,\n\ts_phone,\n\ts_comment\nfrom\n\tpart,\n\tsupplier,\n\tpartsupp,\n\tnation,\n\tregion\nwhere\n\tp_partkey
 = ps_partkey\n\tand s_suppkey = ps_suppkey\n\tand p_size = 15\n\tand p_type 
like \\'%BRASS\\'\n\tand s_nationkey = n_nationkey\n\tand n_regionkey = 
r_regionkey\n\tand r_name = \\'EUROPE\\'\n\tand ps_supplycost = 
(\n\t\tselect\n\t\t\tmin(ps_supplycost)\n\t\tfrom\n\t\t\tpartsupp,\n\t\t\tsupplier,\n\t\t\tnation,\n\t\t\tregion\n\t\twhere\n\t\t\tp_partkey
 = ps_partkey\n\t\t\tand s_suppkey = ps_suppkey\n\t\t\tand s_nationkey = 
n_nationkey\n\t\t\tand n_regionkey = r_regionkey\n\t\t\tand r_name = 
\\'EUROPE\\'\n\t)\norder by\n\ts_acctbal 
desc,\n\tn_name,\n\ts_name,\n\tp_partkey\nlimit 100;","sequential_pipe",167);
     X_6 := sql.mvc();
     X_7:bat[:oid,:oid]  := sql.tid(X_6,"sys","nation");
     X_10:bat[:oid,:oid]  := 
sql.bind_idxbat(X_6,"sys","nation","nation_n_regionkey_fkey",0);
@@ -148,51 +148,48 @@ function user.s2_1{autoCommit=true}(A0:i
     X_135 := sql.subdelta(X_368,X_128,X_132,X_369,X_371);
     X_137 := X_135;
     (X_138,r1_167) := 
algebra.subjoin(X_127,X_137,nil:BAT,nil:BAT,false,nil:lng);
-    X_372 := algebra.leftfetchjoin(X_138,X_117);
     X_142:bat[:oid,:int]  := sql.bind(X_6,"sys","part","p_partkey",0);
     (X_146,r1_175) := sql.bind(X_6,"sys","part","p_partkey",2);
     X_149:bat[:oid,:int]  := sql.bind(X_6,"sys","part","p_partkey",1);
     X_151 := sql.projectdelta(X_93,X_142,X_146,r1_175,X_149);
-    X_152:bat[:oid,:int]  := 
algebra.leftfetchjoinPath(X_372,X_103,r1_111,X_151);
+    X_152:bat[:oid,:int] := 
algebra.leftfetchjoinPath(X_138,X_117,X_103,r1_111,X_151);
     (X_153,r1_187) := 
algebra.subjoin(X_66,X_152,nil:BAT,nil:BAT,false,nil:lng);
     X_156:bat[:oid,:oid] := batcalc.identity(X_152);
     X_157 := algebra.leftfetchjoin(r1_187,X_156);
     (X_158,r1_194,r2_194) := group.subgroupdone(X_157);
-    X_373 := algebra.leftfetchjoin(r1_194,r1_187);
     X_161:bat[:oid,:lng]  := sql.bind(X_6,"sys","partsupp","ps_supplycost",0);
     (X_165,r1_201) := sql.bind(X_6,"sys","partsupp","ps_supplycost",2);
     X_167:bat[:oid,:lng]  := sql.bind(X_6,"sys","partsupp","ps_supplycost",1);
     X_168 := sql.projectdelta(X_46,X_161,X_165,r1_201,X_167);
+    X_169:bat[:oid,:lng] := 
algebra.leftfetchjoinPath(r1_194,r1_187,X_138,X_117,X_103,X_95,X_168);
     X_173:bat[:oid,:lng]  := algebra.leftfetchjoinPath(X_153,r1_63,X_168);
     X_174:bat[:oid,:lng] := aggr.submin(X_173,X_158,r1_194,true);
-    X_169:bat[:oid,:lng]  := 
algebra.leftfetchjoinPath(X_373,X_138,X_117,X_103,X_95,X_168);
     X_176:bat[:oid,:bit] := batcalc.==(X_169,X_174);
     X_177 := algebra.subselect(X_176,true,true,true,true,false);
-    X_374 := algebra.leftfetchjoin(X_177,r1_194);
-    X_179:bat[:oid,:int] := algebra.leftfetchjoinPath(X_374,r1_187,X_152);
+    X_179:bat[:oid,:int] := 
algebra.leftfetchjoinPath(X_177,r1_194,r1_187,X_152);
     X_180:bat[:oid,:str]  := sql.bind(X_6,"sys","supplier","s_name",0);
     (X_184,r1_237) := sql.bind(X_6,"sys","supplier","s_name",2);
     X_186:bat[:oid,:str]  := sql.bind(X_6,"sys","supplier","s_name",1);
     X_187 := sql.projectdelta(X_101,X_180,X_184,r1_237,X_186);
-    X_188:bat[:oid,:str]  := 
algebra.leftfetchjoinPath(X_374,r1_187,X_138,X_117,r1_127,X_187);
+    X_188:bat[:oid,:str] := 
algebra.leftfetchjoinPath(X_177,r1_194,r1_187,X_138,X_117,r1_127,X_187);
     X_189:bat[:oid,:str]  := sql.bind(X_6,"sys","nation","n_name",0);
     (X_193,r1_252) := sql.bind(X_6,"sys","nation","n_name",2);
     X_196:bat[:oid,:str]  := sql.bind(X_6,"sys","nation","n_name",1);
     X_198 := sql.projectdelta(X_115,X_189,X_193,r1_252,X_196);
-    X_199:bat[:oid,:str]  := 
algebra.leftfetchjoinPath(X_374,r1_187,X_138,r1_142,X_198);
+    X_199:bat[:oid,:str] := 
algebra.leftfetchjoinPath(X_177,r1_194,r1_187,X_138,r1_142,X_198);
     X_200:bat[:oid,:lng]  := sql.bind(X_6,"sys","supplier","s_acctbal",0);
     (X_202,r1_266) := sql.bind(X_6,"sys","supplier","s_acctbal",2);
     X_206:bat[:oid,:lng]  := sql.bind(X_6,"sys","supplier","s_acctbal",1);
     X_207 := sql.projectdelta(X_101,X_200,X_202,r1_266,X_206);
-    X_208:bat[:oid,:lng]  := 
algebra.leftfetchjoinPath(X_374,r1_187,X_138,X_117,r1_127,X_207);
+    X_208:bat[:oid,:lng] := 
algebra.leftfetchjoinPath(X_177,r1_194,r1_187,X_138,X_117,r1_127,X_207);
+    X_242:bat[:oid,:str]  := sql.bind(X_6,"sys","part","p_mfgr",0);
+    (X_247,r1_336) := sql.bind(X_6,"sys","part","p_mfgr",2);
+    X_250:bat[:oid,:str]  := sql.bind(X_6,"sys","part","p_mfgr",1);
+    X_251 := sql.projectdelta(X_93,X_242,X_247,r1_336,X_250);
     (X_209,r1_284) := algebra.firstn(X_208,100:wrd,false,false);
     (X_212,r1_289) := algebra.firstn(X_199,X_209,r1_284,100:wrd,true,false);
     (X_215,r1_294) := algebra.firstn(X_188,X_212,r1_289,100:wrd,true,false);
     X_217 := algebra.firstn(X_179,X_215,r1_294,100:wrd,true,false);
-    X_242:bat[:oid,:str]  := sql.bind(X_6,"sys","part","p_mfgr",0);
-    (X_247,r1_336) := sql.bind(X_6,"sys","part","p_mfgr",2);
-    X_250:bat[:oid,:str]  := sql.bind(X_6,"sys","part","p_mfgr",1);
-    X_251 := sql.projectdelta(X_93,X_242,X_247,r1_336,X_250);
     X_218 := algebra.leftfetchjoin(X_217,X_179);
     X_219 := algebra.leftfetchjoin(X_217,X_188);
     X_220 := algebra.leftfetchjoin(X_217,X_199);
@@ -203,27 +200,26 @@ function user.s2_1{autoCommit=true}(A0:i
     (X_231,r1_312,r2_312) := algebra.subsort(X_218,r1_309,r2_309,false,false);
     X_234 := algebra.leftfetchjoin(r1_312,X_221);
     X_237 := algebra.subslice(X_234,0,99:wrd);
-    X_375 := algebra.leftfetchjoin(X_237,r1_312);
-    X_252:bat[:oid,:str]  := 
algebra.leftfetchjoinPath(X_375,X_217,X_177,r1_194,r1_187,X_138,X_117,X_103,r1_111,X_251);
+    X_252:bat[:oid,:str] := 
algebra.leftfetchjoinPath(X_237,r1_312,X_217,X_177,r1_194,r1_187,X_138,X_117,X_103,r1_111,X_251);
     X_253:bat[:oid,:str]  := sql.bind(X_6,"sys","supplier","s_address",0);
     (X_256,r1_356) := sql.bind(X_6,"sys","supplier","s_address",2);
     X_258:bat[:oid,:str]  := sql.bind(X_6,"sys","supplier","s_address",1);
     X_260 := sql.projectdelta(X_101,X_253,X_256,r1_356,X_258);
-    X_261:bat[:oid,:str]  := 
algebra.leftfetchjoinPath(X_375,X_217,X_177,r1_194,r1_187,X_138,X_117,r1_127,X_260);
+    X_261:bat[:oid,:str] := 
algebra.leftfetchjoinPath(X_237,r1_312,X_217,X_177,r1_194,r1_187,X_138,X_117,r1_127,X_260);
     X_262:bat[:oid,:str]  := sql.bind(X_6,"sys","supplier","s_phone",0);
     (X_266,r1_375) := sql.bind(X_6,"sys","supplier","s_phone",2);
     X_269:bat[:oid,:str]  := sql.bind(X_6,"sys","supplier","s_phone",1);
     X_270 := sql.projectdelta(X_101,X_262,X_266,r1_375,X_269);
-    X_271:bat[:oid,:str]  := 
algebra.leftfetchjoinPath(X_375,X_217,X_177,r1_194,r1_187,X_138,X_117,r1_127,X_270);
+    X_271:bat[:oid,:str] := 
algebra.leftfetchjoinPath(X_237,r1_312,X_217,X_177,r1_194,r1_187,X_138,X_117,r1_127,X_270);
     X_272:bat[:oid,:str]  := sql.bind(X_6,"sys","supplier","s_comment",0);
     (X_275,r1_393) := sql.bind(X_6,"sys","supplier","s_comment",2);
     X_277:bat[:oid,:str]  := sql.bind(X_6,"sys","supplier","s_comment",1);
     X_279 := sql.projectdelta(X_101,X_272,X_275,r1_393,X_277);
-    X_280:bat[:oid,:str]  := 
algebra.leftfetchjoinPath(X_375,X_217,X_177,r1_194,r1_187,X_138,X_117,r1_127,X_279);
+    X_280:bat[:oid,:str] := 
algebra.leftfetchjoinPath(X_237,r1_312,X_217,X_177,r1_194,r1_187,X_138,X_117,r1_127,X_279);
     X_238 := algebra.leftfetchjoin(X_237,X_234);
-    X_241:bat[:oid,:int]  := algebra.leftfetchjoin(X_375,X_218);
-    X_240:bat[:oid,:str]  := algebra.leftfetchjoin(X_375,X_220);
-    X_239:bat[:oid,:str]  := algebra.leftfetchjoin(X_375,X_219);
+    X_241:bat[:oid,:int] := algebra.leftfetchjoinPath(X_237,r1_312,X_218);
+    X_240:bat[:oid,:str] := algebra.leftfetchjoinPath(X_237,r1_312,X_220);
+    X_239:bat[:oid,:str] := algebra.leftfetchjoinPath(X_237,r1_312,X_219);
     X_281 := sql.resultSet(8,1,X_238);
     sql.rsColumn(X_281,"sys.supplier","s_acctbal","decimal",15,2,X_238);
     sql.rsColumn(X_281,"sys.supplier","s_name","varchar",25,0,X_239);
diff --git a/sql/benchmarks/tpch/Tests/03-explain.stable.out 
b/sql/benchmarks/tpch/Tests/03-explain.stable.out
--- a/sql/benchmarks/tpch/Tests/03-explain.stable.out
+++ b/sql/benchmarks/tpch/Tests/03-explain.stable.out
@@ -54,7 +54,7 @@ Ready.
 % clob # type
 % 516 # length
 function user.s2_1{autoCommit=true}(A0:bte,A1:str,A2:date,A3:date):void;
-    X_163:void := querylog.define("explain 
select\n\tl_orderkey,\n\tsum(l_extendedprice * (1 - l_discount)) as 
revenue,\n\to_orderdate,\n\to_shippriority\nfrom\n\tcustomer,\n\torders,\n\tlineitem\nwhere\n\tc_mktsegment
 = \\'BUILDING\\'\n\tand c_custkey = o_custkey\n\tand l_orderkey = 
o_orderkey\n\tand o_orderdate < date \\'1995-03-15\\'\n\tand l_shipdate > date 
\\'1995-03-15\\'\ngroup 
by\n\tl_orderkey,\n\to_orderdate,\n\to_shippriority\norder by\n\trevenue 
desc,\n\to_orderdate\nlimit 10;","sequential_pipe",93);
+    X_163:void := querylog.define("explain 
select\n\tl_orderkey,\n\tsum(l_extendedprice * (1 - l_discount)) as 
revenue,\n\to_orderdate,\n\to_shippriority\nfrom\n\tcustomer,\n\torders,\n\tlineitem\nwhere\n\tc_mktsegment
 = \\'BUILDING\\'\n\tand c_custkey = o_custkey\n\tand l_orderkey = 
o_orderkey\n\tand o_orderdate < date \\'1995-03-15\\'\n\tand l_shipdate > date 
\\'1995-03-15\\'\ngroup 
by\n\tl_orderkey,\n\to_orderdate,\n\to_shippriority\norder by\n\trevenue 
desc,\n\to_orderdate\nlimit 10;","sequential_pipe",90);
     X_6 := sql.mvc();
     X_10:bat[:oid,:date]  := sql.bind(X_6,"sys","orders","o_orderdate",0);
     X_7:bat[:oid,:oid]  := sql.tid(X_6,"sys","orders");
diff --git a/sql/benchmarks/tpch/Tests/03-explain.stable.out.int128 
b/sql/benchmarks/tpch/Tests/03-explain.stable.out.int128
--- a/sql/benchmarks/tpch/Tests/03-explain.stable.out.int128
+++ b/sql/benchmarks/tpch/Tests/03-explain.stable.out.int128
@@ -54,7 +54,7 @@ Ready.
 % clob # type
 % 516 # length
 function user.s2_1{autoCommit=true}(A0:bte,A1:str,A2:date,A3:date):void;
-    X_163:void := querylog.define("explain 
select\n\tl_orderkey,\n\tsum(l_extendedprice * (1 - l_discount)) as 
revenue,\n\to_orderdate,\n\to_shippriority\nfrom\n\tcustomer,\n\torders,\n\tlineitem\nwhere\n\tc_mktsegment
 = \\'BUILDING\\'\n\tand c_custkey = o_custkey\n\tand l_orderkey = 
o_orderkey\n\tand o_orderdate < date \\'1995-03-15\\'\n\tand l_shipdate > date 
\\'1995-03-15\\'\ngroup 
by\n\tl_orderkey,\n\to_orderdate,\n\to_shippriority\norder by\n\trevenue 
desc,\n\to_orderdate\nlimit 10;","sequential_pipe",93);
+    X_163:void := querylog.define("explain 
select\n\tl_orderkey,\n\tsum(l_extendedprice * (1 - l_discount)) as 
revenue,\n\to_orderdate,\n\to_shippriority\nfrom\n\tcustomer,\n\torders,\n\tlineitem\nwhere\n\tc_mktsegment
 = \\'BUILDING\\'\n\tand c_custkey = o_custkey\n\tand l_orderkey = 
o_orderkey\n\tand o_orderdate < date \\'1995-03-15\\'\n\tand l_shipdate > date 
\\'1995-03-15\\'\ngroup 
by\n\tl_orderkey,\n\to_orderdate,\n\to_shippriority\norder by\n\trevenue 
desc,\n\to_orderdate\nlimit 10;","sequential_pipe",90);
     X_6 := sql.mvc();
     X_10:bat[:oid,:date]  := sql.bind(X_6,"sys","orders","o_orderdate",0);
     X_7:bat[:oid,:oid]  := sql.tid(X_6,"sys","orders");
@@ -93,14 +93,13 @@ function user.s2_1{autoCommit=true}(A0:b
     X_60:bat[:oid,:oid]  := 
sql.bind_idxbat(X_6,"sys","lineitem","lineitem_l_orderkey_fkey",1);
     X_61 := sql.projectdelta(X_54,X_56,X_58,r1_69,X_60);
     (X_62,r1_75) := algebra.subjoin(X_42,X_61,nil:BAT,nil:BAT,false,nil:lng);
-    X_204 := algebra.leftfetchjoin(X_62,X_37);
     X_65 := sql.projectdelta(X_18,X_10,X_13,r1_13,X_16);
-    X_66:bat[:oid,:date] := algebra.leftfetchjoin(X_204,X_65);
+    X_66:bat[:oid,:date] := algebra.leftfetchjoinPath(X_62,X_37,X_65);
     X_67:bat[:oid,:int]  := sql.bind(X_6,"sys","orders","o_shippriority",0);
     (X_70,r1_84) := sql.bind(X_6,"sys","orders","o_shippriority",2);
     X_73:bat[:oid,:int]  := sql.bind(X_6,"sys","orders","o_shippriority",1);
     X_74 := sql.projectdelta(X_18,X_67,X_70,r1_84,X_73);
-    X_75:bat[:oid,:int] := algebra.leftfetchjoin(X_204,X_74);
+    X_75:bat[:oid,:int] := algebra.leftfetchjoinPath(X_62,X_37,X_74);
     X_76:bat[:oid,:int]  := sql.bind(X_6,"sys","lineitem","l_orderkey",0);
     (X_80,r1_97) := sql.bind(X_6,"sys","lineitem","l_orderkey",2);
     X_83:bat[:oid,:int]  := sql.bind(X_6,"sys","lineitem","l_orderkey",1);
@@ -130,14 +129,12 @@ function user.s2_1{autoCommit=true}(A0:b
     X_128 := algebra.leftfetchjoin(X_126,X_120);
     (X_129,r1_165,r2_165) := algebra.subsort(X_128,true,false);
     (X_132,r1_168,r2_168) := algebra.subsort(X_127,r1_165,r2_165,false,false);
-    X_205 := algebra.leftfetchjoin(r1_168,X_126);
-    X_135:bat[:oid,:int] := algebra.leftfetchjoinPath(X_205,r1_112,X_86);
+    X_135:bat[:oid,:int] := 
algebra.leftfetchjoinPath(r1_168,X_126,r1_112,X_86);
     X_137 := algebra.subslice(X_135,0,9:wrd);
-    X_206 := algebra.leftfetchjoin(X_137,r1_168);
-    X_141:bat[:oid,:int] := algebra.leftfetchjoinPath(X_206,X_126,r1_112,X_75);
+    X_141:bat[:oid,:int] := 
algebra.leftfetchjoinPath(X_137,r1_168,X_126,r1_112,X_75);
     X_138 := algebra.leftfetchjoin(X_137,X_135);
-    X_140:bat[:oid,:date] := algebra.leftfetchjoin(X_206,X_127);
-    X_139:bat[:oid,:hge] := algebra.leftfetchjoin(X_206,X_128);
+    X_140:bat[:oid,:date] := algebra.leftfetchjoinPath(X_137,r1_168,X_127);
+    X_139:bat[:oid,:hge] := algebra.leftfetchjoinPath(X_137,r1_168,X_128);
     X_142 := sql.resultSet(4,1,X_138);
     sql.rsColumn(X_142,"sys.lineitem","l_orderkey","int",32,0,X_138);
     sql.rsColumn(X_142,"sys.L1","revenue","decimal",33,4,X_139);
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to