Changeset: 936311f0b35d for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=936311f0b35d Modified Files: gdk/gdk_logger.c sql/storage/store.c Branch: k3match Log Message:
merge with default diffs (58 lines): diff --git a/gdk/gdk_logger.c b/gdk/gdk_logger.c --- a/gdk/gdk_logger.c +++ b/gdk/gdk_logger.c @@ -1400,7 +1400,15 @@ logger_load(int debug, const char* fn, c logger_fatal("logger_load: writing log file %s failed", filename, 0, 0); } - if (fclose(fp) < 0) { + if (fflush(fp) < 0 || +#if defined(_MSC_VER) + _commit(_fileno(fp)) < 0 || +#elif defined(HAVE_FDATASYNC) + fdatasync(fileno(fp)) < 0 || +#elif defined(HAVE_FSYNC) + fsync(fileno(fp)) < 0 || +#endif + fclose(fp) < 0) { unlink(filename); logger_fatal("logger_load: closing log file %s failed", filename, 0, 0); @@ -2028,7 +2036,15 @@ logger_exit(logger *lg) return LOG_ERR; } - if (fclose(fp) < 0) { + if (fflush(fp) < 0 || +#if defined(_MSC_VER) + _commit(_fileno(fp)) < 0 || +#elif defined(HAVE_FDATASYNC) + fdatasync(fileno(fp)) < 0 || +#elif defined(HAVE_FSYNC) + fsync(fileno(fp)) < 0 || +#endif + fclose(fp) < 0) { fprintf(stderr, "!ERROR: logger_exit: flush of %s failed\n", filename); return LOG_ERR; diff --git a/sql/storage/store.c b/sql/storage/store.c --- a/sql/storage/store.c +++ b/sql/storage/store.c @@ -2127,6 +2127,17 @@ sql_trans_tname_conflict( sql_trans *tr, return 1; *tp++ = '_'; } + tmp = sa_strdup(tr->sa, cname); + tp = tmp; + while ((tp = strchr(tp, '_')) != NULL) { + char *ntmp; + *tp = 0; + ntmp = sa_message(tr->sa, "%s_%s", tname, tmp); + t = find_sql_table(s, ntmp); + if (t && sql_trans_cname_conflict(tr, t, NULL, tp+1)) + return 1; + *tp++ = '_'; + } t = find_sql_table(s, tname); if (t && sql_trans_cname_conflict(tr, t, NULL, cname)) return 1; _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list