krb5 commit [krb5-1.11]: Reset ulog if database load failed
Tom Yu
tlyu at MIT.EDU
Tue Apr 9 23:36:49 EDT 2013
https://github.com/krb5/krb5/commit/74b3f961e15d2eee5bad93d2a224c10834bbaab8
commit 74b3f961e15d2eee5bad93d2a224c10834bbaab8
Author: rbasch <probe at tardis.internal.bright-prospects.com>
Date: Sun Mar 3 22:55:41 2013 -0500
Reset ulog if database load failed
If an iprop slave tries to load a dump from the master and it fails,
reset the ulog header so we take another full dump, instead of
reporting that the slave is current when it isn't.
[ghudson at mit.edu: commit message]
ticket: 7530
version_fixed: 1.11.2
status: resolved
src/kadmin/dbutil/dump.c | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/src/kadmin/dbutil/dump.c b/src/kadmin/dbutil/dump.c
index e925b0a..67ec9b4 100644
--- a/src/kadmin/dbutil/dump.c
+++ b/src/kadmin/dbutil/dump.c
@@ -2973,6 +2973,20 @@ error:
*/
if (!(flags & FLAG_UPDATE)) {
if (exit_status) {
+
+ /* Re-init ulog so we don't accidentally think we are current */
+ if (log_ctx && log_ctx->iproprole) {
+ log_ctx->ulog->kdb_last_sno = 0;
+ log_ctx->ulog->kdb_last_time.seconds = 0;
+ log_ctx->ulog->kdb_last_time.useconds = 0;
+
+ log_ctx->ulog->kdb_first_sno = 0;
+ log_ctx->ulog->kdb_first_time.seconds = 0;
+ log_ctx->ulog->kdb_first_time.useconds = 0;
+
+ ulog_sync_header(log_ctx->ulog);
+ }
+
kret = krb5_db_destroy(kcontext, db5util_db_args);
/*
* Ignore a not supported error since there is nothing to do about
More information about the cvs-krb5
mailing list