Changeset: d68bb2df0db8 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=d68bb2df0db8
Modified Files:
MonetDB5/src/optimizer/opt_prelude.mx
MonetDB5/src/optimizer/opt_support.mx
Branch: default
Log Message:
Merge with Jun2010 branch: Fix bug 2597.
The function isMapOp is supposed to be conservative, but it wasn't conservative
enough.
Don't treat batcalc.mark_grp and batcalc.rank_grp as map operators.
diffs (68 lines):
diff -r 5452a9ac28d5 -r d68bb2df0db8 MonetDB5/src/optimizer/opt_prelude.mx
--- a/MonetDB5/src/optimizer/opt_prelude.mx Mon Jul 12 15:33:55 2010 +0200
+++ b/MonetDB5/src/optimizer/opt_prelude.mx Mon Jul 12 17:13:40 2010 +0200
@@ -112,6 +112,7 @@
opt_export str mapiRef;
opt_export str markHRef;
opt_export str markTRef;
+opt_export str mark_grpRef;
opt_export str materializeRef;
opt_export str matRef;
opt_export str max_no_nilRef;
@@ -143,6 +144,7 @@
opt_export str projectRef;
opt_export str putRef;
opt_export str queryRef;
+opt_export str rank_grpRef;
opt_export str reconnectRef;
opt_export str recycleRef;
opt_export str refineRef;
@@ -307,6 +309,7 @@
str mapiRef;
str markHRef;
str markTRef;
+str mark_grpRef;
str materializeRef;
str matRef;
str max_no_nilRef;
@@ -338,6 +341,7 @@
str projectRef;
str putRef;
str queryRef;
+str rank_grpRef;
str reconnectRef;
str recycleRef;
str refineRef;
@@ -498,6 +502,7 @@
mapiRef = putName("mapi", 4);
markHRef = putName("markH", 5);
markTRef = putName("markT", 5);
+ mark_grpRef = putName("mark_grp", 8);
materializeRef = putName("materialize", 11);
matRef = putName("mat", 3);
max_no_nilRef = putName("max_no_nil", 10);
@@ -529,6 +534,7 @@
projectRef = putName("project",7);
putRef = putName("put",3);
queryRef = putName("query",5);
+ rank_grpRef = putName("rank_grp", 8);
reconnectRef = putName("reconnect",9);
recycleRef = putName("recycle",7);
refineRef = putName("refine",6);
diff -r 5452a9ac28d5 -r d68bb2df0db8 MonetDB5/src/optimizer/opt_support.mx
--- a/MonetDB5/src/optimizer/opt_support.mx Mon Jul 12 15:33:55 2010 +0200
+++ b/MonetDB5/src/optimizer/opt_support.mx Mon Jul 12 17:13:40 2010 +0200
@@ -1241,11 +1241,11 @@
}
@-
-Used in the merge table optimizer. It is build incrementally
+Used in the merge table optimizer. It is built incrementally
and should be conservative.
@c
int isMapOp(InstrPtr p){
- return (getModuleId(p)== batcalcRef) ||
+ return (getModuleId(p)== batcalcRef && getFunctionId(p) != mark_grpRef
&& getFunctionId(p) != rank_grpRef) ||
(getModuleId(p)== batmtimeRef) ||
(getModuleId(p)== batstrRef) ||
(getModuleId(p)== mkeyRef);
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list