[ 
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)

Reply via email to