Changeset: 88970f309a81 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=88970f309a81
Modified Files:
        sql/benchmarks/ssbm/Tests/02-explain.stable.out
        sql/benchmarks/ssbm/Tests/02-plan.stable.out
        sql/benchmarks/ssbm/Tests/03-explain.stable.out
        sql/benchmarks/ssbm/Tests/03-plan.stable.out
        sql/benchmarks/ssbm/Tests/07-explain.stable.out
        sql/benchmarks/ssbm/Tests/07-plan.stable.out
        sql/benchmarks/ssbm/Tests/08-explain.stable.out
        sql/benchmarks/ssbm/Tests/08-plan.stable.out
Branch: default
Log Message:

approved output. Plan/explain changed because of stricter ordering on selects 
and group by expressions


diffs (224 lines):

diff --git a/sql/benchmarks/ssbm/Tests/02-explain.stable.out 
b/sql/benchmarks/ssbm/Tests/02-explain.stable.out
--- a/sql/benchmarks/ssbm/Tests/02-explain.stable.out
+++ b/sql/benchmarks/ssbm/Tests/02-explain.stable.out
@@ -39,20 +39,20 @@ Ready.
 % 269 # length
 function user.s2_1{autoCommit=true}(A0:int,A1:int,A2:int,A3:int,A4:int):void;
     X_7 := sql.mvc();
-    X_11 := sql.bind(X_7,"sys","lineorder","lo_discount",0);
-    X_19 := sql.bind(X_7,"sys","lineorder","lo_quantity",0);
+    X_11 := sql.bind(X_7,"sys","lineorder","lo_quantity",0);
+    X_19 := sql.bind(X_7,"sys","lineorder","lo_discount",0);
     X_8:bat[:oid,:oid]  := sql.tid(X_7,"sys","lineorder");
-    X_90 := algebra.subselect(X_19,X_8,A3,A4,true,true,false);
-    (X_21,r1_25) := sql.bind(X_7,"sys","lineorder","lo_quantity",2);
-    X_91 := algebra.subselect(r1_25,A3,A4,true,true,false);
-    X_23 := sql.bind(X_7,"sys","lineorder","lo_quantity",1);
-    X_92 := algebra.subselect(X_23,X_8,A3,A4,true,true,false);
+    X_90 := algebra.subselect(X_19,X_8,A1,A2,true,true,false);
+    (X_21,r1_25) := sql.bind(X_7,"sys","lineorder","lo_discount",2);
+    X_91 := algebra.subselect(r1_25,A1,A2,true,true,false);
+    X_23 := sql.bind(X_7,"sys","lineorder","lo_discount",1);
+    X_92 := algebra.subselect(X_23,X_8,A1,A2,true,true,false);
     X_24 := sql.subdelta(X_90,X_8,X_21,X_91,X_92);
-    X_93 := algebra.subselect(X_11,X_24,A1,A2,true,true,false);
-    (X_14,r1_14) := sql.bind(X_7,"sys","lineorder","lo_discount",2);
-    X_94 := algebra.subselect(r1_14,A1,A2,true,true,false);
-    X_17 := sql.bind(X_7,"sys","lineorder","lo_discount",1);
-    X_95 := algebra.subselect(X_17,X_24,A1,A2,true,true,false);
+    X_93 := algebra.subselect(X_11,X_24,A3,A4,true,true,false);
+    (X_14,r1_14) := sql.bind(X_7,"sys","lineorder","lo_quantity",2);
+    X_94 := algebra.subselect(r1_14,A3,A4,true,true,false);
+    X_17 := sql.bind(X_7,"sys","lineorder","lo_quantity",1);
+    X_95 := algebra.subselect(X_17,X_24,A3,A4,true,true,false);
     X_26 := sql.subdelta(X_93,X_24,X_14,X_94,X_95);
     X_27 := 
sql.bind_idxbat(X_7,"sys","lineorder","lineorder_lo_orderdate_fkey",0);
     (X_29,r1_37) := 
