Changeset: 8a28b3890d5a for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=8a28b3890d5a
Modified Files:
monetdb5/optimizer/opt_pipes.c
sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.stable.out
sql/test/BugTracker/Tests/explain.SF-1739353.stable.out
sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out
sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out.32bit
Branch: Feb2013
Log Message:
re-aligned no_mitosis_pipe & sequential_pipe with default_pipe:
- added optimizer.pushselect()
- disabled optimizer.groups()
diffs (256 lines):
diff --git a/monetdb5/optimizer/opt_pipes.c b/monetdb5/optimizer/opt_pipes.c
--- a/monetdb5/optimizer/opt_pipes.c
+++ b/monetdb5/optimizer/opt_pipes.c
@@ -98,10 +98,11 @@ struct PIPELINES {
"optimizer.coercions();"
"optimizer.emptySet();"
"optimizer.aliases();"
+ "optimizer.pushselect();"
"optimizer.mergetable();"
"optimizer.deadcode();"
"optimizer.commonTerms();"
- "optimizer.groups();"
+ //"optimizer.groups();"
"optimizer.joinPath();"
"optimizer.reorder();"
"optimizer.deadcode();"
@@ -125,10 +126,11 @@ struct PIPELINES {
"optimizer.coercions();"
"optimizer.emptySet();"
"optimizer.aliases();"
+ "optimizer.pushselect();"
"optimizer.mergetable();"
"optimizer.deadcode();"
"optimizer.commonTerms();"
- "optimizer.groups();"
+ //"optimizer.groups();"
"optimizer.joinPath();"
"optimizer.reorder();"
"optimizer.deadcode();"
diff --git
a/sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.stable.out
b/sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.stable.out
--- a/sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.stable.out
+++ b/sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.stable.out
@@ -57,7 +57,7 @@ function user.s4_1{autoCommit=true}():vo
X_27 := sql.bind(X_2,"sys","t2564","c2",1);
X_28 := sql.delta(X_23,X_25,r1_29,X_27);
X_29 := algebra.leftfetchjoin(X_3,X_28);
- (X_30,r1_36,r2_36) := group.multicolumns(X_29);
+ (X_30,r1_36,r2_36) := group.subgroup(X_29);
(X_33,r1_39,r2_39) := group.subgroup(X_22,X_30);
(X_36,r1_42,r2_42) := group.subgroupdone(X_15,X_33);
X_39:bat[:oid,:wrd] := aggr.subcount(X_36,X_36,r1_42,0);
diff --git a/sql/test/BugTracker/Tests/explain.SF-1739353.stable.out
b/sql/test/BugTracker/Tests/explain.SF-1739353.stable.out
--- a/sql/test/BugTracker/Tests/explain.SF-1739353.stable.out
+++ b/sql/test/BugTracker/Tests/explain.SF-1739353.stable.out
@@ -23,39 +23,40 @@ Ready.
Operation successful
-+------------------------------------------------------------------------+
++----------------------------------------------------------------+
| mal |
-+========================================================================+
++================================================================+
| function user.s0_1{autoCommit=true}():void; |
| X_3:bat[:oid,:str] := bat.new(nil:oid,nil:str); |
| X_2 := sql.mvc(); |
-| X_6:bat[:oid,:oid] := sql.tid(X_2,"sys","_tables"); |
| X_9 := sql.bind(X_2,"sys","_tables","type",0); |
+| X_6:bat[:oid,:oid] := sql.tid(X_2,"sys","_tables"); |
+| X_58 := algebra.thetasubselect(X_9,X_6,2:sht,"<"); |
| (X_12,r1_12) := sql.bind(X_2,"sys","_tables","type",2); |
+| X_59 := algebra.thetasubselect(r1_12,2:sht,"<"); |
| X_15 := sql.bind(X_2,"sys","_tables","type",1); |
-| X_17 := sql.delta(X_9,X_12,r1_12,X_15); |
-| X_18 := algebra.leftfetchjoin(X_6,X_17); |
-| X_19 := algebra.thetasubselect(X_18,2:sht,"<"); |
-| X_21 := sql.bind(X_2,"sys","_tables","name",0); |
-| (X_23,r1_29) := sql.bind(X_2,"sys","_tables","name",2); |
-| X_25 := sql.bind(X_2,"sys","_tables","name",1); |
-| X_26 := sql.delta(X_21,X_23,r1_29,X_25); |
-| X_27:bat[:oid,:str] := algebra.leftfetchjoinPath(X_19,X_6,X_26); |
-| X_28 := bat.append(X_3,X_27,true); |
-| X_30:bat[:oid,:oid] := sql.tid(X_2,"tmp","_tables"); |
-| X_33 := sql.bind(X_2,"tmp","_tables","type",0); |
-| X_36 := algebra.leftfetchjoin(X_30,X_33); |
-| X_37 := algebra.thetasubselect(X_36,2:sht,"<"); |
-| X_38 := sql.bind(X_2,"tmp","_tables","name",0); |
-| X_39:bat[:oid,:str] := algebra.leftfetchjoinPath(X_37,X_30,X_38); |
-| X_41 := bat.append(X_28,X_39,true); |
-| X_42 := sql.resultSet(1,1,X_41); |
-| sql.rsColumn(X_42,".tables","name","varchar",1024,0,X_41); |
-| X_48 := io.stdout(); |
-| sql.exportResult(X_48,X_42); |
+| X_60 := algebra.thetasubselect(X_15,X_6,2:sht,"<"); |
+| X_17 := sql.subdelta(X_58,X_12,X_59,X_60); |
+| X_19 := sql.bind(X_2,"sys","_tables","name",0); |
+| (X_21,r1_29) := sql.bind(X_2,"sys","_tables","name",2); |
+| X_23 := sql.bind(X_2,"sys","_tables","name",1); |
+| X_24 := sql.projectdelta(X_17,X_19,X_21,r1_29,X_23); |
+| X_25 := bat.append(X_3,X_24,true); |
+| X_30 := sql.bind(X_2,"tmp","_tables","type",0); |
+| X_33 := X_30; |
+| X_27:bat[:oid,:oid] := sql.tid(X_2,"tmp","_tables"); |
+| X_34 := algebra.thetasubselect(X_33,X_27,2:sht,"<"); |
+| X_35 := sql.bind(X_2,"tmp","_tables","name",0); |
+| X_36 := X_35; |
+| X_37 := algebra.leftfetchjoin(X_34,X_36); |
+| X_39 := bat.append(X_25,X_37,true); |
+| X_40 := sql.resultSet(1,1,X_39); |
+| sql.rsColumn(X_40,".tables","name","varchar",1024,0,X_39); |
+| X_46 := io.stdout(); |
+| sql.exportResult(X_46,X_40); |
| end s0_1; |
-+------------------------------------------------------------------------+
-28 rows
++----------------------------------------------------------------+
+29 rows
# 15:15:37 >
diff --git a/sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out
b/sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out
--- a/sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out
+++ b/sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out
@@ -47,41 +47,42 @@ 20 rows
Operation successful
-+------------------------------------------------------------------------+
++-------------------------------------------------------------+
| mal |
-+========================================================================+
++=============================================================+
| function user.s1_1{autoCommit=true}():void; |
| X_3:bat[:oid,:wrd] := bat.new(nil:oid,nil:wrd); |
| X_2 := sql.mvc(); |
-| X_6:bat[:oid,:oid] := sql.tid(X_2,"sys","_tables"); |
| X_9 := sql.bind(X_2,"sys","_tables","type",0); |
+| X_6:bat[:oid,:oid] := sql.tid(X_2,"sys","_tables"); |
+| X_65 := algebra.thetasubselect(X_9,X_6,2:sht,"<"); |
| (X_12,r1_12) := sql.bind(X_2,"sys","_tables","type",2); |
+| X_66 := algebra.thetasubselect(r1_12,2:sht,"<"); |
| X_15 := sql.bind(X_2,"sys","_tables","type",1); |
-| X_17 := sql.delta(X_9,X_12,r1_12,X_15); |
-| X_18 := algebra.leftfetchjoin(X_6,X_17); |
-| X_19 := algebra.thetasubselect(X_18,2:sht,"<"); |
-| X_21 := sql.bind(X_2,"sys","_tables","id",0); |
-| (X_23,r1_29) := sql.bind(X_2,"sys","_tables","id",2); |
-| X_25 := sql.bind(X_2,"sys","_tables","id",1); |
-| X_26 := sql.delta(X_21,X_23,r1_29,X_25); |
-| X_27:bat[:oid,:int] := algebra.leftfetchjoinPath(X_19,X_6,X_26); |
-| X_28 := aggr.count(X_27); |
-| X_29 := sql.single(X_28); |
-| X_30 := bat.append(X_3,X_29,true); |
-| X_32:bat[:oid,:oid] := sql.tid(X_2,"tmp","_tables"); |
-| X_35 := sql.bind(X_2,"tmp","_tables","type",0); |
-| X_38 := algebra.leftfetchjoin(X_32,X_35); |
-| X_39 := algebra.thetasubselect(X_38,2:sht,"<"); |
-| X_41 := sql.bind(X_2,"tmp","_tables","id",0); |
-| X_43:bat[:oid,:int] := algebra.leftfetchjoinPath(X_39,X_32,X_41); |
-| X_44 := aggr.count(X_43); |
-| X_45 := bat.append(X_30,X_44,true); |
-| X_47 := algebra.selectNotNil(X_45); |
-| X_48:wrd := aggr.sum(X_47); |
-| sql.exportValue(1,".tables","L1","wrd",64,0,6,X_48,""); |
+| X_67 := algebra.thetasubselect(X_15,X_6,2:sht,"<"); |
+| X_17 := sql.subdelta(X_65,X_12,X_66,X_67); |
+| X_19 := sql.bind(X_2,"sys","_tables","id",0); |
+| (X_21,r1_29) := sql.bind(X_2,"sys","_tables","id",2); |
+| X_23 := sql.bind(X_2,"sys","_tables","id",1); |
+| X_24 := sql.projectdelta(X_17,X_19,X_21,r1_29,X_23); |
+| X_25 := aggr.count(X_24); |
+| X_26 := sql.single(X_25); |
+| X_27 := bat.append(X_3,X_26,true); |
+| X_32 := sql.bind(X_2,"tmp","_tables","type",0); |
+| X_35 := X_32; |
+| X_29:bat[:oid,:oid] := sql.tid(X_2,"tmp","_tables"); |
+| X_36 := algebra.thetasubselect(X_35,X_29,2:sht,"<"); |
+| X_38 := sql.bind(X_2,"tmp","_tables","id",0); |
+| X_40 := X_38; |
+| X_41 := algebra.leftfetchjoin(X_36,X_40); |
+| X_42 := aggr.count(X_41); |
+| X_43 := bat.append(X_27,X_42,true); |
+| X_45 := algebra.selectNotNil(X_43); |
+| X_46:wrd := aggr.sum(X_45); |
+| sql.exportValue(1,".tables","L1","wrd",64,0,6,X_46,""); |
| end s1_1; |
-+------------------------------------------------------------------------+
-30 rows
++-------------------------------------------------------------+
+31 rows
# 19:39:11 >
diff --git
a/sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out.32bit
b/sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out.32bit
--- a/sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out.32bit
+++ b/sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out.32bit
@@ -47,41 +47,42 @@ 20 rows
Operation successful
-+------------------------------------------------------------------------+
++-------------------------------------------------------------+
| mal |
-+========================================================================+
++=============================================================+
| function user.s1_1{autoCommit=true}():void; |
| X_3:bat[:oid,:wrd] := bat.new(nil:oid,nil:wrd); |
| X_2 := sql.mvc(); |
-| X_6:bat[:oid,:oid] := sql.tid(X_2,"sys","_tables"); |
| X_9 := sql.bind(X_2,"sys","_tables","type",0); |
+| X_6:bat[:oid,:oid] := sql.tid(X_2,"sys","_tables"); |
+| X_65 := algebra.thetasubselect(X_9,X_6,2:sht,"<"); |
| (X_12,r1_12) := sql.bind(X_2,"sys","_tables","type",2); |
+| X_66 := algebra.thetasubselect(r1_12,2:sht,"<"); |
| X_15 := sql.bind(X_2,"sys","_tables","type",1); |
-| X_17 := sql.delta(X_9,X_12,r1_12,X_15); |
-| X_18 := algebra.leftfetchjoin(X_6,X_17); |
-| X_19 := algebra.thetasubselect(X_18,2:sht,"<"); |
-| X_21 := sql.bind(X_2,"sys","_tables","id",0); |
-| (X_23,r1_29) := sql.bind(X_2,"sys","_tables","id",2); |
-| X_25 := sql.bind(X_2,"sys","_tables","id",1); |
-| X_26 := sql.delta(X_21,X_23,r1_29,X_25); |
-| X_27:bat[:oid,:int] := algebra.leftfetchjoinPath(X_19,X_6,X_26); |
-| X_28 := aggr.count(X_27); |
-| X_29 := sql.single(X_28); |
-| X_30 := bat.append(X_3,X_29,true); |
-| X_32:bat[:oid,:oid] := sql.tid(X_2,"tmp","_tables"); |
-| X_35 := sql.bind(X_2,"tmp","_tables","type",0); |
-| X_38 := algebra.leftfetchjoin(X_32,X_35); |
-| X_39 := algebra.thetasubselect(X_38,2:sht,"<"); |
-| X_41 := sql.bind(X_2,"tmp","_tables","id",0); |
-| X_43:bat[:oid,:int] := algebra.leftfetchjoinPath(X_39,X_32,X_41); |
-| X_44 := aggr.count(X_43); |
-| X_45 := bat.append(X_30,X_44,true); |
-| X_47 := algebra.selectNotNil(X_45); |
-| X_48:wrd := aggr.sum(X_47); |
-| sql.exportValue(1,".tables","L1","wrd",32,0,6,X_48,""); |
+| X_67 := algebra.thetasubselect(X_15,X_6,2:sht,"<"); |
+| X_17 := sql.subdelta(X_65,X_12,X_66,X_67); |
+| X_19 := sql.bind(X_2,"sys","_tables","id",0); |
+| (X_21,r1_29) := sql.bind(X_2,"sys","_tables","id",2); |
+| X_23 := sql.bind(X_2,"sys","_tables","id",1); |
+| X_24 := sql.projectdelta(X_17,X_19,X_21,r1_29,X_23); |
+| X_25 := aggr.count(X_24); |
+| X_26 := sql.single(X_25); |
+| X_27 := bat.append(X_3,X_26,true); |
+| X_32 := sql.bind(X_2,"tmp","_tables","type",0); |
+| X_35 := X_32; |
+| X_29:bat[:oid,:oid] := sql.tid(X_2,"tmp","_tables"); |
+| X_36 := algebra.thetasubselect(X_35,X_29,2:sht,"<"); |
+| X_38 := sql.bind(X_2,"tmp","_tables","id",0); |
+| X_40 := X_38; |
+| X_41 := algebra.leftfetchjoin(X_36,X_40); |
+| X_42 := aggr.count(X_41); |
+| X_43 := bat.append(X_27,X_42,true); |
+| X_45 := algebra.selectNotNil(X_43); |
+| X_46:wrd := aggr.sum(X_45); |
+| sql.exportValue(1,".tables","L1","wrd",32,0,6,X_46,""); |
| end s1_1; |
-+------------------------------------------------------------------------+
-30 rows
++-------------------------------------------------------------+
+31 rows
# 19:39:11 >
_______________________________________________
checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list