Changeset: 20f6dcf576ae for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/20f6dcf576ae
Modified Files:
sql/storage/bat/bat_logger.c
sql/storage/store.c
Branch: Jun2020-mmt
Log Message:
Merged with Jun2020
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
@@ -2410,7 +2410,9 @@ logger_destroy(logger *lg)
BUN p, q;
BAT *b = lg->catalog_bid;
- if (logger_cleanup(lg) != GDK_SUCCEED)
+ if (lg->changes &&
+ (logger_restart(lg, lg->tid) != GDK_SUCCEED ||
+ logger_cleanup(lg) != GDK_SUCCEED))
TRC_CRITICAL(GDK, "logger_cleanup failed\n");
/* free resources */
diff --git a/sql/storage/bat/bat_logger.c b/sql/storage/bat/bat_logger.c
--- a/sql/storage/bat/bat_logger.c
+++ b/sql/storage/bat/bat_logger.c
@@ -906,15 +906,9 @@ bl_destroy(void)
{
logger *l = bat_logger;
+ logger_destroy(l);
+
bat_logger = NULL;
- if (l) {
- close_stream(l->log);
- GDKfree(l->fn);
- GDKfree(l->dir);
- GDKfree(l->local_dir);
- GDKfree(l->buf);
- GDKfree(l);
- }
}
static int
diff --git a/sql/storage/store.c b/sql/storage/store.c
--- a/sql/storage/store.c
+++ b/sql/storage/store.c
@@ -2304,6 +2304,7 @@ flusher_should_run(void)
void
store_exit(void)
{
+ int debug = store_debug&128;
MT_lock_set(&bs_lock);
TRC_DEBUG(SQL_STORE, "Store locked\n");
@@ -2314,6 +2315,11 @@ store_exit(void)
MT_sleep_ms(100);
MT_lock_set(&bs_lock);
}
+ while (debug && ATOMIC_GET(&store_nr_active)) { /* wait for all to
finish */
+ MT_lock_unset(&bs_lock);
+ MT_sleep_ms(100);
+ MT_lock_set(&bs_lock);
+ }
if (gtrans) {
MT_lock_unset(&bs_lock);
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list