[ 
https://issues.apache.org/jira/browse/RATIS-662?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lokesh Jain updated RATIS-662:
------------------------------
    Description: 
For any commit index c1 there is a corresponding metadata entry which is added 
to the log. This metadata entry signifies that c1 has been replicated by 
majority nodes in the quorum. 

Currently watch requests watch on the log entry itself. It should rather watch 
the metadata entry corresponding to the commit.

Let us take a majority commit c1 with servers s1(leader) and s2 in the 
majority. s1 and s2 were able to commit c1 in the log. Now s1 fails and s2 may 
not have received metadata entry for c1. In such a scenario if s2 restarts it 
will not be able to apply c1 on the state machine.

  was:
For any commit index c1 there is a corresponding metadata entry which is added 
to the log. This metadata entry signifies that c1 has been replicated by 
majority nodes in the quorum. 

Currently watch requests watch on the log entry itself. It should rather watch 
the metadata entry corresponding to the commit.

Let us take a majority commit c1 with servers s1(leader) and s2 in the 
majority. s1 and s2 were able to commit c1 in the log. Now s1 fails and s2 
never received metadata entry for c1. In such a scenario s2 will not be able to 
apply c1 on the state machine until a quorum is reached again. This can happen 
even if there are no failures in s2.


> Watch request should watch on metadata entry corresponding to a commit
> ----------------------------------------------------------------------
>
>                 Key: RATIS-662
>                 URL: https://issues.apache.org/jira/browse/RATIS-662
>             Project: Ratis
>          Issue Type: Bug
>            Reporter: Lokesh Jain
>            Assignee: Lokesh Jain
>            Priority: Major
>
> For any commit index c1 there is a corresponding metadata entry which is 
> added to the log. This metadata entry signifies that c1 has been replicated 
> by majority nodes in the quorum. 
> Currently watch requests watch on the log entry itself. It should rather 
> watch the metadata entry corresponding to the commit.
> Let us take a majority commit c1 with servers s1(leader) and s2 in the 
> majority. s1 and s2 were able to commit c1 in the log. Now s1 fails and s2 
> may not have received metadata entry for c1. In such a scenario if s2 
> restarts it will not be able to apply c1 on the state machine.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

Reply via email to