Changeset: 40d2e5b14efe for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=40d2e5b14efe Modified Files: sql/benchmarks/tpch/Tests/02-explain.stable.out sql/benchmarks/tpch/Tests/02-plan.stable.out sql/benchmarks/tpch/Tests/17-explain.stable.out sql/benchmarks/tpch/Tests/17-plan.stable.out sql/benchmarks/tpch/Tests/20-explain.stable.out sql/benchmarks/tpch/Tests/20-plan.stable.out sql/server/rel_optimizer.c Branch: Oct2014 Log Message:
only push down group by's down outer-joins (not usualy size reducing joins) diffs (truncated from 843 to 300 lines): 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 @@ -67,167 +67,168 @@ Ready. % 823 # length function user.s2_1{autoCommit=true}(A0:int,A1:str,A2:str,A3:str):void; X_6 := sql.mvc(); - X_10 := sql.bind(X_6,"sys","part","p_type",0); - X_19 := sql.bind(X_6,"sys","part","p_size",0); - X_7:bat[:oid,:oid] := sql.tid(X_6,"sys","part"); - X_334 := algebra.subselect(X_19,X_7,A0,A0,true,true,false); - (X_21,r1_25) := sql.bind(X_6,"sys","part","p_size",2); - X_335 := algebra.subselect(r1_25,A0,A0,true,true,false); - X_23 := sql.bind(X_6,"sys","part","p_size",1); - X_336 := algebra.subselect(X_23,X_7,A0,A0,true,true,false); - X_24 := sql.subdelta(X_334,X_7,X_21,X_335,X_336); - X_337 := algebra.likesubselect(X_10,X_24,A1,"",false); - (X_13,r1_13) := sql.bind(X_6,"sys","part","p_type",2); - X_338 := algebra.likesubselect(r1_13,A1,"",false); - X_16 := sql.bind(X_6,"sys","part","p_type",1); - X_339 := algebra.likesubselect(X_16,X_24,A1,"",false); - X_26 := sql.subdelta(X_337,X_24,X_13,X_338,X_339); - X_27 := sql.bind(X_6,"sys","part","p_partkey",0); - (X_29,r1_36) := sql.bind(X_6,"sys","part","p_partkey",2); - X_31 := sql.bind(X_6,"sys","part","p_partkey",1); - X_32 := sql.projectdelta(X_26,X_27,X_29,r1_36,X_31); - X_33:bat[:oid,:oid] := sql.tid(X_6,"sys","nation"); - X_36 := sql.bind_idxbat(X_6,"sys","nation","nation_n_regionkey_fkey",0); - (X_39,r1_48) := sql.bind_idxbat(X_6,"sys","nation","nation_n_regionkey_fkey",2); - X_42 := sql.bind_idxbat(X_6,"sys","nation","nation_n_regionkey_fkey",1); - X_44 := sql.projectdelta(X_33,X_36,X_39,r1_48,X_42); - X_47 := sql.bind(X_6,"sys","region","r_name",0); - X_45:bat[:oid,:oid] := sql.tid(X_6,"sys","region"); - X_340 := algebra.subselect(X_47,X_45,A3,A3,true,true,false); - (X_49,r1_59) := sql.bind(X_6,"sys","region","r_name",2); - X_341 := algebra.subselect(r1_59,A3,A3,true,true,false); - X_51 := sql.bind(X_6,"sys","region","r_name",1); - X_342 := algebra.subselect(X_51,X_45,A3,A3,true,true,false); - X_52 := sql.subdelta(X_340,X_45,X_49,X_341,X_342); - X_55 := X_52; - (X_56,r1_69) := algebra.join(X_44,X_55); - X_58 := algebra.leftfetchjoin(X_56,X_33); - X_59:bat[:oid,:oid] := sql.tid(X_6,"sys","supplier"); - X_61 := sql.bind_idxbat(X_6,"sys","supplier","supplier_s_nationkey_fkey",0); - (X_63,r1_76) := sql.bind_idxbat(X_6,"sys","supplier","supplier_s_nationkey_fkey",2); - X_66 := sql.bind_idxbat(X_6,"sys","supplier","supplier_s_nationkey_fkey",1); - X_67 := sql.projectdelta(X_59,X_61,X_63,r1_76,X_66); - (X_68,r1_82) := algebra.join(X_58,X_67); - X_70 := algebra.leftfetchjoin(r1_82,X_59); - X_71:bat[:oid,:oid] := sql.tid(X_6,"sys","partsupp"); - X_73 := sql.bind_idxbat(X_6,"sys","partsupp","partsupp_ps_suppkey_fkey",0); - (X_76,r1_90) := sql.bind_idxbat(X_6,"sys","partsupp","partsupp_ps_suppkey_fkey",2); - X_79 := sql.bind_idxbat(X_6,"sys","partsupp","partsupp_ps_suppkey_fkey",1); - X_81 := sql.projectdelta(X_71,X_73,X_76,r1_90,X_79); - (X_82,r1_97) := algebra.join(X_70,X_81); - X_84 := sql.bind(X_6,"sys","partsupp","ps_partkey",0); - (X_86,r1_101) := sql.bind(X_6,"sys","partsupp","ps_partkey",2); - X_88 := sql.bind(X_6,"sys","partsupp","ps_partkey",1); - X_89 := sql.projectdelta(X_71,X_84,X_86,r1_101,X_88); - X_90 := algebra.leftfetchjoin(r1_97,X_89); - (X_91,r1_107,r2_107) := group.subgroupdone(X_90); - X_94 := algebra.leftfetchjoin(r1_107,X_90); - X_109 := sql.bind(X_6,"sys","partsupp","ps_supplycost",0); - (X_112,r1_130) := sql.bind(X_6,"sys","partsupp","ps_supplycost",2); - X_115 := sql.bind(X_6,"sys","partsupp","ps_supplycost",1); - X_117 := sql.projectdelta(X_71,X_109,X_112,r1_130,X_115); - X_119 := algebra.leftfetchjoin(r1_97,X_117); - X_120:bat[:oid,:lng] := aggr.submin(X_119,X_91,r1_107,true); - (X_95,r1_111) := algebra.join(X_32,X_94); - X_97 := X_26; - X_98 := algebra.leftfetchjoin(X_95,X_97); - X_100 := sql.bind_idxbat(X_6,"sys","partsupp","partsupp_ps_partkey_fkey",0); - (X_102,r1_119) := sql.bind_idxbat(X_6,"sys","partsupp","partsupp_ps_partkey_fkey",2); - X_105 := sql.bind_idxbat(X_6,"sys","partsupp","partsupp_ps_partkey_fkey",1); - X_106 := sql.projectdelta(X_71,X_100,X_102,r1_119,X_105); - (X_107,r1_125) := algebra.join(X_98,X_106); - X_118 := algebra.leftfetchjoin(r1_125,X_117); - X_122:bat[:oid,:lng] := algebra.leftfetchjoinPath(X_107,r1_111,X_120); - X_123:bat[:oid,:bit] := batcalc.==(X_118,X_122); - X_124 := algebra.subselect(X_123,true,true,true,true,false); - X_127:bat[:oid,:oid] := algebra.leftfetchjoinPath(X_124,r1_125,X_81); - (X_128,r1_167) := algebra.join(X_127,X_59); - X_133 := algebra.leftfetchjoin(r1_167,X_67); - X_134:bat[:oid,:oid] := sql.tid(X_6,"sys","nation"); - (X_136,r1_182) := algebra.join(X_133,X_134); - X_138 := sql.bind_idxbat(X_6,"sys","nation","nation_n_regionkey_fkey",0); - (X_140,r1_186) := sql.bind_idxbat(X_6,"sys","nation","nation_n_regionkey_fkey",2); - X_142 := sql.bind_idxbat(X_6,"sys","nation","nation_n_regionkey_fkey",1); - X_144 := sql.projectdelta(X_134,X_138,X_140,r1_186,X_142); - X_145 := algebra.leftfetchjoin(r1_182,X_144); - X_148 := sql.bind(X_6,"sys","region","r_name",0); - X_146:bat[:oid,:oid] := sql.tid(X_6,"sys","region"); - X_343 := algebra.subselect(X_148,X_146,A2,A2,true,true,false); - (X_150,r1_197) := sql.bind(X_6,"sys","region","r_name",2); - X_344 := algebra.subselect(r1_197,A2,A2,true,true,false); - X_152 := sql.bind(X_6,"sys","region","r_name",1); - X_345 := algebra.subselect(X_152,X_146,A2,A2,true,true,false); - X_153 := sql.subdelta(X_343,X_146,X_150,X_344,X_345); - X_156 := X_153; - (X_157,r1_207) := algebra.join(X_145,X_156); - X_346 := algebra.leftfetchjoin(X_157,X_136); - X_159 := algebra.leftfetchjoin(X_124,X_107); - X_160:bat[:oid,:int] := algebra.leftfetchjoinPath(X_346,X_128,X_159,X_95,X_32); + X_7:bat[:oid,:oid] := sql.tid(X_6,"sys","nation"); + X_10 := sql.bind_idxbat(X_6,"sys","nation","nation_n_regionkey_fkey",0); + (X_13,r1_13) := sql.bind_idxbat(X_6,"sys","nation","nation_n_regionkey_fkey",2); + X_16 := sql.bind_idxbat(X_6,"sys","nation","nation_n_regionkey_fkey",1); + X_18 := sql.projectdelta(X_7,X_10,X_13,r1_13,X_16); + X_21 := sql.bind(X_6,"sys","region","r_name",0); + X_19:bat[:oid,:oid] := sql.tid(X_6,"sys","region"); + X_337 := algebra.subselect(X_21,X_19,A3,A3,true,true,false); + (X_23,r1_24) := sql.bind(X_6,"sys","region","r_name",2); + X_338 := algebra.subselect(r1_24,A3,A3,true,true,false); + X_25 := sql.bind(X_6,"sys","region","r_name",1); + X_339 := algebra.subselect(X_25,X_19,A3,A3,true,true,false); + X_26 := sql.subdelta(X_337,X_19,X_23,X_338,X_339); + X_28 := X_26; + (X_29,r1_33) := algebra.join(X_18,X_28); + X_31 := algebra.leftfetchjoin(X_29,X_7); + X_32:bat[:oid,:oid] := sql.tid(X_6,"sys","supplier"); + X_34 := sql.bind_idxbat(X_6,"sys","supplier","supplier_s_nationkey_fkey",0); + (X_36,r1_40) := sql.bind_idxbat(X_6,"sys","supplier","supplier_s_nationkey_fkey",2); + X_39 := sql.bind_idxbat(X_6,"sys","supplier","supplier_s_nationkey_fkey",1); + X_40 := sql.projectdelta(X_32,X_34,X_36,r1_40,X_39); + (X_41,r1_46) := algebra.join(X_31,X_40); + X_43 := algebra.leftfetchjoin(r1_46,X_32); + X_44:bat[:oid,:oid] := sql.tid(X_6,"sys","partsupp"); + X_46 := sql.bind_idxbat(X_6,"sys","partsupp","partsupp_ps_suppkey_fkey",0); + (X_49,r1_54) := sql.bind_idxbat(X_6,"sys","partsupp","partsupp_ps_suppkey_fkey",2); + X_52 := sql.bind_idxbat(X_6,"sys","partsupp","partsupp_ps_suppkey_fkey",1); + X_54 := sql.projectdelta(X_44,X_46,X_49,r1_54,X_52); + (X_55,r1_61) := algebra.join(X_43,X_54); + X_57 := sql.bind(X_6,"sys","partsupp","ps_partkey",0); + (X_59,r1_65) := sql.bind(X_6,"sys","partsupp","ps_partkey",2); + X_61 := sql.bind(X_6,"sys","partsupp","ps_partkey",1); + X_62 := sql.projectdelta(X_44,X_57,X_59,r1_65,X_61); + X_63 := algebra.leftfetchjoin(r1_61,X_62); + X_64 := sql.bind_idxbat(X_6,"sys","partsupp","partsupp_ps_partkey_fkey",0); + (X_66,r1_74) := sql.bind_idxbat(X_6,"sys","partsupp","partsupp_ps_partkey_fkey",2); + X_69 := sql.bind_idxbat(X_6,"sys","partsupp","partsupp_ps_partkey_fkey",1); + X_70 := sql.projectdelta(X_44,X_64,X_66,r1_74,X_69); + X_73 := sql.bind(X_6,"sys","part","p_type",0); + X_79 := sql.bind(X_6,"sys","part","p_size",0); + X_71:bat[:oid,:oid] := sql.tid(X_6,"sys","part"); + X_340 := algebra.subselect(X_79,X_71,A0,A0,true,true,false); + (X_82,r1_95) := sql.bind(X_6,"sys","part","p_size",2); + X_341 := algebra.subselect(r1_95,A0,A0,true,true,false); + X_85 := sql.bind(X_6,"sys","part","p_size",1); + X_342 := algebra.subselect(X_85,X_71,A0,A0,true,true,false); + X_87 := sql.subdelta(X_340,X_71,X_82,X_341,X_342); + X_343 := algebra.likesubselect(X_73,X_87,A1,"",false); + (X_75,r1_84) := sql.bind(X_6,"sys","part","p_type",2); + X_344 := algebra.likesubselect(r1_84,A1,"",false); + X_77 := sql.bind(X_6,"sys","part","p_type",1); + X_345 := algebra.likesubselect(X_77,X_87,A1,"",false); + X_90 := sql.subdelta(X_343,X_87,X_75,X_344,X_345); + X_91 := X_90; + (X_92,r1_108) := algebra.join(X_70,X_91); + X_95 := algebra.leftfetchjoin(X_92,X_54); + (X_96,r1_122) := algebra.join(X_95,X_32); + X_98 := algebra.leftfetchjoin(r1_122,X_40); + X_99:bat[:oid,:oid] := sql.tid(X_6,"sys","nation"); + (X_101,r1_134) := algebra.join(X_98,X_99); + X_103 := sql.bind_idxbat(X_6,"sys","nation","nation_n_regionkey_fkey",0); + (X_106,r1_139) := sql.bind_idxbat(X_6,"sys","nation","nation_n_regionkey_fkey",2); + X_109 := sql.bind_idxbat(X_6,"sys","nation","nation_n_regionkey_fkey",1); + X_111 := sql.projectdelta(X_99,X_103,X_106,r1_139,X_109); + X_112 := algebra.leftfetchjoin(r1_134,X_111); + X_116 := sql.bind(X_6,"sys","region","r_name",0); + X_113:bat[:oid,:oid] := sql.tid(X_6,"sys","region"); + X_346 := algebra.subselect(X_116,X_113,A2,A2,true,true,false); + (X_118,r1_152) := sql.bind(X_6,"sys","region","r_name",2); + X_347 := algebra.subselect(r1_152,A2,A2,true,true,false); + X_120 := sql.bind(X_6,"sys","region","r_name",1); + X_348 := algebra.subselect(X_120,X_113,A2,A2,true,true,false); + X_121 := sql.subdelta(X_346,X_113,X_118,X_347,X_348); + X_124 := X_121; + (X_125,r1_162) := algebra.join(X_112,X_124); + X_349 := algebra.leftfetchjoin(X_125,X_101); + X_127 := sql.bind(X_6,"sys","part","p_partkey",0); + (X_130,r1_167) := sql.bind(X_6,"sys","part","p_partkey",2); + X_132 := sql.bind(X_6,"sys","part","p_partkey",1); + X_133 := sql.projectdelta(X_90,X_127,X_130,r1_167,X_132); + X_134:bat[:oid,:int] := algebra.leftfetchjoinPath(X_349,X_96,r1_108,X_133); + (X_135,r1_177) := algebra.join(X_63,X_134); + X_137:bat[:oid,:oid] := batcalc.identity(X_134); + X_138 := algebra.leftfetchjoin(r1_177,X_137); + (X_139,r1_183,r2_183) := group.subgroupdone(X_138); + X_350 := algebra.leftfetchjoin(r1_183,r1_177); + X_142 := sql.bind(X_6,"sys","partsupp","ps_supplycost",0); + (X_147,r1_191) := sql.bind(X_6,"sys","partsupp","ps_supplycost",2); + X_150 := sql.bind(X_6,"sys","partsupp","ps_supplycost",1); + X_152 := sql.projectdelta(X_44,X_142,X_147,r1_191,X_150); + X_154:bat[:oid,:lng] := algebra.leftfetchjoinPath(X_135,r1_61,X_152); + X_155:bat[:oid,:lng] := aggr.submin(X_154,X_139,r1_183,true); + X_153:bat[:oid,:lng] := algebra.leftfetchjoinPath(X_350,X_125,X_101,X_96,X_92,X_152); + X_157:bat[:oid,:bit] := batcalc.==(X_153,X_155); + X_158 := algebra.subselect(X_157,true,true,true,true,false); + X_351 := algebra.leftfetchjoin(X_158,r1_183); + X_160:bat[:oid,:int] := algebra.leftfetchjoinPath(X_351,r1_177,X_134); X_161 := sql.bind(X_6,"sys","supplier","s_name",0); - (X_165,r1_219) := sql.bind(X_6,"sys","supplier","s_name",2); - X_168 := sql.bind(X_6,"sys","supplier","s_name",1); - X_171 := sql.projectdelta(X_59,X_161,X_165,r1_219,X_168); - X_172:bat[:oid,:str] := algebra.leftfetchjoinPath(X_346,r1_167,X_171); + (X_166,r1_227) := sql.bind(X_6,"sys","supplier","s_name",2); + X_169 := sql.bind(X_6,"sys","supplier","s_name",1); + X_171 := sql.projectdelta(X_32,X_161,X_166,r1_227,X_169); + X_172:bat[:oid,:str] := algebra.leftfetchjoinPath(X_351,r1_177,X_125,X_101,r1_122,X_171); X_173 := sql.bind(X_6,"sys","nation","n_name",0); - (X_176,r1_233) := sql.bind(X_6,"sys","nation","n_name",2); + (X_176,r1_243) := sql.bind(X_6,"sys","nation","n_name",2); X_178 := sql.bind(X_6,"sys","nation","n_name",1); - X_179 := sql.projectdelta(X_134,X_173,X_176,r1_233,X_178); - X_180:bat[:oid,:str] := algebra.leftfetchjoinPath(X_157,r1_182,X_179); + X_179 := sql.projectdelta(X_99,X_173,X_176,r1_243,X_178); + X_180:bat[:oid,:str] := algebra.leftfetchjoinPath(X_351,r1_177,X_125,r1_134,X_179); X_181 := sql.bind(X_6,"sys","supplier","s_acctbal",0); - (X_183,r1_242) := sql.bind(X_6,"sys","supplier","s_acctbal",2); - X_185 := sql.bind(X_6,"sys","supplier","s_acctbal",1); - X_186 := sql.projectdelta(X_59,X_181,X_183,r1_242,X_185); - X_187:bat[:oid,:lng] := algebra.leftfetchjoinPath(X_346,r1_167,X_186); - (X_188,r1_255) := algebra.firstn(X_187,100:wrd,false,false); - (X_191,r1_260) := algebra.firstn(X_180,X_188,r1_255,100:wrd,true,false); - (X_194,r1_265) := algebra.firstn(X_172,X_191,r1_260,100:wrd,true,false); - X_196 := algebra.firstn(X_160,X_194,r1_265,100:wrd,true,false); - X_197 := algebra.leftfetchjoin(X_196,X_160); - X_198 := algebra.leftfetchjoin(X_196,X_172); - X_199 := algebra.leftfetchjoin(X_196,X_180); - X_200 := algebra.leftfetchjoin(X_196,X_187); - (X_201,r1_274,r2_274) := algebra.subsort(X_200,true,false); - (X_204,r1_277,r2_277) := algebra.subsort(X_199,r1_274,r2_274,false,false); - (X_207,r1_280,r2_280) := algebra.subsort(X_198,r1_277,r2_277,false,false); - (X_210,r1_283,r2_283) := algebra.subsort(X_197,r1_280,r2_280,false,false); - X_213 := algebra.leftfetchjoin(r1_283,X_200); - X_216 := algebra.subslice(X_213,0:wrd,99:wrd); - X_217 := algebra.leftfetchjoin(X_216,X_213); - X_347 := algebra.leftfetchjoin(X_216,r1_283); - X_251 := sql.bind(X_6,"sys","supplier","s_comment",0); - (X_253,r1_355) := sql.bind(X_6,"sys","supplier","s_comment",2); - X_256 := sql.bind(X_6,"sys","supplier","s_comment",1); - X_257 := sql.projectdelta(X_59,X_251,X_253,r1_355,X_256); - X_258:bat[:oid,:str] := algebra.leftfetchjoinPath(X_347,X_196,X_157,X_136,r1_167,X_257); - X_241 := sql.bind(X_6,"sys","supplier","s_phone",0); - (X_245,r1_341) := sql.bind(X_6,"sys","supplier","s_phone",2); - X_248 := sql.bind(X_6,"sys","supplier","s_phone",1); - X_249 := sql.projectdelta(X_59,X_241,X_245,r1_341,X_248); - X_250:bat[:oid,:str] := algebra.leftfetchjoinPath(X_347,X_196,X_157,X_136,r1_167,X_249); - X_232 := sql.bind(X_6,"sys","supplier","s_address",0); - (X_235,r1_325) := sql.bind(X_6,"sys","supplier","s_address",2); - X_237 := sql.bind(X_6,"sys","supplier","s_address",1); - X_239 := sql.projectdelta(X_59,X_232,X_235,r1_325,X_237); - X_240:bat[:oid,:str] := algebra.leftfetchjoinPath(X_347,X_196,X_157,X_136,r1_167,X_239); - X_221 := sql.bind(X_6,"sys","part","p_mfgr",0); - (X_226,r1_307) := sql.bind(X_6,"sys","part","p_mfgr",2); - X_229 := sql.bind(X_6,"sys","part","p_mfgr",1); - X_230 := sql.projectdelta(X_26,X_221,X_226,r1_307,X_229); - X_231:bat[:oid,:str] := algebra.leftfetchjoinPath(X_347,X_196,X_157,X_136,X_128,X_159,X_95,X_230); - X_220:bat[:oid,:int] := algebra.leftfetchjoin(X_347,X_197); - X_219:bat[:oid,:str] := algebra.leftfetchjoin(X_347,X_199); - X_218:bat[:oid,:str] := algebra.leftfetchjoin(X_347,X_198); - X_259 := sql.resultSet(8,1,X_217); - sql.rsColumn(X_259,"sys.supplier","s_acctbal","decimal",15,2,X_217); - sql.rsColumn(X_259,"sys.supplier","s_name","varchar",25,0,X_218); - sql.rsColumn(X_259,"sys.nation","n_name","varchar",25,0,X_219); - sql.rsColumn(X_259,"sys.part","p_partkey","int",32,0,X_220); - sql.rsColumn(X_259,"sys.part","p_mfgr","varchar",25,0,X_231); - sql.rsColumn(X_259,"sys.supplier","s_address","varchar",40,0,X_240); - sql.rsColumn(X_259,"sys.supplier","s_phone","varchar",15,0,X_250); - sql.rsColumn(X_259,"sys.supplier","s_comment","varchar",101,0,X_258); - X_290 := io.stdout(); - sql.exportResult(X_290,X_259); + (X_183,r1_255) := sql.bind(X_6,"sys","supplier","s_acctbal",2); + X_187 := sql.bind(X_6,"sys","supplier","s_acctbal",1); + X_188 := sql.projectdelta(X_32,X_181,X_183,r1_255,X_187); + X_189:bat[:oid,:lng] := algebra.leftfetchjoinPath(X_351,r1_177,X_125,X_101,r1_122,X_188); + (X_190,r1_273) := algebra.firstn(X_189,100:wrd,false,false); + (X_193,r1_278) := algebra.firstn(X_180,X_190,r1_273,100:wrd,true,false); + (X_196,r1_283) := algebra.firstn(X_172,X_193,r1_278,100:wrd,true,false); + X_198 := algebra.firstn(X_160,X_196,r1_283,100:wrd,true,false); + X_223 := sql.bind(X_6,"sys","part","p_mfgr",0); + (X_228,r1_325) := sql.bind(X_6,"sys","part","p_mfgr",2); + X_231 := sql.bind(X_6,"sys","part","p_mfgr",1); + X_232 := sql.projectdelta(X_90,X_223,X_228,r1_325,X_231); + X_199 := algebra.leftfetchjoin(X_198,X_160); + X_200 := algebra.leftfetchjoin(X_198,X_172); + X_201 := algebra.leftfetchjoin(X_198,X_180); + X_202 := algebra.leftfetchjoin(X_198,X_189); + (X_203,r1_292,r2_292) := algebra.subsort(X_202,true,false); + (X_206,r1_295,r2_295) := algebra.subsort(X_201,r1_292,r2_292,false,false); + (X_209,r1_298,r2_298) := algebra.subsort(X_200,r1_295,r2_295,false,false); + (X_212,r1_301,r2_301) := algebra.subsort(X_199,r1_298,r2_298,false,false); + X_215 := algebra.leftfetchjoin(r1_301,X_202); + X_218 := algebra.subslice(X_215,0:wrd,99:wrd); + X_352 := algebra.leftfetchjoin(X_218,r1_301); + X_233:bat[:oid,:str] := algebra.leftfetchjoinPath(X_352,X_198,X_158,r1_183,r1_177,X_125,X_101,X_96,r1_108,X_232); + X_234 := sql.bind(X_6,"sys","supplier","s_address",0); + (X_237,r1_345) := sql.bind(X_6,"sys","supplier","s_address",2); + X_239 := sql.bind(X_6,"sys","supplier","s_address",1); + X_241 := sql.projectdelta(X_32,X_234,X_237,r1_345,X_239); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list