Update of /cvsroot/monetdb/MonetDB/src/gdk
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv8624/src/gdk

Modified Files:
      Tag: GDK-2
        gdk_setop.mx gdk_storage.mx 
Log Message:
sunique fix: when reversing bats also reset the iterators
load bat: create/extend heaps for head and tail of equal capacity 


Index: gdk_storage.mx
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/gdk/gdk_storage.mx,v
retrieving revision 1.128.2.7
retrieving revision 1.128.2.8
diff -u -d -r1.128.2.7 -r1.128.2.8
--- gdk_storage.mx      19 Aug 2007 12:19:13 -0000      1.128.2.7
+++ gdk_storage.mx      20 Aug 2007 13:32:05 -0000      1.128.2.8
@@ -601,7 +601,16 @@
                }
                if (b->htype == TYPE_void)
                        b->batCapacity = b->T->heap.size >> b->T->shift;
-               assert(b->batCapacity == (b->T->heap.size >> b->T->shift));
+               if (b->batCapacity != (b->T->heap.size >> b->T->shift)) {
+                       size_t cap = b->batCapacity;
+                       if (cap < (b->T->heap.size >> b->T->shift)) {
+                               cap = b->T->heap.size >> b->T->shift;
+                               HEAPextend(&b->H->heap, headsize(b,cap));
+                               b->batCapacity = cap;
+                       } else {
+                               HEAPextend(&b->T->heap, tailsize(b,cap));
+                       }
+               }
        } else {
                b->T->heap.base = NULL;
        }

Index: gdk_setop.mx
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/gdk/gdk_setop.mx,v
retrieving revision 1.55.4.2
retrieving revision 1.55.4.3
diff -u -d -r1.55.4.2 -r1.55.4.3
--- gdk_setop.mx        6 Aug 2007 21:28:50 -0000       1.55.4.2
+++ gdk_setop.mx        20 Aug 2007 13:32:04 -0000      1.55.4.3
@@ -247,8 +247,8 @@
                return BATins_kunique(bn, b);
        }
        if ((BATtordered(b) & 1) && ATOMstorage(b->ttype) < TYPE_str) {
-               bn = BATmirror(bn);
-               b = BATmirror(b);
+               bni.b = bn = BATmirror(bn);
+               bi.b = b = BATmirror(b);
        }
        @:elim_doubles(s)@
        if (unique && bn->batSet == FALSE) {


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
Monetdb-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-checkins

Reply via email to