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-l...@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-l...@monetdb.org
> http://mail.monetdb.org/mailman/listinfo/checkin-list
> 

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Monetdb-developers mailing list
Monetdb-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/monetdb-developers

Reply via email to