diff options
author | Dwight <dwight@10gen.com> | 2010-08-17 18:23:40 -0400 |
---|---|---|
committer | Eliot Horowitz <eliot@10gen.com> | 2010-09-15 11:31:16 -0400 |
commit | 1bf1802939eb155508123fc63e88e06e92c6ad37 (patch) | |
tree | 6c4a04dd8a8cf3f5e271cb05cf70cb03702aa7db /db/repl/rs_rollback.cpp | |
parent | ed0310bb6fcb243398b09c99e9dfb44ada83a412 (diff) | |
download | mongo-1bf1802939eb155508123fc63e88e06e92c6ad37.tar.gz |
rs rollback better logging for errors 162
Diffstat (limited to 'db/repl/rs_rollback.cpp')
-rw-r--r-- | db/repl/rs_rollback.cpp | 32 |
1 files changed, 22 insertions, 10 deletions
diff --git a/db/repl/rs_rollback.cpp b/db/repl/rs_rollback.cpp index 5a85002948e..9fecd24116d 100644 --- a/db/repl/rs_rollback.cpp +++ b/db/repl/rs_rollback.cpp @@ -249,26 +249,32 @@ namespace mongo { refetch(h, ourObj); if( !t->more() ) { - log() << "replSet error during rollback reached beginning of remote oplog? [2]" << rsLog; - log() << "replSet them: " << them->toString() << " scanned: " << scanned << rsLog; - log() << "replSet theirTime: " << theirTime.toStringPretty() << rsLog; - log() << "replSet ourTime: " << ourTime.toStringPretty() << rsLog; + log() << "replSet rollback error RS100 reached beginning of remote oplog" << rsLog; + log() << "replSet them: " << them->toString() << " scanned: " << scanned << rsLog; + log() << "replSet theirTime: " << theirTime.toStringLong() << rsLog; + log() << "replSet ourTime: " << ourTime.toStringLong() << rsLog; throw "reached beginning of remote oplog [2]"; } theirObj = t->nextSafe(); theirTime = theirObj["ts"]._opTime(); u.advance(); - if( !u.ok() ) throw "reached beginning of local oplog"; + if( !u.ok() ) { + log() << "replSet rollback error RS101 reached beginning of local oplog" << rsLog; + log() << "replSet them: " << them->toString() << " scanned: " << scanned << rsLog; + log() << "replSet theirTime: " << theirTime.toStringLong() << rsLog; + log() << "replSet ourTime: " << ourTime.toStringLong() << rsLog; + throw "reached beginning of local oplog [1]"; + } ourObj = u.current(); ourTime = ourObj["ts"]._opTime(); } else if( theirTime > ourTime ) { if( !t->more() ) { - log() << "replSet error during rollback reached beginning of remote oplog?" << rsLog; - log() << "replSet them: " << them->toString() << " scanned: " << scanned << rsLog; - log() << "replSet theirTime: " << theirTime.toStringPretty() << rsLog; - log() << "replSet ourTime: " << ourTime.toStringPretty() << rsLog; + log() << "replSet rollback error RS100 reached beginning of remote oplog" << rsLog; + log() << "replSet them: " << them->toString() << " scanned: " << scanned << rsLog; + log() << "replSet theirTime: " << theirTime.toStringLong() << rsLog; + log() << "replSet ourTime: " << ourTime.toStringLong() << rsLog; throw "reached beginning of remote oplog [1]"; } theirObj = t->nextSafe(); @@ -278,7 +284,13 @@ namespace mongo { // theirTime < ourTime refetch(h, ourObj); u.advance(); - if( !u.ok() ) throw "reached beginning of local oplog"; + if( !u.ok() ) { + log() << "replSet rollback error RS101 reached beginning of local oplog" << rsLog; + log() << "replSet them: " << them->toString() << " scanned: " << scanned << rsLog; + log() << "replSet theirTime: " << theirTime.toStringLong() << rsLog; + log() << "replSet ourTime: " << ourTime.toStringLong() << rsLog; + throw "reached beginning of local oplog [2]"; + } ourObj = u.current(); ourTime = ourObj["ts"]._opTime(); } |