Changeset: 358e600c2611 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=358e600c2611
Modified Files:
        gdk/gdk_bbp.c
Branch: Feb2013
Log Message:

Check for hash pointer value of -1.
This can happen if a view shares its hash pointer with its parent and
the view is currently not used (physical reference count equals zero).


diffs (40 lines):

diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c
--- a/gdk/gdk_bbp.c
+++ b/gdk/gdk_bbp.c
@@ -1430,14 +1430,14 @@ BBPdump(void)
                          HEAPvmsize(&b->H->heap),
                          HEAPmemsize(b->H->vheap),
                          HEAPvmsize(b->H->vheap),
-                         b->H->hash ? HEAPmemsize(b->H->hash->heap) : 0,
-                         b->H->hash ? HEAPvmsize(b->H->hash->heap) : 0,
+                         b->H->hash && b->H->hash != (Hash *) -1 ? 
HEAPmemsize(b->H->hash->heap) : 0,
+                         b->H->hash && b->H->hash != (Hash *) -1 ? 
HEAPvmsize(b->H->hash->heap) : 0,
                          HEAPmemsize(&b->T->heap),
                          HEAPvmsize(&b->T->heap),
                          HEAPmemsize(b->T->vheap),
                          HEAPvmsize(b->T->vheap),
-                         b->T->hash ? HEAPmemsize(b->T->hash->heap) : 0,
-                         b->T->hash ? HEAPvmsize(b->T->hash->heap) : 0);
+                         b->T->hash && b->T->hash != (Hash *) -1 ? 
HEAPmemsize(b->T->hash->heap) : 0,
+                         b->T->hash && b->T->hash != (Hash *) -1 ? 
HEAPvmsize(b->T->hash->heap) : 0);
                if (BBP_logical(i) && BBP_logical(i)[0] == '.') {
                        cmem += HEAPmemsize(&b->H->heap);
                        cvm += HEAPvmsize(&b->H->heap);
@@ -1456,7 +1456,7 @@ BBPdump(void)
                                vm += HEAPvmsize(b->H->vheap);
                        }
                }
-               if (b->H->hash) {
+               if (b->H->hash && b->H->hash != (Hash *) -1) {
                        if (BBP_logical(i) && BBP_logical(i)[0] == '.') {
                                cmem += HEAPmemsize(b->H->hash->heap);
                                cvm += HEAPvmsize(b->H->hash->heap);
@@ -1481,7 +1481,7 @@ BBPdump(void)
                                vm += HEAPvmsize(b->T->vheap);
                        }
                }
-               if (b->T->hash) {
+               if (b->T->hash && b->T->hash != (Hash *) -1) {
                        if (BBP_logical(i) && BBP_logical(i)[0] == '.') {
                                cmem += HEAPmemsize(b->T->hash->heap);
                                cvm += HEAPvmsize(b->T->hash->heap);
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to