Copilot commented on code in PR #7176:
URL: https://github.com/apache/hbase/pull/7176#discussion_r2241306835
##########
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/ProtobufLogReader.java:
##########
@@ -369,11 +369,13 @@ protected boolean readNext(Entry entry) throws
IOException {
try {
walKey = ProtobufUtil.parseDelimitedFrom(inputStream, WALKey.parser());
} catch (InvalidProtocolBufferException e) {
- if (ProtobufUtil.isEOF(e) || isWALTrailer(originalPosition)) {
+ if (ProtobufUtil.isEOF(e)) {
// only rethrow EOF if it indicates an EOF, or we have reached the
partial WALTrailer
resetPosition = true;
throw (EOFException) new EOFException("Invalid PB, EOF? Ignoring;
originalPosition="
+ originalPosition + ", currentPosition=" +
this.inputStream.getPos()).initCause(e);
Review Comment:
The change in logic flow could benefit from a comment explaining why WAL
trailer detection now returns false instead of throwing an EOFException. This
would help future maintainers understand the reasoning behind this behavioral
change.
```suggestion
+ originalPosition + ", currentPosition=" +
this.inputStream.getPos()).initCause(e);
// If the current position matches the WAL trailer, return false to
indicate the end of the WAL edits.
// This avoids throwing an EOFException, as reaching the WAL trailer
is a normal condition and not an error.
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]