Changeset: 4c207416995f for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/4c207416995f Modified Files: gdk/gdk_tm.c monetdb5/modules/mal/querylog.c sql/backends/monet5/sql_upgrades.c Branch: Jun2023 Log Message:
Delay getting logno and transid until we have a lock. diffs (83 lines): diff --git a/gdk/gdk_tm.c b/gdk/gdk_tm.c --- a/gdk/gdk_tm.c +++ b/gdk/gdk_tm.c @@ -207,6 +207,10 @@ TMsubcommit_list(bat *restrict subcommit } /* lock just prevents other global (sub-)commits */ BBPtmlock(); + if (logno < 0) + logno = getBBPlogno(); + if (transid < 0) + transid = getBBPtransid(); if (BBPsync(cnt, subcommit, sizes, logno, transid) == GDK_SUCCEED) { /* write BBP.dir (++) */ epilogue(cnt, subcommit, false); ret = GDK_SUCCEED; @@ -239,7 +243,7 @@ TMsubcommit(BAT *b) } bat_iterator_end(&bi); - ret = TMsubcommit_list(subcommit, NULL, cnt, getBBPlogno(), getBBPtransid()); + ret = TMsubcommit_list(subcommit, NULL, cnt, -1, -1); GDKfree(subcommit); return ret; } diff --git a/monetdb5/modules/mal/querylog.c b/monetdb5/modules/mal/querylog.c --- a/monetdb5/modules/mal/querylog.c +++ b/monetdb5/modules/mal/querylog.c @@ -256,7 +256,7 @@ static str } QLOG_init = true; - if (TMsubcommit_list(commitlist, NULL, committop, getBBPlogno(), getBBPtransid()) != GDK_SUCCEED) + if (TMsubcommit_list(commitlist, NULL, committop, -1, -1) != GDK_SUCCEED) throw(MAL, "querylog.init", GDK_EXCEPTION); return MAL_SUCCEED; } @@ -344,7 +344,7 @@ QLOGempty(void *ret) BATclear(QLOG_calls_cpuload,true); BATclear(QLOG_calls_iowait,true); - if (TMsubcommit_list(commitlist, NULL, committop, getBBPlogno(), getBBPtransid()) != GDK_SUCCEED) + if (TMsubcommit_list(commitlist, NULL, committop, -1, -1) != GDK_SUCCEED) msg = createException(MAL, "querylog.empty", GDK_EXCEPTION); MT_lock_unset(&QLOGlock); return MAL_SUCCEED; @@ -384,7 +384,7 @@ QLOGappend(Client cntxt, MalBlkPtr mb, M throw(MAL, "querylog.append", SQLSTATE(HY013) MAL_MALLOC_FAIL); } } - if (TMsubcommit_list(commitlist, NULL, committop, getBBPlogno(), getBBPtransid()) != GDK_SUCCEED) + if (TMsubcommit_list(commitlist, NULL, committop, -1, -1) != GDK_SUCCEED) msg = createException(MAL, "querylog", GDK_EXCEPTION); MT_lock_unset(&QLOGlock); return msg; @@ -446,7 +446,7 @@ QLOGcall(Client cntxt, MalBlkPtr mb, Mal MT_lock_unset(&QLOGlock); throw(MAL, "querylog.call", SQLSTATE(HY013) MAL_MALLOC_FAIL); } - if (TMsubcommit_list(commitlist, NULL, committop, getBBPlogno(), getBBPtransid()) != GDK_SUCCEED) + if (TMsubcommit_list(commitlist, NULL, committop, -1, -1) != GDK_SUCCEED) msg = createException(MAL, "querylog", GDK_EXCEPTION); MT_lock_unset(&QLOGlock); return msg; diff --git a/sql/backends/monet5/sql_upgrades.c b/sql/backends/monet5/sql_upgrades.c --- a/sql/backends/monet5/sql_upgrades.c +++ b/sql/backends/monet5/sql_upgrades.c @@ -4666,7 +4666,7 @@ sql_update_sep2022(Client c, mvc *sql, s BBPrename(u, NULL) != 0 || BBPrename(p, NULL) != 0 || BBPrename(d, NULL) != 0 || - TMsubcommit_list(authbats, NULL, 4, getBBPlogno(), getBBPtransid()) != GDK_SUCCEED)) { + TMsubcommit_list(authbats, NULL, 4, -1, -1) != GDK_SUCCEED)) { fprintf(stderr, "Committing removal of old user/password BATs failed\n"); } BBPunfix(u->batCacheid); @@ -5738,7 +5738,7 @@ sql_update_jun2023(Client c, mvc *sql, s BBPrename(rt_uri, NULL) != 0 || BATmode(rt_deleted, true) != GDK_SUCCEED || BBPrename(rt_deleted, NULL) != 0 || - TMsubcommit_list(rtauthbats, NULL, 6, getBBPlogno(), getBBPtransid()) != GDK_SUCCEED) { + TMsubcommit_list(rtauthbats, NULL, 6, -1, -1) != GDK_SUCCEED) { fprintf(stderr, "Committing removal of old remote user/password BATs failed\n"); } BBPunfix(rt_key->batCacheid); _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org