Changeset: 6f7c8b58a852 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/6f7c8b58a852 Branch: default Log Message:
Merge with Jun2023 branch. diffs (118 lines): diff --git a/ChangeLog.Jun2023 b/ChangeLog.Jun2023 --- a/ChangeLog.Jun2023 +++ b/ChangeLog.Jun2023 @@ -1,3 +1,7 @@ # ChangeLog file for devel # This file is updated with Maddlog +* Fri Sep 29 2023 Sjoerd Mullender <sjo...@acm.org> +- Fixed an installation issue on Debian and Ubuntu introduced in the + last build. + diff --git a/clients/odbc/tests/ODBCtester.c b/clients/odbc/tests/ODBCtester.c --- a/clients/odbc/tests/ODBCtester.c +++ b/clients/odbc/tests/ODBCtester.c @@ -88,11 +88,7 @@ retrieveDiagMsg(SQLHANDLE stmt, char * o /* The message layout is: "[MonetDB][ODBC Driver 11.46.0][MonetDB-Test]error/warning text". The ODBC driver version numbers changes in time. Overwrite it to get a stable output */ if (strncmp(msg, "[MonetDB][ODBC Driver 11.", 25) == 0) { - for (int i = 25; msg[i] != ']'; i++) { - if (isdigit(msg[i])) { - msg[i] = '#'; - } - } + return snprintf(outp, outp_len, "SQLstate %s, Errnr %d, Message [MonetDB][ODBC Driver 11.##.#]%s\n", (char*)state, (int)errnr, strchr(msg + 25, ']') + 1); } return snprintf(outp, outp_len, "SQLstate %s, Errnr %d, Message %s\n", (char*)state, (int)errnr, (char*)msg); } diff --git a/gdk/gdk_logger.c b/gdk/gdk_logger.c --- a/gdk/gdk_logger.c +++ b/gdk/gdk_logger.c @@ -1038,17 +1038,8 @@ log_create_types_file(logger *lg, const return GDK_SUCCEED; } -static inline void -rotation_lock(logger *lg) -{ - MT_lock_set(&lg->rotation_lock); -} - -static inline void -rotation_unlock(logger *lg) -{ - MT_lock_unset(&lg->rotation_lock); -} +#define rotation_lock(lg) MT_lock_set(&(lg)->rotation_lock) +#define rotation_unlock(lg) MT_lock_unset(&(lg)->rotation_lock) static gdk_return log_open_output(logger *lg) @@ -2285,7 +2276,6 @@ do_flush_range_cleanup(logger *lg) logged_range *flast = frange; lg->flush_ranges = flast; - rotation_unlock(lg); for (frange = first; frange && frange != flast; frange = frange->next) { ATOMIC_DEC(&frange->refcount); @@ -2296,6 +2286,7 @@ do_flush_range_cleanup(logger *lg) ATOMIC_DEC(&lg->nr_open_files); } } + rotation_unlock(lg); return flast; } @@ -2416,6 +2407,7 @@ log_next_logfile(logger *lg, ulng ts) static void log_cleanup_range(logger *lg, ulng id) { + rotation_lock(lg); while (lg->pending && lg->pending->id <= id) { logged_range *p; p = lg->pending; @@ -2423,6 +2415,7 @@ log_cleanup_range(logger *lg, ulng id) lg->pending = p->next; GDKfree(p); } + rotation_unlock(lg); } static void @@ -3036,17 +3029,8 @@ log_tend(logger *lg) return result; } -static inline void -flush_lock(logger *lg) -{ - MT_lock_set(&lg->flush_lock); -} - -static inline void -flush_unlock(logger *lg) -{ - MT_lock_unset(&lg->flush_lock); -} +#define flush_lock(lg) MT_lock_set(&(lg)->flush_lock) +#define flush_unlock(lg) MT_lock_unset(&(lg)->flush_lock) static inline gdk_return do_flush(logged_range *range) @@ -3076,6 +3060,7 @@ gdk_return log_tflush(logger *lg, ulng file_id, ulng commit_ts) { if (lg->flushnow) { + rotation_lock(lg); assert(lg->flush_ranges == lg->current); assert(ATOMIC_GET(&lg->current->flushed_ts) == ATOMIC_GET(&lg->current->last_ts)); log_tdone(lg, lg->current, commit_ts); @@ -3085,6 +3070,7 @@ log_tflush(logger *lg, ulng file_id, uln if (log_open_output(lg) != GDK_SUCCEED) GDKfatal("Could not create new log file\n"); /* TODO: does not have to be fatal (yet) */ do_rotate(lg); + rotation_unlock(lg); (void) do_flush_range_cleanup(lg); assert(lg->flush_ranges == lg->current); return log_commit(lg, NULL, 0); _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org