Changeset: c5941453f297 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/c5941453f297
Modified Files:
        .hgtags
        sql/storage/bat/bat_storage.c
        sql/storage/store.c
Branch: Sep2022
Log Message:

Merge with Jan2022 branch.


diffs (62 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -770,6 +770,7 @@ 1252291e5c0ddc91ccb16d612d04e34e6a7d3bc3
 59de1ee118d4eccc072c0cf3938f90635a7db311 Jan2022_15
 59de1ee118d4eccc072c0cf3938f90635a7db311 Jan2022_SP3_release
 38ba6e40ba9148c762fe4a4b40f4937f86e516b6 Jul2021_25
+38ba6e40ba9148c762fe4a4b40f4937f86e516b6 Jul2021_SP7_release
 470e524a786ee0e94c7901ec98d95ac351a0e472 Sep2022_root
 9785fa2a471fe32495e07479edf110335ddaa750 Jan2022_17
 26ffeb5af5240c807a6583fd6eb4ee2c9cd210d2 Jan2022_19
diff --git a/sql/storage/bat/bat_storage.c b/sql/storage/bat/bat_storage.c
--- a/sql/storage/bat/bat_storage.c
+++ b/sql/storage/bat/bat_storage.c
@@ -3800,7 +3800,6 @@ clear_storage(sql_trans *tr, sql_table *
 {
        if (clear_cs(tr, &s->cs, true, isTempTable(t)) == BUN_NONE)
                return LOG_ERR;
-       s->cs.cleared = 1;
        if (s->segs)
                destroy_segments(s->segs);
        if (!(s->segs = new_segments(tr, 0)))
diff --git a/sql/storage/store.c b/sql/storage/store.c
--- a/sql/storage/store.c
+++ b/sql/storage/store.c
@@ -2300,8 +2300,6 @@ store_manager(sqlstore *store)
        MT_lock_set(&store->flush);
 
        for (;;) {
-               int res = LOG_OK;
-
                if (ATOMIC_GET(&store->nr_active) == 0 &&
                        (store->debug&128 || ATOMIC_GET(&store->lastactive) + 
IDLE_TIME * 1000000 < (ATOMIC_BASE_TYPE) GDKusec())) {
                        MT_lock_unset(&store->flush);
@@ -2323,20 +2321,21 @@ store_manager(sqlstore *store)
                MT_sleep_ms(sleeptime);
                MT_lock_set(&store->commit);
                MT_lock_set(&store->flush);
+
+               if (GDKexiting()) {
+                       MT_lock_unset(&store->commit);
+                       break;
+               }
+
                if (store->logger_api.changes(store) <= 0) {
                        TRC_DEBUG(SQL_STORE, "Store flusher, no changes\n");
                        MT_lock_unset(&store->commit);
                        continue;
                }
                MT_lock_unset(&store->commit);
-               if (GDKexiting())
-                       break;
 
                MT_thread_setworking("flushing");
-               while (res == LOG_OK && store->logger_api.changes(store) > 0)
-                       res = store_apply_deltas(store);
-
-               if (res != LOG_OK) {
+               if (store_apply_deltas(store) != LOG_OK) {
                        MT_lock_unset(&store->flush);
                        if (!GDKexiting())
                                GDKfatal("write-ahead logging failure");
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to