Skip to content

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
HBASE-25556 Frequent replication "Encountered a malformed edit" warni…
Browse files Browse the repository at this point in the history
…ngs (apache#2965)

ProtobufLogReader#readNext may be called by code that attempts to advance
the reader but does not necessarily expect to succeed, for example
WALEntryStream#tryAdvanceEntry. Much of the logging in this method is
at TRACE level. Other logging at WARN level will be frequently emitted, as
often as several per minute, and this will cause false positive assessment
from operators that they are experiencing a bug. Fix the mixed intent with
respect to log levels in readNext. Log at only DEBUG level or below.

Signed-off-by: Sean Busbey <busbey@apache.org>
apurtell authored and wchevreuil committed Feb 24, 2021
1 parent 91579ed commit a9b644d
Showing 1 changed file with 3 additions and 3 deletions.
Original file line number Diff line number Diff line change
@@ -408,14 +408,14 @@ protected boolean readNext(Entry entry) throws IOException {
} catch (EOFException eof) {
// If originalPosition is < 0, it is rubbish and we cannot use it (probably local fs)
if (originalPosition < 0) {
LOG.warn("Encountered a malformed edit, but can't seek back to last good position "
LOG.debug("Encountered a malformed edit, but can't seek back to last good position "
+ "because originalPosition is negative. last offset={}", this.inputStream.getPos(), eof);
throw eof;
}
// If stuck at the same place and we got an exception, lets go back at the beginning.
if (inputStream.getPos() == originalPosition) {
if (resetPosition) {
LOG.warn("Encountered a malformed edit, seeking to the beginning of the WAL since "
LOG.debug("Encountered a malformed edit, seeking to the beginning of the WAL since "
+ "current position and original position match at {}", originalPosition);
seekOnFs(0);
} else {
@@ -424,7 +424,7 @@ protected boolean readNext(Entry entry) throws IOException {
} else {
// Else restore our position to original location in hope that next time through we will
// read successfully.
LOG.warn("Encountered a malformed edit, seeking back to last good position in file, "
LOG.debug("Encountered a malformed edit, seeking back to last good position in file, "
+ "from {} to {}", inputStream.getPos(), originalPosition, eof);
seekOnFs(originalPosition);
}

0 comments on commit a9b644d

Please sign in to comment.