Changeset: ad1f5bcabee6 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/ad1f5bcabee6
Modified Files:
gdk/gdk_bbp.c
Branch: Jul2021
Log Message:
No file manipulations when in memory.
diffs (75 lines):
diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c
--- a/gdk/gdk_bbp.c
+++ b/gdk/gdk_bbp.c
@@ -618,9 +618,9 @@ BBPreadEntries(FILE *fp, unsigned bbpver
bid = (bat) batid;
if (batid >= (uint64_t) ATOMIC_GET(&BBPsize)) {
if ((bat) ATOMIC_GET(&BBPsize) + 1 >= BBPlimit &&
- BBPextend(0, false, bid + 1) != GDK_SUCCEED)
+ BBPextend(0, false, batid + 1) != GDK_SUCCEED)
return GDK_FAIL;
- ATOMIC_SET(&BBPsize, bid + 1);
+ ATOMIC_SET(&BBPsize, batid + 1);
}
if (BBP_desc(bid) != NULL) {
TRC_CRITICAL(GDK, "duplicate entry in BBP.dir (ID = "
@@ -1288,32 +1288,36 @@ BBPinit(void)
#ifdef GDKLIBRARY_TAILN
char *needstrbatmove;
- needstrbatmove = GDKfilepath(0, BATDIR, "needstrbatmove", NULL);
- if (bbpversion <= GDKLIBRARY_TAILN) {
- /* create signal file that we need to rename string
- * offset heaps */
- int fd = MT_open(needstrbatmove, O_WRONLY | O_CREAT);
- if (fd < 0) {
- TRC_CRITICAL(GDK, "cannot create signal file
needstrbatmove.\n");
- GDKfree(needstrbatmove);
- return GDK_FAIL;
- }
- close(fd);
+ if (GDKinmemory(0)) {
+ needstrbatmove = NULL;
} else {
- /* check signal file whether we need to rename string
- * offset heaps */
- int fd = MT_open(needstrbatmove, O_RDONLY);
- if (fd >= 0) {
- /* yes, we do */
+ needstrbatmove = GDKfilepath(0, BATDIR, "needstrbatmove", NULL);
+ if (bbpversion <= GDKLIBRARY_TAILN) {
+ /* create signal file that we need to rename string
+ * offset heaps */
+ int fd = MT_open(needstrbatmove, O_WRONLY | O_CREAT);
+ if (fd < 0) {
+ TRC_CRITICAL(GDK, "cannot create signal file
needstrbatmove.\n");
+ GDKfree(needstrbatmove);
+ return GDK_FAIL;
+ }
close(fd);
- } else if (errno == ENOENT) {
- /* no, we don't: set var to NULL */
- GDKfree(needstrbatmove);
- needstrbatmove = NULL;
} else {
- GDKsyserror("unexpected error opening %s\n",
needstrbatmove);
- GDKfree(needstrbatmove);
- return GDK_FAIL;
+ /* check signal file whether we need to rename string
+ * offset heaps */
+ int fd = MT_open(needstrbatmove, O_RDONLY);
+ if (fd >= 0) {
+ /* yes, we do */
+ close(fd);
+ } else if (errno == ENOENT) {
+ /* no, we don't: set var to NULL */
+ GDKfree(needstrbatmove);
+ needstrbatmove = NULL;
+ } else {
+ GDKsyserror("unexpected error opening %s\n",
needstrbatmove);
+ GDKfree(needstrbatmove);
+ return GDK_FAIL;
+ }
}
}
#endif
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list