Changeset: 7d49bfe62235 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/7d49bfe62235 Modified Files: gdk/gdk_bbp.c Branch: default Log Message:
Merged with Jul2021 diffs (88 lines): diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c --- a/gdk/gdk_bbp.c +++ b/gdk/gdk_bbp.c @@ -1562,32 +1562,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 diff --git a/sql/server/sql_semantic.c b/sql/server/sql_semantic.c --- a/sql/server/sql_semantic.c +++ b/sql/server/sql_semantic.c @@ -951,7 +951,6 @@ sql_subtype * result_datatype(sql_subtype *super, sql_subtype *l, sql_subtype *r) { int lclass = l->type->eclass, rclass = r->type->eclass; - int lc=0, rc=0; /* case a strings */ if (EC_VARCHAR(lclass) || EC_VARCHAR(rclass)) { @@ -970,11 +969,8 @@ result_datatype(sql_subtype *super, sql_ } sql_find_subtype(super, tpe, digits, 0); /* case b blob */ - } else if ((lc=strcmp(l->type->base.name, "blob")) == 0 || (rc=strcmp(r->type->base.name, "blob")) == 0) { - if (!lc) - *super = *l; - else - *super = *r; + } else if (lclass == EC_BLOB || rclass == EC_BLOB) { + *super = (lclass == EC_BLOB) ? *l : *r; /* case c all exact numeric */ } else if (EC_EXACTNUM(lclass) && EC_EXACTNUM(rclass)) { char *tpe = (l->type->base.id > r->type->base.id)?l->type->base.name:r->type->base.name; _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list