Changeset: a57172bfb885 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/a57172bfb885
Modified Files:
monetdb5/optimizer/opt_emptybind.c
Branch: default
Log Message:
Push emptybind through compress and decompress calls. More improvements can be
done here
diffs (47 lines):
diff --git a/monetdb5/optimizer/opt_emptybind.c
b/monetdb5/optimizer/opt_emptybind.c
--- a/monetdb5/optimizer/opt_emptybind.c
+++ b/monetdb5/optimizer/opt_emptybind.c
@@ -210,18 +210,32 @@ OPTemptybindImplementation(Client cntxt,
}
continue;
}
- if (getModuleId(p)== algebraRef){
- if( getFunctionId(p) == projectionRef) {
- if( empty[getArg(p,1)] || empty[getArg(p,2)] ){
- actions++;
- emptyresult(0);
- }
+ if (getModuleId(p)== algebraRef && getFunctionId(p) ==
projectionRef) {
+ if( empty[getArg(p,1)] || empty[getArg(p,2)] ){
+ actions++;
+ emptyresult(0);
+ }
+ }
+ if ((getModuleId(p)== algebraRef || getModuleId(p) == dictRef)
&& (getFunctionId(p) == thetaselectRef || getFunctionId(p) == selectRef)) {
+ if( empty[getArg(p,1)] || empty[getArg(p,2)] ){
+ actions++;
+ emptyresult(0);
}
- if( getFunctionId(p) == thetaselectRef ||
getFunctionId(p) == selectRef) {
- if( empty[getArg(p,1)] || empty[getArg(p,2)] ){
- actions++;
- emptyresult(0);
- }
+ }
+ if (getModuleId(p) == forRef && getFunctionId(p) ==
decompressRef){
+ if (empty[getArg(p,1)]){
+ actions++;
+ emptyresult(0);
+ }
+ }
+ if (getModuleId(p) == dictRef){
+ if (getFunctionId(p) == decompressRef &&
(empty[getArg(p,1)] || empty[getArg(p,2)])){
+ actions++;
+ emptyresult(0);
+ }
+ if (getFunctionId(p) == compressRef &&
empty[getArg(p,2)]){
+ actions++;
+ emptyresult(0);
}
}
if( getModuleId(p) == batstrRef){
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]