[ https://issues.apache.org/jira/browse/RATIS-2302?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
JiangHua Zhu updated RATIS-2302: -------------------------------- Description: In LogAppender#shouldInstallSnapshot(), there are some redundant checks. Code: {code:java} final long followerNextIndex = getFollower().getNextIndex(); if (followerNextIndex < getRaftLog().getNextIndex()) { final long logStartIndex = getRaftLog().getStartIndex(); if (followerNextIndex < logStartIndex || (logStartIndex == RaftLog.INVALID_LOG_INDEX && snapshot != null)) { return snapshot; } } {code} We can simplify them: {code:java} final long followerNextIndex = getFollower().getNextIndex(); final long logStartIndex = getRaftLog().getStartIndex(); if (followerNextIndex < logStartIndex || (logStartIndex == RaftLog.INVALID_LOG_INDEX && snapshot != null)) { return snapshot; } {code} It looks like the effect is the same. was: In LogAppender#shouldInstallSnapshot(), there are some redundant checks. Code: {code:java} final long followerNextIndex = getFollower().getNextIndex(); if (followerNextIndex < getRaftLog().getNextIndex()) { final long logStartIndex = getRaftLog().getStartIndex(); if (followerNextIndex < logStartIndex || (logStartIndex == RaftLog.INVALID_LOG_INDEX && snapshot != null)) { return snapshot; } } {code} We can simplify them: {code:java} final long followerNextIndex = getFollower().getNextIndex(); final long logStartIndex = getRaftLog().getStartIndex(); if (followerNextIndex < logStartIndex || (logStartIndex == RaftLog.INVALID_LOG_INDEX && snapshot != null)) { return snapshot; } {code} It looks like the effect is the same. > Simplify some judgments in LogAppender#shouldInstallSnapshot() > -------------------------------------------------------------- > > Key: RATIS-2302 > URL: https://issues.apache.org/jira/browse/RATIS-2302 > Project: Ratis > Issue Type: Improvement > Components: server > Affects Versions: 3.1.1, 3.1.2 > Reporter: JiangHua Zhu > Assignee: JiangHua Zhu > Priority: Minor > > In LogAppender#shouldInstallSnapshot(), there are some redundant checks. > Code: > {code:java} > final long followerNextIndex = getFollower().getNextIndex(); > if (followerNextIndex < getRaftLog().getNextIndex()) { > final long logStartIndex = getRaftLog().getStartIndex(); > if (followerNextIndex < logStartIndex || (logStartIndex == > RaftLog.INVALID_LOG_INDEX && snapshot != null)) { > return snapshot; > } > } > {code} > We can simplify them: > {code:java} > final long followerNextIndex = getFollower().getNextIndex(); > final long logStartIndex = getRaftLog().getStartIndex(); > if (followerNextIndex < logStartIndex || (logStartIndex == > RaftLog.INVALID_LOG_INDEX && snapshot != null)) { > return snapshot; > } > {code} > It looks like the effect is the same. -- This message was sent by Atlassian Jira (v8.20.10#820010)