Changeset: cf83fb1d7cc2 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=cf83fb1d7cc2
Modified Files:
        gdk/gdk_logger.c
        sql/storage/bat/bat_logger.c
        sql/storage/store.c
Branch: transaction-replication
Log Message:

Fix issue with overwriting the shared logger directory in logger_reload
Use bat_logger_shared id and not bat_logger id to calculate the drift

While there add a few debug outputs


diffs (59 lines):

diff --git a/gdk/gdk_logger.c b/gdk/gdk_logger.c
--- a/gdk/gdk_logger.c
+++ b/gdk/gdk_logger.c
@@ -1493,6 +1493,9 @@ logger_new(int debug, char *fn, char *lo
                GDKfree(lg);
                return NULL;
        }
+       if (lg->debug & 1) {
+               fprintf(stderr, "#logger_new dir=%s\n", lg->dir);
+       }
        lg->prefuncp = prefuncp;
        lg->postfuncp = postfuncp;
        lg->log = NULL;
@@ -1517,9 +1520,9 @@ logger_reload(logger *lg)
 {
        char filename[BUFSIZ];
 
-       logger_set_logdir_path(filename, lg->fn, lg->dir);
+       snprintf(filename, BUFSIZ, "%s", lg->dir);
        if (lg->debug & 1) {
-                       fprintf(stderr, "#logger_reload %s\n", filename);
+               fprintf(stderr, "#logger_reload %s\n", filename);
        }
 
        return logger_load(lg->debug, lg->fn, filename, lg);
@@ -1719,7 +1722,7 @@ logger_read_last_transaction_id(logger *
                goto error;
        }
        if (lg->debug & 1) {
-               fprintf(stderr, "#logger_read_last_transaction_id opening file 
%s\n", filename);
+               fprintf(stderr, "#logger_read_last_transaction_id reading file 
%s\n", filename);
        }
        if (check_version(lg, fp)) {
                fprintf(stderr, "!ERROR: logger_read_last_transaction_id: 
inconsistent log version for file %s\n", filename);
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
@@ -348,7 +348,7 @@ bl_changes_shared(void)
 {
        int res = logger_read_last_transaction_id(bat_logger_shared);
        if (res != LOG_ERR) {
-               return (int) (MIN(res, GDK_int_max) - MIN(bat_logger->id, 
GDK_int_max));
+               return (int) (MIN(res, GDK_int_max) - 
MIN(bat_logger_shared->id, GDK_int_max));
        }
        return res;
 }
diff --git a/sql/storage/store.c b/sql/storage/store.c
--- a/sql/storage/store.c
+++ b/sql/storage/store.c
@@ -1611,6 +1611,9 @@ store_manager(void)
                        if (shared_transactions_drift == LOG_ERR) {
                                GDKfatal("shared write-ahead log loading 
failure");
                        }
+#ifdef STORE_DEBUG
+       fprintf(stderr, "#store_manager shared_transactions_drift=%d\n", 
shared_transactions_drift);
+#endif
                }
 
                MT_lock_set(&bs_lock, "store_manager");
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to