Changeset: 400b5c599dfc for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=400b5c599dfc
Modified Files:
        gdk/gdk.h
        gdk/gdk_bat.c
        gdk/gdk_bbp.c
        gdk/gdk_join.c
        gdk/gdk_storage.c
Branch: Oct2014
Log Message:

Use a define instead of a magic number.


diffs (145 lines):

diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -1647,6 +1647,8 @@ gdk_export int BATmmap(BAT *b, int hb, i
 gdk_export int BATdelete(BAT *b);
 gdk_export size_t BATmemsize(BAT *b, int dirty);
 
+#define NOFARM (-1) /* indicate to GDKfilepath to create relative path */
+
 gdk_export char *GDKfilepath(int farmid, const char *dir, const char *nme, 
const char *ext);
 gdk_export int GDKcreatedir(const char *nme);
 
diff --git a/gdk/gdk_bat.c b/gdk/gdk_bat.c
--- a/gdk/gdk_bat.c
+++ b/gdk/gdk_bat.c
@@ -152,20 +152,20 @@ BATcreatedesc(int ht, int tt, int heapna
                const char *nme = BBP_physical(bn->batCacheid);
 
                if (ht) {
-                       bn->H->heap.filename = GDKfilepath(-1, NULL, nme, 
"head");
+                       bn->H->heap.filename = GDKfilepath(NOFARM, NULL, nme, 
"head");
                        if (bn->H->heap.filename == NULL)
                                goto bailout;
                }
 
                if (tt) {
-                       bn->T->heap.filename = GDKfilepath(-1, NULL, nme, 
"tail");
+                       bn->T->heap.filename = GDKfilepath(NOFARM, NULL, nme, 
"tail");
                        if (bn->T->heap.filename == NULL)
                                goto bailout;
                }
 
                if (ATOMneedheap(ht)) {
                        if ((bn->H->vheap = (Heap *) GDKzalloc(sizeof(Heap))) 
== NULL ||
-                           (bn->H->vheap->filename = GDKfilepath(-1, NULL, 
nme, "hheap")) == NULL)
+                           (bn->H->vheap->filename = GDKfilepath(NOFARM, NULL, 
nme, "hheap")) == NULL)
                                goto bailout;
                        bn->H->vheap->parentid = bn->batCacheid;
                        bn->H->vheap->farmid = BBPselectfarm(role, bn->htype, 
varheap);
@@ -173,7 +173,7 @@ BATcreatedesc(int ht, int tt, int heapna
 
                if (ATOMneedheap(tt)) {
                        if ((bn->T->vheap = (Heap *) GDKzalloc(sizeof(Heap))) 
== NULL ||
-                           (bn->T->vheap->filename = GDKfilepath(-1, NULL, 
nme, "theap")) == NULL)
+                           (bn->T->vheap->filename = GDKfilepath(NOFARM, NULL, 
nme, "theap")) == NULL)
                                goto bailout;
                        bn->T->vheap->parentid = bn->batCacheid;
                        bn->T->vheap->farmid = BBPselectfarm(role, bn->ttype, 
varheap);
@@ -715,7 +715,7 @@ heapcopy(BAT *bn, char *ext, Heap *dst, 
        if (src->filename && src->newstorage != STORE_MEM) {
                const char *nme = BBP_physical(bn->batCacheid);
 
-               if ((dst->filename = GDKfilepath(-1, NULL, nme, ext)) == NULL)
+               if ((dst->filename = GDKfilepath(NOFARM, NULL, nme, ext)) == 
NULL)
                        return -1;
        }
        return HEAPcopy(dst, src);
diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c
--- a/gdk/gdk_bbp.c
+++ b/gdk/gdk_bbp.c
@@ -519,7 +519,7 @@ fixoidheapcolumn(BAT *b, const char *src
                                 "for BAT %d failed\n", bid);
 
                /* create new string heap */
-               b->H->heap.filename = GDKfilepath(-1, NULL, nme, headtail);
+               b->H->heap.filename = GDKfilepath(NOFARM, NULL, nme, headtail);
                if (b->H->heap.filename == NULL)
                        GDKfatal("fixoidheap: GDKmalloc failed\n");
                w = b->H->width; /* remember old width */
@@ -530,7 +530,7 @@ fixoidheapcolumn(BAT *b, const char *src
                                 "for BAT %d failed\n", headtail, bid);
 
                b->H->heap.dirty = TRUE;
-               b->H->vheap->filename = GDKfilepath(-1, NULL, nme, htheap);
+               b->H->vheap->filename = GDKfilepath(NOFARM, NULL, nme, htheap);
                if (b->H->vheap->filename == NULL)
                        GDKfatal("fixoidheap: GDKmalloc failed\n");
                if (ATOMheap(TYPE_str, b->H->vheap, b->batCapacity))
@@ -580,7 +580,7 @@ fixoidheapcolumn(BAT *b, const char *src
                                 "for BAT %d failed\n", headtail, bid);
 
                /* create new heap */
-               b->H->heap.filename = GDKfilepath(-1, NULL, nme, headtail);
+               b->H->heap.filename = GDKfilepath(NOFARM, NULL, nme, headtail);
                if (b->H->heap.filename == NULL)
                        GDKfatal("fixoidheap: GDKmalloc failed\n");
                b->H->width = SIZEOF_OID;
@@ -1790,7 +1790,7 @@ BBPinsert(BATstore *bs)
                BBPgetsubdir(dirname, i);
                nme = BBPphysicalname(name, 64, i);
 
-               BBP_physical(i) = GDKfilepath(-1, dirname, nme, NULL);
+               BBP_physical(i) = GDKfilepath(NOFARM, dirname, nme, NULL);
 
                BATDEBUG THRprintf(GDKstdout, "#%d = new %s(%s,%s)\n", (int) i, 
BBPname(i), ATOMname(bs->H.type), ATOMname(bs->T.type));
        }
@@ -3323,7 +3323,7 @@ BBPbackup(BAT *b, bit subcommit)
                return 0;
        }
        /* determine location dir and physical suffix */
-       srcdir = GDKfilepath(-1, BATDIR, s, NULL);
+       srcdir = GDKfilepath(NOFARM, BATDIR, s, NULL);
        s = strrchr(srcdir, DIR_SEP);
        if (!s)
                goto fail;
diff --git a/gdk/gdk_join.c b/gdk/gdk_join.c
--- a/gdk/gdk_join.c
+++ b/gdk/gdk_join.c
@@ -3061,7 +3061,7 @@ BATproject(BAT *l, BAT *r)
                        bn->T->vheap->farmid = BBPselectfarm(bn->batRole, 
TYPE_str, varheap);
                        if (r->T->vheap->filename) {
                                char *nme = BBP_physical(bn->batCacheid);
-                               bn->T->vheap->filename = GDKfilepath(-1, NULL, 
nme, "theap");
+                               bn->T->vheap->filename = GDKfilepath(NOFARM, 
NULL, nme, "theap");
                                if (bn->T->vheap->filename == NULL)
                                        goto bailout;
                        }
diff --git a/gdk/gdk_storage.c b/gdk/gdk_storage.c
--- a/gdk/gdk_storage.c
+++ b/gdk/gdk_storage.c
@@ -65,7 +65,7 @@ GDKfilepath(int farmid, const char *dir,
        char *path;
 
        assert(dir == NULL || *dir != DIR_SEP);
-       assert(farmid == -1 ||
+       assert(farmid == NOFARM ||
               (farmid >= 0 && farmid < MAXFARMS && BBPfarms[farmid].dirname));
        if (MT_path_absolute(name))
                return NULL;
@@ -77,13 +77,13 @@ GDKfilepath(int farmid, const char *dir,
                sep[0] = DIR_SEP;
                sep[1] = 0;
        }
-       pathlen = (farmid == -1 ? 0 : strlen(BBPfarms[farmid].dirname) + 1) +
+       pathlen = (farmid == NOFARM ? 0 : strlen(BBPfarms[farmid].dirname) + 1) 
+
                (dir ? strlen(dir) : 0) + strlen(sep) + strlen(name) +
                (ext ? strlen(ext) + 1 : 0) + 1;
        path = GDKmalloc(pathlen);
        if (path == NULL)
                return NULL;
-       if (farmid == -1) {
+       if (farmid == NOFARM) {
                snprintf(path, pathlen, "%s%s%s%s%s",
                         dir ? dir : "", sep, name,
                         ext ? "." : "", ext ? ext : "");
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to