Changeset: 94867e9cebc6 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=94867e9cebc6
Modified Files:
        sql/benchmarks/tpch/Tests/10-explain.stable.out
        sql/benchmarks/tpch/Tests/10-explain.stable.out.int128
        sql/benchmarks/tpch/Tests/10-plan.stable.out.int128
        sql/benchmarks/tpch/Tests/18-explain.stable.out.int128
        sql/benchmarks/tpch/Tests/18-plan.stable.out.int128
        sql/server/rel_optimizer.c
        sql/test/BugTracker-2011/Tests/groupby_primary_key.Bug-2807.stable.out
Branch: default
Log Message:

reduce groupby expressions, but there is no need for late projection based
on the full table.


diffs (truncated from 690 to 300 lines):

diff --git a/sql/benchmarks/tpch/Tests/10-explain.stable.out 
b/sql/benchmarks/tpch/Tests/10-explain.stable.out
--- a/sql/benchmarks/tpch/Tests/10-explain.stable.out
+++ b/sql/benchmarks/tpch/Tests/10-explain.stable.out
@@ -125,12 +125,12 @@ function user.s2_1(A0:bte,A1:date,A2:dat
     X_29:bat[:date] := sql.bind(X_6,"sys","orders","o_orderdate",0);
     C_27:bat[:oid] := sql.tid(X_6,"sys","orders");
     X_34:date := mtime.addmonths(A2,A3);
-    C_236 := algebra.subselect(X_29,C_27,A1,X_34,true,false,false);
+    C_232 := algebra.subselect(X_29,C_27,A1,X_34,true,false,false);
     (C_31,r1_37) := sql.bind(X_6,"sys","orders","o_orderdate",2);
-    C_237 := algebra.subselect(r1_37,nil:bat[:oid],A1,X_34,true,false,false);
+    C_233 := algebra.subselect(r1_37,nil:bat[:oid],A1,X_34,true,false,false);
     X_33:bat[:date] := sql.bind(X_6,"sys","orders","o_orderdate",1);
-    C_238 := algebra.subselect(X_33,C_27,A1,X_34,true,false,false);
-    C_35 := sql.subdelta(C_236,C_27,C_31,C_237,C_238);
+    C_234 := algebra.subselect(X_33,C_27,A1,X_34,true,false,false);
+    C_35 := sql.subdelta(C_232,C_27,C_31,C_233,C_234);
     (X_36,r1_48) := algebra.subjoin(X_26,C_35,nil:BAT,nil:BAT,false,nil:lng);
     X_40:bat[:oid] := 
sql.bind_idxbat(X_6,"sys","orders","orders_o_custkey_fkey",0);
     (X_42,r1_55) := 
sql.bind_idxbat(X_6,"sys","orders","orders_o_custkey_fkey",2);
diff --git a/sql/benchmarks/tpch/Tests/10-explain.stable.out.int128 
b/sql/benchmarks/tpch/Tests/10-explain.stable.out.int128
--- a/sql/benchmarks/tpch/Tests/10-explain.stable.out.int128
+++ b/sql/benchmarks/tpch/Tests/10-explain.stable.out.int128
@@ -63,61 +63,61 @@ Ready.
 % clob # type
 % 619 # length
 function user.s2_1(A0:bte,A1:date,A2:date,A3:int,A4:str):void;
-    X_215:void := querylog.define("explain select\n c_custkey,\n c_name,\n 
sum(l_extendedprice * (1 - l_discount)) as revenue,\n c_acctbal,\n n_name,\n 
c_address,\n c_phone,\n c_comment\nfrom\n customer,\n orders,\n lineitem,\n 
nation\nwhere\n c_custkey = o_custkey\n and l_orderkey = o_orderkey\n and 
o_orderdate >= date \\'1993-10-01\\'\n and o_orderdate < date \\'1993-10-01\\' 
+ interval \\'3\\' month\n and l_returnflag = \\'R\\'\n and c_nationkey = 
n_nationkey\ngroup by\n c_custkey,\n c_name,\n c_acctbal,\n c_phone,\n 
n_name,\n c_address,\n c_comment\norder by\n revenue desc\nlimit 
20;","sequential_pipe",148);
+    X_211:void := querylog.define("explain select\n c_custkey,\n c_name,\n 
sum(l_extendedprice * (1 - l_discount)) as revenue,\n c_acctbal,\n n_name,\n 
c_address,\n c_phone,\n c_comment\nfrom\n customer,\n orders,\n lineitem,\n 
nation\nwhere\n c_custkey = o_custkey\n and l_orderkey = o_orderkey\n and 
o_orderdate >= date \\'1993-10-01\\'\n and o_orderdate < date \\'1993-10-01\\' 
+ interval \\'3\\' month\n and l_returnflag = \\'R\\'\n and c_nationkey = 
n_nationkey\ngroup by\n c_custkey,\n c_name,\n c_acctbal,\n c_phone,\n 
n_name,\n c_address,\n c_comment\norder by\n revenue desc\nlimit 
20;","sequential_pipe",145);
+    X_149 := bat.new(nil:oid,nil:str);
+    X_157 := bat.append(X_149,"sys.customer");
+    X_165 := bat.append(X_157,"sys.customer");
+    X_172 := bat.append(X_165,"sys.L1");
+    X_182 := bat.append(X_172,"sys.customer");
+    X_187 := bat.append(X_182,"sys.nation");
+    X_194 := bat.append(X_187,"sys.customer");
+    X_200 := bat.append(X_194,"sys.customer");
+    X_205 := bat.append(X_200,"sys.customer");
+    X_152 := bat.new(nil:oid,nil:str);
+    X_159 := bat.append(X_152,"c_custkey");
+    X_166 := bat.append(X_159,"c_name");
+    X_174 := bat.append(X_166,"revenue");
+    X_183 := bat.append(X_174,"c_acctbal");
+    X_189 := bat.append(X_183,"n_name");
+    X_195 := bat.append(X_189,"c_address");
+    X_201 := bat.append(X_195,"c_phone");
+    X_206 := bat.append(X_201,"c_comment");
     X_153 := bat.new(nil:oid,nil:str);
-    X_161 := bat.append(X_153,"sys.customer");
-    X_169 := bat.append(X_161,"sys.customer");
-    X_176 := bat.append(X_169,"sys.L1");
-    X_186 := bat.append(X_176,"sys.customer");
-    X_191 := bat.append(X_186,"sys.nation");
-    X_198 := bat.append(X_191,"sys.customer");
-    X_204 := bat.append(X_198,"sys.customer");
-    X_209 := bat.append(X_204,"sys.customer");
-    X_156 := bat.new(nil:oid,nil:str);
-    X_163 := bat.append(X_156,"c_custkey");
-    X_170 := bat.append(X_163,"c_name");
-    X_178 := bat.append(X_170,"revenue");
-    X_187 := bat.append(X_178,"c_acctbal");
-    X_193 := bat.append(X_187,"n_name");
-    X_199 := bat.append(X_193,"c_address");
-    X_205 := bat.append(X_199,"c_phone");
-    X_210 := bat.append(X_205,"c_comment");
-    X_157 := bat.new(nil:oid,nil:str);
-    X_164 := bat.append(X_157,"int");
-    X_171 := bat.append(X_164,"varchar");
-    X_180 := bat.append(X_171,"decimal");
-    X_188 := bat.append(X_180,"decimal");
-    X_194 := bat.append(X_188,"char");
-    X_200 := bat.append(X_194,"varchar");
-    X_206 := bat.append(X_200,"char");
-    X_211 := bat.append(X_206,"varchar");
-    X_158 := bat.new(nil:oid,nil:int);
-    X_166 := bat.append(X_158,32);
-    X_173 := bat.append(X_166,25);
-    X_182 := bat.append(X_173,39);
-    X_189 := bat.append(X_182,15);
-    X_196 := bat.append(X_189,25);
-    X_201 := bat.append(X_196,40);
-    X_207 := bat.append(X_201,15);
-    X_212 := bat.append(X_207,117);
-    X_160 := bat.new(nil:oid,nil:int);
-    X_168 := bat.append(X_160,0);
-    X_175 := bat.append(X_168,0);
-    X_184 := bat.append(X_175,4);
-    X_190 := bat.append(X_184,2);
-    X_197 := bat.append(X_190,0);
-    X_203 := bat.append(X_197,0);
-    X_208 := bat.append(X_203,0);
-    X_214 := bat.append(X_208,0);
+    X_160 := bat.append(X_153,"int");
+    X_167 := bat.append(X_160,"varchar");
+    X_176 := bat.append(X_167,"decimal");
+    X_184 := bat.append(X_176,"decimal");
+    X_190 := bat.append(X_184,"char");
+    X_196 := bat.append(X_190,"varchar");
+    X_202 := bat.append(X_196,"char");
+    X_207 := bat.append(X_202,"varchar");
+    X_154 := bat.new(nil:oid,nil:int);
+    X_162 := bat.append(X_154,32);
+    X_169 := bat.append(X_162,25);
+    X_178 := bat.append(X_169,39);
+    X_185 := bat.append(X_178,15);
+    X_192 := bat.append(X_185,25);
+    X_197 := bat.append(X_192,40);
+    X_203 := bat.append(X_197,15);
+    X_208 := bat.append(X_203,117);
+    X_156 := bat.new(nil:oid,nil:int);
+    X_164 := bat.append(X_156,0);
+    X_171 := bat.append(X_164,0);
+    X_180 := bat.append(X_171,4);
+    X_186 := bat.append(X_180,2);
+    X_193 := bat.append(X_186,0);
+    X_199 := bat.append(X_193,0);
+    X_204 := bat.append(X_199,0);
+    X_210 := bat.append(X_204,0);
     X_6 := sql.mvc();
     X_10:bat[:str] := sql.bind(X_6,"sys","lineitem","l_returnflag",0);
     C_7:bat[:oid] := sql.tid(X_6,"sys","lineitem");
-    C_232 := algebra.subselect(X_10,C_7,A4,A4,true,false,false);
+    C_228 := algebra.subselect(X_10,C_7,A4,A4,true,false,false);
     (C_13,r1_13) := sql.bind(X_6,"sys","lineitem","l_returnflag",2);
-    C_233 := algebra.subselect(r1_13,nil:bat[:oid],A4,A4,true,false,false);
+    C_229 := algebra.subselect(r1_13,nil:bat[:oid],A4,A4,true,false,false);
     X_16:bat[:str] := sql.bind(X_6,"sys","lineitem","l_returnflag",1);
-    C_235 := algebra.subselect(X_16,C_7,A4,A4,true,false,false);
-    C_18 := sql.subdelta(C_232,C_7,C_13,C_233,C_235);
+    C_231 := algebra.subselect(X_16,C_7,A4,A4,true,false,false);
+    C_18 := sql.subdelta(C_228,C_7,C_13,C_229,C_231);
     X_21:bat[:oid] := 
sql.bind_idxbat(X_6,"sys","lineitem","lineitem_l_orderkey_fkey",0);
     (X_23,r1_27) := 
sql.bind_idxbat(X_6,"sys","lineitem","lineitem_l_orderkey_fkey",2);
     X_25:bat[:oid] := 
sql.bind_idxbat(X_6,"sys","lineitem","lineitem_l_orderkey_fkey",1);
@@ -125,12 +125,12 @@ function user.s2_1(A0:bte,A1:date,A2:dat
     X_29:bat[:date] := sql.bind(X_6,"sys","orders","o_orderdate",0);
     C_27:bat[:oid] := sql.tid(X_6,"sys","orders");
     X_34:date := mtime.addmonths(A2,A3);
-    C_236 := algebra.subselect(X_29,C_27,A1,X_34,true,false,false);
+    C_232 := algebra.subselect(X_29,C_27,A1,X_34,true,false,false);
     (C_31,r1_37) := sql.bind(X_6,"sys","orders","o_orderdate",2);
-    C_237 := algebra.subselect(r1_37,nil:bat[:oid],A1,X_34,true,false,false);
+    C_233 := algebra.subselect(r1_37,nil:bat[:oid],A1,X_34,true,false,false);
     X_33:bat[:date] := sql.bind(X_6,"sys","orders","o_orderdate",1);
-    C_238 := algebra.subselect(X_33,C_27,A1,X_34,true,false,false);
-    C_35 := sql.subdelta(C_236,C_27,C_31,C_237,C_238);
+    C_234 := algebra.subselect(X_33,C_27,A1,X_34,true,false,false);
+    C_35 := sql.subdelta(C_232,C_27,C_31,C_233,C_234);
     (X_36,r1_48) := algebra.subjoin(X_26,C_35,nil:BAT,nil:BAT,false,nil:lng);
     X_40:bat[:oid] := 
sql.bind_idxbat(X_6,"sys","orders","orders_o_custkey_fkey",0);
     (X_42,r1_55) := 
sql.bind_idxbat(X_6,"sys","orders","orders_o_custkey_fkey",2);
@@ -146,69 +146,66 @@ function user.s2_1(A0:bte,A1:date,A2:dat
     X_57 := algebra.projection(r1_64,X_56);
     C_58:bat[:oid] := sql.tid(X_6,"sys","nation");
     (X_60,r1_77) := algebra.subjoin(X_57,C_58,nil:BAT,nil:BAT,false,nil:lng);
-    X_62:bat[:str] := sql.bind(X_6,"sys","nation","n_name",0);
-    (C_64,r1_81) := sql.bind(X_6,"sys","nation","n_name",2);
-    X_66:bat[:str] := sql.bind(X_6,"sys","nation","n_name",1);
-    X_67 := sql.projectdelta(C_58,X_62,C_64,r1_81,X_66);
-    X_68 := algebra.projection(r1_77,X_67);
-    X_69:bat[:int] := sql.bind(X_6,"sys","customer","c_custkey",0);
-    (C_71,r1_89) := sql.bind(X_6,"sys","customer","c_custkey",2);
-    X_73:bat[:int] := sql.bind(X_6,"sys","customer","c_custkey",1);
-    X_74 := sql.projectdelta(C_47,X_69,C_71,r1_89,X_73);
-    X_75:bat[:int] := algebra.projectionpath(X_60,r1_64,X_74);
-    (X_76,r1_96,r2_96) := group.subgroup(X_75);
-    (X_79,r1_99,r2_99) := group.subgroupdone(X_68,X_76);
-    X_82 := algebra.projection(r1_99,X_75);
-    X_85:bat[:lng] := sql.bind(X_6,"sys","lineitem","l_extendedprice",0);
-    (C_87,r1_119) := sql.bind(X_6,"sys","lineitem","l_extendedprice",2);
-    X_89:bat[:lng] := sql.bind(X_6,"sys","lineitem","l_extendedprice",1);
-    X_90 := sql.projectdelta(C_18,X_85,C_87,r1_119,X_89);
-    X_91:bat[:lng] := algebra.projectionpath(X_60,X_49,X_36,X_90);
-    X_92 := calc.lng(A0,15,2);
-    X_94:bat[:lng] := sql.bind(X_6,"sys","lineitem","l_discount",0);
-    (C_96,r1_138) := sql.bind(X_6,"sys","lineitem","l_discount",2);
-    X_98:bat[:lng] := sql.bind(X_6,"sys","lineitem","l_discount",1);
-    X_99 := sql.projectdelta(C_18,X_94,C_96,r1_138,X_98);
-    X_100:bat[:lng] := algebra.projectionpath(X_60,X_49,X_36,X_99);
-    X_101:bat[:lng] := batcalc.-(X_92,X_100);
-    X_102:bat[:hge] := batcalc.*(X_91,X_101);
-    X_103:bat[:hge] := aggr.subsum(X_102,X_79,r1_99,true,true);
-    (X_83,r1_111) := algebra.subjoin(X_82,X_74,nil:BAT,nil:BAT,false,nil:lng);
-    X_104 := algebra.projection(X_83,X_103);
-    C_107 := algebra.firstn(X_104,20,false,false);
-    X_108 := algebra.projection(C_107,X_104);
-    (X_109,r1_164,r2_164) := algebra.subsort(X_108,true,false);
-    X_112:bat[:int] := algebra.projectionpath(r1_164,C_107,X_83,X_82);
-    X_113 := algebra.subslice(X_112,0,19:wrd);
-    X_130:bat[:str] := 
algebra.projectionpath(X_113,r1_164,C_107,X_83,r1_99,X_68);
-    X_114 := algebra.projection(X_113,X_112);
-    X_115:bat[:str] := sql.bind(X_6,"sys","customer","c_name",0);
-    (C_117,r1_179) := sql.bind(X_6,"sys","customer","c_name",2);
-    X_119:bat[:str] := sql.bind(X_6,"sys","customer","c_name",1);
-    X_120 := sql.projectdelta(C_47,X_115,C_117,r1_179,X_119);
-    X_121:bat[:str] := algebra.projectionpath(X_113,r1_164,C_107,r1_111,X_120);
-    X_122:bat[:hge] := algebra.projectionpath(X_113,r1_164,X_108);
-    X_123:bat[:lng] := sql.bind(X_6,"sys","customer","c_acctbal",0);
-    (C_125,r1_192) := sql.bind(X_6,"sys","customer","c_acctbal",2);
-    X_127:bat[:lng] := sql.bind(X_6,"sys","customer","c_acctbal",1);
-    X_128 := sql.projectdelta(C_47,X_123,C_125,r1_192,X_127);
-    X_129:bat[:lng] := algebra.projectionpath(X_113,r1_164,C_107,r1_111,X_128);
-    X_131:bat[:str] := sql.bind(X_6,"sys","customer","c_address",0);
-    (C_133,r1_208) := sql.bind(X_6,"sys","customer","c_address",2);
-    X_135:bat[:str] := sql.bind(X_6,"sys","customer","c_address",1);
-    X_136 := sql.projectdelta(C_47,X_131,C_133,r1_208,X_135);
-    X_137:bat[:str] := algebra.projectionpath(X_113,r1_164,C_107,r1_111,X_136);
-    X_138:bat[:str] := sql.bind(X_6,"sys","customer","c_phone",0);
-    (C_140,r1_219) := sql.bind(X_6,"sys","customer","c_phone",2);
-    X_142:bat[:str] := sql.bind(X_6,"sys","customer","c_phone",1);
-    X_143 := sql.projectdelta(C_47,X_138,C_140,r1_219,X_142);
-    X_144:bat[:str] := algebra.projectionpath(X_113,r1_164,C_107,r1_111,X_143);
-    X_145:bat[:str] := sql.bind(X_6,"sys","customer","c_comment",0);
-    (C_147,r1_230) := sql.bind(X_6,"sys","customer","c_comment",2);
-    X_149:bat[:str] := sql.bind(X_6,"sys","customer","c_comment",1);
-    X_150 := sql.projectdelta(C_47,X_145,C_147,r1_230,X_149);
-    X_151:bat[:str] := algebra.projectionpath(X_113,r1_164,C_107,r1_111,X_150);
-    
sql.resultSet(X_209,X_210,X_211,X_212,X_214,X_114,X_121,X_122,X_129,X_130,X_137,X_144,X_151);
+    X_62:bat[:lng] := sql.bind(X_6,"sys","lineitem","l_extendedprice",0);
+    (C_64,r1_81) := sql.bind(X_6,"sys","lineitem","l_extendedprice",2);
+    X_66:bat[:lng] := sql.bind(X_6,"sys","lineitem","l_extendedprice",1);
+    X_67 := sql.projectdelta(C_18,X_62,C_64,r1_81,X_66);
+    X_68:bat[:lng] := algebra.projectionpath(X_60,X_49,X_36,X_67);
+    X_69 := calc.lng(A0,15,2);
+    X_71:bat[:lng] := sql.bind(X_6,"sys","lineitem","l_discount",0);
+    (C_73,r1_100) := sql.bind(X_6,"sys","lineitem","l_discount",2);
+    X_75:bat[:lng] := sql.bind(X_6,"sys","lineitem","l_discount",1);
+    X_76 := sql.projectdelta(C_18,X_71,C_73,r1_100,X_75);
+    X_77:bat[:lng] := algebra.projectionpath(X_60,X_49,X_36,X_76);
+    X_78:bat[:lng] := batcalc.-(X_69,X_77);
+    X_79:bat[:hge] := batcalc.*(X_68,X_78);
+    X_80:bat[:str] := sql.bind(X_6,"sys","nation","n_name",0);
+    (C_82,r1_115) := sql.bind(X_6,"sys","nation","n_name",2);
+    X_84:bat[:str] := sql.bind(X_6,"sys","nation","n_name",1);
+    X_85 := sql.projectdelta(C_58,X_80,C_82,r1_115,X_84);
+    X_86 := algebra.projection(r1_77,X_85);
+    X_87:bat[:int] := sql.bind(X_6,"sys","customer","c_custkey",0);
+    (C_89,r1_123) := sql.bind(X_6,"sys","customer","c_custkey",2);
+    X_91:bat[:int] := sql.bind(X_6,"sys","customer","c_custkey",1);
+    X_92 := sql.projectdelta(C_47,X_87,C_89,r1_123,X_91);
+    X_93:bat[:int] := algebra.projectionpath(X_60,r1_64,X_92);
+    (X_94,r1_130,r2_130) := group.subgroup(X_93);
+    (X_97,r1_133,r2_133) := group.subgroupdone(X_86,X_94);
+    X_100:bat[:hge] := aggr.subsum(X_79,X_97,r1_133,true,true);
+    C_103 := algebra.firstn(X_100,20,false,false);
+    X_104 := algebra.projection(C_103,X_100);
+    (X_105,r1_148,r2_148) := algebra.subsort(X_104,true,false);
+    X_108:bat[:int] := algebra.projectionpath(r1_148,C_103,r1_133,X_93);
+    X_111:bat[:str] := sql.bind(X_6,"sys","customer","c_name",0);
+    (C_113,r1_163) := sql.bind(X_6,"sys","customer","c_name",2);
+    X_115:bat[:str] := sql.bind(X_6,"sys","customer","c_name",1);
+    X_116 := sql.projectdelta(C_47,X_111,C_113,r1_163,X_115);
+    X_109 := algebra.subslice(X_108,0,19:wrd);
+    X_117:bat[:str] := 
algebra.projectionpath(X_109,r1_148,C_103,r1_133,X_60,r1_64,X_116);
+    X_119:bat[:lng] := sql.bind(X_6,"sys","customer","c_acctbal",0);
+    (C_121,r1_178) := sql.bind(X_6,"sys","customer","c_acctbal",2);
+    X_123:bat[:lng] := sql.bind(X_6,"sys","customer","c_acctbal",1);
+    X_124 := sql.projectdelta(C_47,X_119,C_121,r1_178,X_123);
+    X_125:bat[:lng] := 
algebra.projectionpath(X_109,r1_148,C_103,r1_133,X_60,r1_64,X_124);
+    X_126:bat[:str] := algebra.projectionpath(X_109,r1_148,C_103,r1_133,X_86);
+    X_127:bat[:str] := sql.bind(X_6,"sys","customer","c_address",0);
+    (C_129,r1_195) := sql.bind(X_6,"sys","customer","c_address",2);
+    X_131:bat[:str] := sql.bind(X_6,"sys","customer","c_address",1);
+    X_132 := sql.projectdelta(C_47,X_127,C_129,r1_195,X_131);
+    X_133:bat[:str] := 
algebra.projectionpath(X_109,r1_148,C_103,r1_133,X_60,r1_64,X_132);
+    X_134:bat[:str] := sql.bind(X_6,"sys","customer","c_phone",0);
+    (C_136,r1_208) := sql.bind(X_6,"sys","customer","c_phone",2);
+    X_138:bat[:str] := sql.bind(X_6,"sys","customer","c_phone",1);
+    X_139 := sql.projectdelta(C_47,X_134,C_136,r1_208,X_138);
+    X_140:bat[:str] := 
algebra.projectionpath(X_109,r1_148,C_103,r1_133,X_60,r1_64,X_139);
+    X_141:bat[:str] := sql.bind(X_6,"sys","customer","c_comment",0);
+    (C_143,r1_221) := sql.bind(X_6,"sys","customer","c_comment",2);
+    X_145:bat[:str] := sql.bind(X_6,"sys","customer","c_comment",1);
+    X_146 := sql.projectdelta(C_47,X_141,C_143,r1_221,X_145);
+    X_147:bat[:str] := 
algebra.projectionpath(X_109,r1_148,C_103,r1_133,X_60,r1_64,X_146);
+    X_110 := algebra.projection(X_109,X_108);
+    X_118:bat[:hge] := algebra.projectionpath(X_109,r1_148,X_104);
+    
sql.resultSet(X_205,X_206,X_207,X_208,X_210,X_110,X_117,X_118,X_125,X_126,X_133,X_140,X_147);
 end user.s2_1;
 
 # 22:53:27 >  
diff --git a/sql/benchmarks/tpch/Tests/10-plan.stable.out.int128 
b/sql/benchmarks/tpch/Tests/10-plan.stable.out.int128
--- a/sql/benchmarks/tpch/Tests/10-plan.stable.out.int128
+++ b/sql/benchmarks/tpch/Tests/10-plan.stable.out.int128
@@ -60,30 +60,25 @@ Ready.
 % .plan # table_name
 % rel # name
 % clob # type
-% 328 # length
+% 463 # length
 top N (
 | project (
-| | project (
+| | group by (
 | | | join (
-| | | | group by (
+| | | | join (
 | | | | | join (
-| | | | | | join (
-| | | | | | | join (
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to