sql.bind_idxbat(X_7,"sys","lineorder","lineorder_lo_orderdate_fkey",2);
@@ -74,7 +74,7 @@ function user.s2_1{autoCommit=true}(A0:i
     X_55 := sql.projectdelta(X_26,X_49,X_52,r1_65,X_54);
     X_56 := algebra.leftfetchjoin(X_47,X_55);
     X_57 := batcalc.lng(X_56);
-    X_58 := sql.projectdelta(X_26,X_11,X_14,r1_14,X_17);
+    X_58 := sql.projectdelta(X_26,X_19,X_21,r1_25,X_23);
     X_59 := algebra.leftfetchjoin(X_47,X_58);
     X_60:bat[:oid,:lng]  := batcalc.*(X_57,X_59);
     X_61 := algebra.selectNotNil(X_60);
diff --git a/sql/benchmarks/ssbm/Tests/02-plan.stable.out 
b/sql/benchmarks/ssbm/Tests/02-plan.stable.out
--- a/sql/benchmarks/ssbm/Tests/02-plan.stable.out
+++ b/sql/benchmarks/ssbm/Tests/02-plan.stable.out
@@ -41,7 +41,7 @@ project (
 | | join (
 | | | select (
 | | | | table(sys.lineorder) [ lineorder.lo_quantity, 
lineorder.lo_extendedprice, lineorder.lo_discount, 
lineorder.%lineorder_lo_orderdate_fkey NOT NULL JOINIDX 
sys.lineorder.lineorder_lo_orderdate_fkey ] COUNT 
-| | | ) [ int[tinyint "26"] <= lineorder.lo_quantity <= int[tinyint "35"], 
int[tinyint "4"] <= lineorder.lo_discount <= int[tinyint "6"] ],
+| | | ) [ int[tinyint "4"] <= lineorder.lo_discount <= int[tinyint "6"], 
int[tinyint "26"] <= lineorder.lo_quantity <= int[tinyint "35"] ],
 | | | select (
 | | | | table(sys.dwdate) [ dwdate.d_yearmonthnum, dwdate.%TID% NOT NULL ] 
COUNT 
 | | | ) [ dwdate.d_yearmonthnum = int "199401" ]
diff --git a/sql/benchmarks/ssbm/Tests/03-explain.stable.out 
b/sql/benchmarks/ssbm/Tests/03-explain.stable.out
--- a/sql/benchmarks/ssbm/Tests/03-explain.stable.out
+++ b/sql/benchmarks/ssbm/Tests/03-explain.stable.out
@@ -39,20 +39,20 @@ Ready.
 % 283 # length
 function 
user.s2_1{autoCommit=true}(A0:int,A1:int,A2:int,A3:int,A4:int,A5:int):void;
     X_8 := sql.mvc();
-    X_12 := sql.bind(X_8,"sys","lineorder","lo_discount",0);
-    X_20 := sql.bind(X_8,"sys","lineorder","lo_quantity",0);
+    X_12 := sql.bind(X_8,"sys","lineorder","lo_quantity",0);
+    X_20 := sql.bind(X_8,"sys","lineorder","lo_discount",0);
     X_9:bat[:oid,:oid]  := sql.tid(X_8,"sys","lineorder");
-    X_101 := algebra.subselect(X_20,X_9,A4,A5,true,true,false);
-    (X_22,r1_26) := sql.bind(X_8,"sys","lineorder","lo_quantity",2);
-    X_102 := algebra.subselect(r1_26,A4,A5,true,true,false);
-    X_24 := sql.bind(X_8,"sys","lineorder","lo_quantity",1);
-    X_103 := algebra.subselect(X_24,X_9,A4,A5,true,true,false);
+    X_101 := algebra.subselect(X_20,X_9,A2,A3,true,true,false);
+    (X_22,r1_26) := sql.bind(X_8,"sys","lineorder","lo_discount",2);
+    X_102 := algebra.subselect(r1_26,A2,A3,true,true,false);
+    X_24 := sql.bind(X_8,"sys","lineorder","lo_discount",1);
+    X_103 := algebra.subselect(X_24,X_9,A2,A3,true,true,false);
     X_25 := sql.subdelta(X_101,X_9,X_22,X_102,X_103);
-    X_104 := algebra.subselect(X_12,X_25,A2,A3,true,true,false);
-    (X_15,r1_15) := sql.bind(X_8,"sys","lineorder","lo_discount",2);
-    X_105 := algebra.subselect(r1_15,A2,A3,true,true,false);
-    X_18 := sql.bind(X_8,"sys","lineorder","lo_discount",1);
-    X_106 := algebra.subselect(X_18,X_25,A2,A3,true,true,false);
+    X_104 := algebra.subselect(X_12,X_25,A4,A5,true,true,false);
+    (X_15,r1_15) := sql.bind(X_8,"sys","lineorder","lo_quantity",2);
+    X_105 := algebra.subselect(r1_15,A4,A5,true,true,false);
+    X_18 := sql.bind(X_8,"sys","lineorder","lo_quantity",1);
+    X_106 := algebra.subselect(X_18,X_25,A4,A5,true,true,false);
     X_27 := sql.subdelta(X_104,X_25,X_15,X_105,X_106);
     X_28 := 
sql.bind_idxbat(X_8,"sys","lineorder","lineorder_lo_orderdate_fkey",0);
     (X_30,r1_38) := 
sql.bind_idxbat(X_8,"sys","lineorder","lineorder_lo_orderdate_fkey",2);
@@ -81,7 +81,7 @@ function user.s2_1{autoCommit=true}(A0:i
     X_64 := sql.projectdelta(X_27,X_57,X_60,r1_76,X_63);
     X_65 := algebra.leftfetchjoin(X_55,X_64);
     X_66 := batcalc.lng(X_65);
-    X_67 := sql.projectdelta(X_27,X_12,X_15,r1_15,X_18);
+    X_67 := sql.projectdelta(X_27,X_20,X_22,r1_26,X_24);
     X_68 := algebra.leftfetchjoin(X_55,X_67);
     X_69:bat[:oid,:lng]  := batcalc.*(X_66,X_68);
     X_70 := algebra.selectNotNil(X_69);
diff --git a/sql/benchmarks/ssbm/Tests/03-plan.stable.out 
b/sql/benchmarks/ssbm/Tests/03-plan.stable.out
--- a/sql/benchmarks/ssbm/Tests/03-plan.stable.out
+++ b/sql/benchmarks/ssbm/Tests/03-plan.stable.out
@@ -41,7 +41,7 @@ project (
 | | join (
 | | | select (
 | | | | table(sys.lineorder) [ lineorder.lo_quantity, 
lineorder.lo_extendedprice, lineorder.lo_discount, 
lineorder.%lineorder_lo_orderdate_fkey NOT NULL JOINIDX 
sys.lineorder.lineorder_lo_orderdate_fkey ] COUNT 
-| | | ) [ int[tinyint "36"] <= lineorder.lo_quantity <= int[tinyint "40"], 
int[tinyint "5"] <= lineorder.lo_discount <= int[tinyint "7"] ],
+| | | ) [ int[tinyint "5"] <= lineorder.lo_discount <= int[tinyint "7"], 
int[tinyint "36"] <= lineorder.lo_quantity <= int[tinyint "40"] ],
 | | | select (
 | | | | table(sys.dwdate) [ dwdate.d_year, dwdate.d_weeknuminyear, 
dwdate.%TID% NOT NULL ] COUNT 
 | | | ) [ dwdate.d_year = int[smallint "1994"], dwdate.d_weeknuminyear = 
int[tinyint "6"] ]
diff --git a/sql/benchmarks/ssbm/Tests/07-explain.stable.out 
b/sql/benchmarks/ssbm/Tests/07-explain.stable.out
--- a/sql/benchmarks/ssbm/Tests/07-explain.stable.out
+++ b/sql/benchmarks/ssbm/Tests/07-explain.stable.out
@@ -95,16 +95,16 @@ function user.s2_1{autoCommit=true}(A0:s
     X_81 := sql.bind(X_6,"sys","lineorder","lo_revenue",1);
     X_84 := sql.projectdelta(X_7,X_75,X_78,r1_92,X_81);
     X_85:bat[:oid,:int]  := algebra.leftfetchjoinPath(X_189,X_29,X_84);
-    X_86 := sql.bind(X_6,"sys","customer","c_nation",0);
-    (X_89,r1_106) := sql.bind(X_6,"sys","customer","c_nation",2);
-    X_91 := sql.bind(X_6,"sys","customer","c_nation",1);
-    X_92 := sql.projectdelta(X_26,X_86,X_89,r1_106,X_91);
-    X_93:bat[:oid,:str]  := algebra.leftfetchjoinPath(X_189,r1_33,X_92);
-    X_94 := sql.bind(X_6,"sys","supplier","s_nation",0);
-    (X_98,r1_119) := sql.bind(X_6,"sys","supplier","s_nation",2);
-    X_100 := sql.bind(X_6,"sys","supplier","s_nation",1);
-    X_101 := sql.projectdelta(X_49,X_94,X_98,r1_119,X_100);
-    X_102:bat[:oid,:str]  := algebra.leftfetchjoinPath(X_73,r1_60,X_101);
+    X_86 := sql.bind(X_6,"sys","supplier","s_nation",0);
+    (X_89,r1_106) := sql.bind(X_6,"sys","supplier","s_nation",2);
+    X_91 := sql.bind(X_6,"sys","supplier","s_nation",1);
+    X_92 := sql.projectdelta(X_49,X_86,X_89,r1_106,X_91);
+    X_93:bat[:oid,:str]  := algebra.leftfetchjoinPath(X_73,r1_60,X_92);
+    X_94 := sql.bind(X_6,"sys","customer","c_nation",0);
+    (X_98,r1_118) := sql.bind(X_6,"sys","customer","c_nation",2);
+    X_100 := sql.bind(X_6,"sys","customer","c_nation",1);
+    X_101 := sql.projectdelta(X_26,X_94,X_98,r1_118,X_100);
+    X_102:bat[:oid,:str]  := algebra.leftfetchjoinPath(X_189,r1_33,X_101);
     X_103 := sql.projectdelta(X_70,X_64,X_66,r1_76,X_69);
     X_104 := algebra.leftfetchjoin(r1_87,X_103);
     (X_105,r1_129,r2_129) := group.subgroup(X_104);
@@ -115,10 +115,10 @@ function user.s2_1{autoCommit=true}(A0:s
     (X_117,r1_141,r2_141) := algebra.subsort(X_116,false,false);
     (X_121,r1_145,r2_145) := algebra.subsort(X_114,r1_141,r2_141,true,false);
     X_190 := algebra.leftfetchjoin(r1_145,r1_135);
-    X_124:bat[:oid,:str]  := algebra.leftfetchjoin(X_190,X_93);
+    X_124:bat[:oid,:str]  := algebra.leftfetchjoin(X_190,X_102);
     X_127 := algebra.leftfetchjoin(r1_145,X_114);
     X_126 := algebra.leftfetchjoin(r1_145,X_116);
-    X_125:bat[:oid,:str]  := algebra.leftfetchjoin(X_190,X_102);
+    X_125:bat[:oid,:str]  := algebra.leftfetchjoin(X_190,X_93);
     X_128 := sql.resultSet(4,1,X_124);
     sql.rsColumn(X_128,"sys.customer","c_nation","clob",0,0,X_124);
     sql.rsColumn(X_128,"sys.supplier","s_nation","clob",0,0,X_125);
diff --git a/sql/benchmarks/ssbm/Tests/07-plan.stable.out 
b/sql/benchmarks/ssbm/Tests/07-plan.stable.out
--- a/sql/benchmarks/ssbm/Tests/07-plan.stable.out
+++ b/sql/benchmarks/ssbm/Tests/07-plan.stable.out
@@ -58,7 +58,7 @@ project (
 | | | | table(sys.dwdate) [ dwdate.d_year, dwdate.%TID% NOT NULL ] COUNT 
 | | | ) [ int[smallint "1992"] <= dwdate.d_year <= int[smallint "1997"] ]
 | | ) [ lineorder.%lineorder_lo_orderdate_fkey NOT NULL = dwdate.%TID% NOT 
NULL JOINIDX sys.lineorder.lineorder_lo_orderdate_fkey ]
-| ) [ dwdate.d_year, supplier.s_nation, customer.c_nation ] [ 
customer.c_nation, supplier.s_nation, dwdate.d_year, sys.sum no nil 
(lineorder.lo_revenue) as L1.L1 ]
+| ) [ dwdate.d_year, customer.c_nation, supplier.s_nation ] [ 
customer.c_nation, supplier.s_nation, dwdate.d_year, sys.sum no nil 
(lineorder.lo_revenue) as L1.L1 ]
 ) [ customer.c_nation, supplier.s_nation, dwdate.d_year, L1 as L1.revenue ] [ 
dwdate.d_year ASC, L1.revenue ]
 
 # 23:08:58 >  
diff --git a/sql/benchmarks/ssbm/Tests/08-explain.stable.out 
b/sql/benchmarks/ssbm/Tests/08-explain.stable.out
--- a/sql/benchmarks/ssbm/Tests/08-explain.stable.out
+++ b/sql/benchmarks/ssbm/Tests/08-explain.stable.out
@@ -95,16 +95,16 @@ function user.s2_1{autoCommit=true}(A0:s
     X_81 := sql.bind(X_6,"sys","lineorder","lo_revenue",1);
     X_84 := sql.projectdelta(X_7,X_75,X_78,r1_92,X_81);
     X_85:bat[:oid,:int]  := algebra.leftfetchjoinPath(X_189,X_29,X_84);
-    X_86 := sql.bind(X_6,"sys","customer","c_city",0);
-    (X_89,r1_106) := sql.bind(X_6,"sys","customer","c_city",2);
-    X_91 := sql.bind(X_6,"sys","customer","c_city",1);
-    X_92 := sql.projectdelta(X_26,X_86,X_89,r1_106,X_91);
-    X_93:bat[:oid,:str]  := algebra.leftfetchjoinPath(X_189,r1_33,X_92);
-    X_94 := sql.bind(X_6,"sys","supplier","s_city",0);
-    (X_98,r1_119) := sql.bind(X_6,"sys","supplier","s_city",2);
-    X_100 := sql.bind(X_6,"sys","supplier","s_city",1);
-    X_101 := sql.projectdelta(X_49,X_94,X_98,r1_119,X_100);
-    X_102:bat[:oid,:str]  := algebra.leftfetchjoinPath(X_73,r1_60,X_101);
+    X_86 := sql.bind(X_6,"sys","supplier","s_city",0);
+    (X_89,r1_106) := sql.bind(X_6,"sys","supplier","s_city",2);
+    X_91 := sql.bind(X_6,"sys","supplier","s_city",1);
+    X_92 := sql.projectdelta(X_49,X_86,X_89,r1_106,X_91);
+    X_93:bat[:oid,:str]  := algebra.leftfetchjoinPath(X_73,r1_60,X_92);
+    X_94 := sql.bind(X_6,"sys","customer","c_city",0);
+    (X_98,r1_118) := sql.bind(X_6,"sys","customer","c_city",2);
+    X_100 := sql.bind(X_6,"sys","customer","c_city",1);
+    X_101 := sql.projectdelta(X_26,X_94,X_98,r1_118,X_100);
+    X_102:bat[:oid,:str]  := algebra.leftfetchjoinPath(X_189,r1_33,X_101);
     X_103 := sql.projectdelta(X_70,X_64,X_66,r1_76,X_69);
     X_104 := algebra.leftfetchjoin(r1_87,X_103);
     (X_105,r1_129,r2_129) := group.subgroup(X_104);
@@ -115,10 +115,10 @@ function user.s2_1{autoCommit=true}(A0:s
     (X_117,r1_141,r2_141) := algebra.subsort(X_116,false,false);
     (X_121,r1_145,r2_145) := algebra.subsort(X_114,r1_141,r2_141,true,false);
     X_190 := algebra.leftfetchjoin(r1_145,r1_135);
-    X_124:bat[:oid,:str]  := algebra.leftfetchjoin(X_190,X_93);
+    X_124:bat[:oid,:str]  := algebra.leftfetchjoin(X_190,X_102);
     X_127 := algebra.leftfetchjoin(r1_145,X_114);
     X_126 := algebra.leftfetchjoin(r1_145,X_116);
-    X_125:bat[:oid,:str]  := algebra.leftfetchjoin(X_190,X_102);
+    X_125:bat[:oid,:str]  := algebra.leftfetchjoin(X_190,X_93);
     X_128 := sql.resultSet(4,1,X_124);
     sql.rsColumn(X_128,"sys.customer","c_city","clob",0,0,X_124);
     sql.rsColumn(X_128,"sys.supplier","s_city","clob",0,0,X_125);
diff --git a/sql/benchmarks/ssbm/Tests/08-plan.stable.out 
b/sql/benchmarks/ssbm/Tests/08-plan.stable.out
--- a/sql/benchmarks/ssbm/Tests/08-plan.stable.out
+++ b/sql/benchmarks/ssbm/Tests/08-plan.stable.out
@@ -58,7 +58,7 @@ project (
 | | | | table(sys.dwdate) [ dwdate.d_year, dwdate.%TID% NOT NULL ] COUNT 
 | | | ) [ int[smallint "1992"] <= dwdate.d_year <= int[smallint "1997"] ]
 | | ) [ lineorder.%lineorder_lo_orderdate_fkey NOT NULL = dwdate.%TID% NOT 
NULL JOINIDX sys.lineorder.lineorder_lo_orderdate_fkey ]
-| ) [ dwdate.d_year, supplier.s_city, customer.c_city ] [ customer.c_city, 
supplier.s_city, dwdate.d_year, sys.sum no nil (lineorder.lo_revenue) as L1.L1 ]
+| ) [ dwdate.d_year, customer.c_city, supplier.s_city ] [ customer.c_city, 
supplier.s_city, dwdate.d_year, sys.sum no nil (lineorder.lo_revenue) as L1.L1 ]
 ) [ customer.c_city, supplier.s_city, dwdate.d_year, L1 as L1.revenue ] [ 
dwdate.d_year ASC, L1.revenue ]
 
 # 23:08:58 >  
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to