Changeset: 8301faa9bf92 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=8301faa9bf92
Modified Files:
        monetdb5/optimizer/opt_multiplex.c
        monetdb5/optimizer/opt_pushselect.c
        monetdb5/optimizer/opt_wrapper.c
Branch: Dec2016
Log Message:

Avoid double entries in MAL block history


diffs (55 lines):

diff --git a/monetdb5/optimizer/opt_multiplex.c 
b/monetdb5/optimizer/opt_multiplex.c
--- a/monetdb5/optimizer/opt_multiplex.c
+++ b/monetdb5/optimizer/opt_multiplex.c
@@ -260,7 +260,8 @@ OPTmultiplexImplementation(Client cntxt,
        GDKfree(msg);
 
     /* Defense line against incorrect plans */
-    if( mb->errors == 0 && actions > 0){ chkTypes(cntxt->fdout, cntxt->nspace, 
mb, FALSE);
+    if( mb->errors == 0 && actions > 0){
+        chkTypes(cntxt->fdout, cntxt->nspace, mb, FALSE);
         chkFlow(cntxt->fdout, mb);
         chkDeclarations(cntxt->fdout, mb);
     }
diff --git a/monetdb5/optimizer/opt_pushselect.c 
b/monetdb5/optimizer/opt_pushselect.c
--- a/monetdb5/optimizer/opt_pushselect.c
+++ b/monetdb5/optimizer/opt_pushselect.c
@@ -450,7 +450,7 @@ OPTpushselectImplementation(Client cntxt
        GDKfree(old);
        if (!push_down_delta) {
                GDKfree(vars);
-               return actions;
+               goto wrapup;
        }
 
        /* now push selects through delta's */
@@ -465,7 +465,7 @@ OPTpushselectImplementation(Client cntxt
                GDKfree(vars);
                GDKfree(slices);
                GDKfree(rslices);
-               return actions;
+               goto wrapup;
 
        }
        pushInstruction(mb,old[0]);
@@ -608,6 +608,7 @@ OPTpushselectImplementation(Client cntxt
         chkFlow(cntxt->fdout, mb);
         chkDeclarations(cntxt->fdout, mb);
     }
+wrapup:
     /* keep all actions taken as a post block comment */
     snprintf(buf,256,"%-20s actions=%2d time=" LLFMT " 
usec","pushselect",actions,GDKusec() - usec);
     newComment(mb,buf);
diff --git a/monetdb5/optimizer/opt_wrapper.c b/monetdb5/optimizer/opt_wrapper.c
--- a/monetdb5/optimizer/opt_wrapper.c
+++ b/monetdb5/optimizer/opt_wrapper.c
@@ -158,7 +158,8 @@ str OPTwrapper (Client cntxt, MalBlkPtr 
                ((sizeof( MalBlkRecord) +mb->ssize * offsetof(InstrRecord, 
argv)+ mb->vtop * sizeof(int) /* argv estimate */ +mb->vtop* sizeof(VarRecord) 
+ mb->vsize*sizeof(VarPtr)+1023)/1024),
                usec);
        QOTupdateStatistics(curmodnme,actions,usec);
-       addtoMalBlkHistory(mb);
+       if( actions)
+               addtoMalBlkHistory(mb);
        if ( mb->errors)
                throw(MAL, optimizer, PROGRAM_GENERAL ":%s.%s", modnme, fcnnme);
        return MAL_SUCCEED;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to