LiuGuH commented on PR #7066: URL: https://github.com/apache/hadoop/pull/7066#issuecomment-2408455733
Thanks for relay. For a editlog file (starttxid-endtxid), RedundantEditLogInputStream combine journalnodes EditlogInputSteam. When standby namenode replay editlog, RedundantEditLogInputStream.nextOp() will execute. Assuse read from txid (starttxid < txid < endtxid). Now State.SKIP_UNTIL (from starttxid skip to txid) -> State.OK (and will read txid+1). And if SKIP_UNTIL throw IOException, it will into State.OK rather than State.STREAM_FAILED with current logic. (1)If the stream returns to normal , read next op may read a op in (starttxid,txid), FSEditLogLoader will log that "There appears to be an out-of-order edit in the edit log" and discard this op and continue. (2)If If the stream is still wrong, State.OK will be into State.STREAM_FAILED and the swith to another EditlogInputSteam. And this PR will make State.SKIP_UNTIL (from starttxid skip to txid) -> State.STREAM_FAILED directly if SKIP_UNTIL throw IOException.  -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
