Changeset: c10ab2216eec for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c10ab2216eec
Modified Files:
        gdk/gdk_aggr.c
        monetdb5/optimizer/opt_mergetable.c
Branch: Dec2016
Log Message:

Fix for Bug 6178


diffs (27 lines):

diff --git a/gdk/gdk_aggr.c b/gdk/gdk_aggr.c
--- a/gdk/gdk_aggr.c
+++ b/gdk/gdk_aggr.c
@@ -1386,7 +1386,7 @@ BATgroupavg(BAT **bnp, BAT **cntsp, BAT 
                return GDK_SUCCEED;
        }
 
-       if ((e == NULL ||
+       if (!skip_nils && (e == NULL ||
             (BATcount(e) == BATcount(b) && e->hseqbase == b->hseqbase)) &&
            (BATtdense(g) || (g->tkey && g->tnonil))) {
                /* trivial: singleton groups, so all results are equal
diff --git a/monetdb5/optimizer/opt_mergetable.c 
b/monetdb5/optimizer/opt_mergetable.c
--- a/monetdb5/optimizer/opt_mergetable.c
+++ b/monetdb5/optimizer/opt_mergetable.c
@@ -1107,10 +1107,7 @@ mat_group_aggr(MalBlkPtr mb, InstrPtr p,
        ai2 = pushArgument(mb, ai2, getArg(ai1, 0));
        ai2 = pushArgument(mb, ai2, mat[g].mv);
        ai2 = pushArgument(mb, ai2, mat[e].mv);
-       if (isAvg)
-               ai2 = pushBit(mb, ai2, 0); /* do not skip nils */
-       else
-               ai2 = pushBit(mb, ai2, 1); /* skip nils */
+       ai2 = pushBit(mb, ai2, 1); /* skip nils */
        if (getFunctionId(p) != subminRef && getFunctionId(p) != submaxRef)
                ai2 = pushBit(mb, ai2, 1);
        pushInstruction(mb, ai2);
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to