Changeset: 1f4918266c43 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1f4918266c43
Modified Files:
        gdk/gdk.h
        gdk/gdk_atoms.c
        geom/monetdb5/geom.c
        monetdb5/modules/atoms/blob.c
Branch: Jun2016
Log Message:

Merge with Jul2015 branch.


diffs (64 lines):

diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -1218,6 +1218,7 @@ gdk_export bte ATOMelmshift(int sz);
        do {                                                    \
                assert((b)->HT->width == (s));                  \
                (b)->HT->heap.free += (s);                      \
+               (b)->HT->heap.dirty |= (s) != 0;                \
                HTputvalue((b), HT##loc((b), (p)), (v), 0, HT); \
        } while (0)
 #define tfastins_nocheck(b, p, v, s)   HTfastins_nocheck(b, p, v, s, T)
diff --git a/gdk/gdk_atoms.c b/gdk/gdk_atoms.c
--- a/gdk/gdk_atoms.c
+++ b/gdk/gdk_atoms.c
@@ -1316,6 +1316,7 @@ strPut(Heap *h, var_t *dst, const char *
 #endif
        }
        h->free += pad + len + extralen;
+       h->dirty = 1;
 
        /* maintain hash table */
        pos -= extralen;
diff --git a/geom/monetdb5/geom.c b/geom/monetdb5/geom.c
--- a/geom/monetdb5/geom.c
+++ b/geom/monetdb5/geom.c
@@ -5030,8 +5030,10 @@ var_t wkbPUT(Heap *h, var_t *bun, wkb *v
 
        *bun = HEAP_malloc(h, wkb_size(val->len));
        base = h->base;
-       if (*bun)
+       if (*bun) {
                memcpy(&base[*bun << GDK_VARSHIFT], (char *) val, 
wkb_size(val->len));
+               h->dirty = 1;
+       }
        return *bun;
 }
 
@@ -5378,8 +5380,10 @@ var_t wkbaPUT(Heap *h, var_t *bun, wkba 
 
        *bun = HEAP_malloc(h, wkba_size(val->itemsNum));
        base = h->base;
-       if (*bun)
+       if (*bun) {
                memcpy(&base[*bun << GDK_VARSHIFT], (char *) val, 
wkba_size(val->itemsNum));
+               h->dirty = 1;
+       }
        return *bun;
 }
 
diff --git a/monetdb5/modules/atoms/blob.c b/monetdb5/modules/atoms/blob.c
--- a/monetdb5/modules/atoms/blob.c
+++ b/monetdb5/modules/atoms/blob.c
@@ -86,8 +86,10 @@ blob_put(Heap *h, var_t *bun, blob *val)
 
        *bun = HEAP_malloc(h, blobsize(val->nitems));
        base = h->base;
-       if (*bun)
+       if (*bun) {
                memcpy(&base[*bun << GDK_VARSHIFT], (char *) val, 
blobsize(val->nitems));
+               h->dirty = 1;
+       }
        return *bun;
 }
 
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to