Changeset: b2e7050cc291 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b2e7050cc291
Modified Files:
gdk/gdk_bbp.c
Branch: default
Log Message:
Merge with Jul2017 branch.
diffs (115 lines):
diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c
--- a/gdk/gdk_bbp.c
+++ b/gdk/gdk_bbp.c
@@ -3686,9 +3686,6 @@ BBPdiskscan(const char *parent, size_t b
continue;
p = strchr(dent->d_name, '.');
- bid = strtol(dent->d_name, NULL, 8);
- ok = p && bid;
- delete = FALSE;
if (strlen(dent->d_name) >= dstlen) {
/* found a file with too long a name
@@ -3705,53 +3702,61 @@ BBPdiskscan(const char *parent, size_t b
continue;
}
- if (ok == FALSE || !persistent_bat(bid)) {
+ if (p && strcmp(p + 1, "tmp") == 0) {
delete = TRUE;
- } else if (strcmp(p + 1, "tmp") == 0) {
- delete = 1; /* throw away any .tmp file */
- } else if (strncmp(p + 1, "tail", 4) == 0) {
- BAT *b = getdesc(bid);
- delete = (b == NULL || !b->ttype || b->batCopiedtodisk
== 0);
- } else if (strncmp(p + 1, "theap", 5) == 0) {
- BAT *b = getdesc(bid);
- delete = (b == NULL || !b->tvheap || b->batCopiedtodisk
== 0);
- } else if (strncmp(p + 1, "thash", 5) == 0) {
+ ok = TRUE;
+ bid = 0;
+ } else {
+ bid = strtol(dent->d_name, NULL, 8);
+ ok = p && bid;
+ delete = FALSE;
+
+ if (ok == FALSE || !persistent_bat(bid)) {
+ delete = TRUE;
+ } else if (strncmp(p + 1, "tail", 4) == 0) {
+ BAT *b = getdesc(bid);
+ delete = (b == NULL || !b->ttype ||
b->batCopiedtodisk == 0);
+ } else if (strncmp(p + 1, "theap", 5) == 0) {
+ BAT *b = getdesc(bid);
+ delete = (b == NULL || !b->tvheap ||
b->batCopiedtodisk == 0);
+ } else if (strncmp(p + 1, "thash", 5) == 0) {
#ifdef PERSISTENTHASH
- BAT *b = getdesc(bid);
- delete = b == NULL;
- if (!delete)
- b->thash = (Hash *) 1;
+ BAT *b = getdesc(bid);
+ delete = b == NULL;
+ if (!delete)
+ b->thash = (Hash *) 1;
#else
- delete = TRUE;
+ delete = TRUE;
#endif
- } else if (strncmp(p + 1, "timprints", 9) == 0) {
- BAT *b = getdesc(bid);
- delete = b == NULL;
- if (!delete)
- b->timprints = (Imprints *) 1;
- } else if (strncmp(p + 1, "torderidx", 9) == 0) {
+ } else if (strncmp(p + 1, "timprints", 9) == 0) {
+ BAT *b = getdesc(bid);
+ delete = b == NULL;
+ if (!delete)
+ b->timprints = (Imprints *) 1;
+ } else if (strncmp(p + 1, "torderidx", 9) == 0) {
#ifdef PERSISTENTIDX
- BAT *b = getdesc(bid);
- delete = b == NULL;
- if (!delete)
- b->torderidx = (Heap *) 1;
+ BAT *b = getdesc(bid);
+ delete = b == NULL;
+ if (!delete)
+ b->torderidx = (Heap *) 1;
#else
- delete = TRUE;
+ delete = TRUE;
#endif
- } else if (strncmp(p + 1, "priv", 4) != 0 &&
- strncmp(p + 1, "new", 3) != 0 &&
- strncmp(p + 1, "head", 4) != 0 &&
- strncmp(p + 1, "tail", 4) != 0) {
- ok = FALSE;
- } else if (strncmp(p + 1, "head", 4) == 0 ||
- strncmp(p + 1, "hheap", 5) == 0 ||
- strncmp(p + 1, "hhash", 5) == 0 ||
- strncmp(p + 1, "himprints", 9) == 0 ||
- strncmp(p + 1, "horderidx", 9) == 0) {
- /* head is VOID, so no head, hheap files, and
- * we do not support any indexes on the
- * head */
- delete = 1;
+ } else if (strncmp(p + 1, "priv", 4) != 0 &&
+ strncmp(p + 1, "new", 3) != 0 &&
+ strncmp(p + 1, "head", 4) != 0 &&
+ strncmp(p + 1, "tail", 4) != 0) {
+ ok = FALSE;
+ } else if (strncmp(p + 1, "head", 4) == 0 ||
+ strncmp(p + 1, "hheap", 5) == 0 ||
+ strncmp(p + 1, "hhash", 5) == 0 ||
+ strncmp(p + 1, "himprints", 9) == 0 ||
+ strncmp(p + 1, "horderidx", 9) == 0) {
+ /* head is VOID, so no head, hheap files, and
+ * we do not support any indexes on the
+ * head */
+ delete = 1;
+ }
}
if (!ok) {
/* found an unknown file; stop pruning in this
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list