yep. thanks! testing just reminded me as well ;-) fix on its way. Sorry for premature checking!
Stefan ----- Original Message ----- > On 2012-07-25 09:24, Stefan Manegold wrote: > > Changeset: 4da710a71d6f for MonetDB > > URL: > > http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=4da710a71d6f > > Modified Files: > > gdk/gdk.h > > gdk/gdk_bat.c > > Branch: xid > > Log Message: > > > > BATderiveHeadProps & COLsettrivprop: do not set/derive properties > > for xid-compressed BATs > > their content is known and designed to not match their properties > > see also changesets 805110fd0096 & b33eba6cfb09 > > > > > > diffs (36 lines): > > > > diff --git a/gdk/gdk.h b/gdk/gdk.h > > --- a/gdk/gdk.h > > +++ b/gdk/gdk.h > > @@ -1699,8 +1699,10 @@ gdk_export void GDKqsort_rev(void *h, vo > > #define BATtkey(b) (b->tkey != FALSE || BATtdense(b)) > > > > /* set some properties that are trivial to deduce */ > > +/* but not for xid-compressed BATs */ > > #define COLsettrivprop(b, col) > > \ > > do { \ > > + if (b->htype == TYPE_oid && b->H->heap.xidcompressed) { \ > > Shouldn't that be: > if (b->htype != TYPE_oid || !b->H->heap.xidcompressed) { > ? > You want the properties to be set if the heap is *not* compressed. > > > if ((col)->type == TYPE_void) { \ > > if ((col)->seq == oid_nil) { \ > > if (!(col)->nil && (b)->batCount >= 1) { \ > > @@ -1772,6 +1774,7 @@ gdk_export void GDKqsort_rev(void *h, vo > > (b)->batDirtydesc = 1; \ > > } \ > > } \ > > + } \ > > } while (0) > > #define BATsettrivprop(b) \ > > do { \ > > diff --git a/gdk/gdk_bat.c b/gdk/gdk_bat.c > > --- a/gdk/gdk_bat.c > > +++ b/gdk/gdk_bat.c > > @@ -3096,6 +3096,10 @@ BATderiveHeadProps(BAT *b, int expensive > > assert(b != NULL); > > if (b == NULL) > > return; > > + if (b->htype == TYPE_oid && b->H->heap.xidcompressed) { > > + /* avoid property deriving on xid-compressed BATs */ > > + return; > > + } > > assert((b->hkey & BOUND2BTRUE) == 0); > > COLsettrivprop(b, b->H); > > cmpf = BATatoms[b->htype].atomCmp; > > _______________________________________________ > > Checkin-list mailing list > > Checkin-list@monetdb.org > > http://mail.monetdb.org/mailman/listinfo/checkin-list > > > > > -- > Sjoerd Mullender <sjo...@monetdb.org> > MonetDB: Column store pioneers <http://www.monetdb.org/> > > > _______________________________________________ > Checkin-list mailing list > Checkin-list@monetdb.org > http://mail.monetdb.org/mailman/listinfo/checkin-list > _______________________________________________ Checkin-list mailing list Checkin-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/checkin-list