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