Changeset: 40036442a71a for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=40036442a71a
Modified Files:
monetdb5/optimizer/opt_groups.mx
Branch: default
Log Message:
Get descriptor without reference counts
diffs (36 lines):
diff --git a/monetdb5/optimizer/opt_groups.mx b/monetdb5/optimizer/opt_groups.mx
--- a/monetdb5/optimizer/opt_groups.mx
+++ b/monetdb5/optimizer/opt_groups.mx
@@ -219,28 +219,25 @@ GRPmulticolumngroup(Client cntxt, MalBlk
return msg;
}
/* check group count */
- b = BATdescriptor(*grp);
+ b = BBPquickdesc(*grp, FALSE);
if ( b && BATcount(b) != cnt[2]) {
- BBPreleaseref(*grp);
- b = 0;
/* (grp,ext) := group.derive(grp,ext,arg) */
/* (grp,ext) := group.done(grp,ext,arg) */
for ( i=3; i < pci->argc; i++){
oldgrp= *grp;
oldext= *ext;
msg = GRPderive(grp, ext, &oldgrp, &oldext, &bid[i]);
- if ( msg == MAL_SUCCEED){
+ if ( msg != MAL_SUCCEED){
BBPdecref(oldgrp, TRUE);
BBPdecref(oldext, TRUE);
+ *grp = *ext = 0;
} else break;
/* check group count */
- b = BATdescriptor(*grp);
+ b = BBPquickdesc(*grp, FALSE);
if ( b && BATcount(b) == cnt[i])
break;
}
}
- if (b)
- BBPreleaseref(*grp);
GDKfree(sizes);
GDKfree(bid);
GDKfree(cnt);
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list