[
https://issues.apache.org/jira/browse/RATIS-614?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Lokesh Jain updated RATIS-614:
------------------------------
Description:
Currently Raft leader uses the StateMachineUpdater's lastAppliedIndex to
determine if leader is ready to take requests. It should rather use
StateMachine's lastAppliedTermIndex because it denotes the index till which the
transactions have already been completed whereas StateMachineUpdater's
lastAppliedIndex denotes the index till which the applyTransaction call has
been made to the StateMachine.
Currently the new leader might not have applied all the transactions of the old
term. Any reads served on the new leader can be stale.
was:Currently Raft leader uses the StateMachineUpdater's lastAppliedIndex to
determine if leader is ready to take requests. It should rather use
StateMachine's lastAppliedTermIndex because it denotes the index till which the
transactions have already been applied whereas StateMachineUpdater's
lastAppliedIndex denotes the index till which the applyTransaction call has
already been made.
> Raft leader should use state machine's last applied index for LeaderNotReady
> exception
> --------------------------------------------------------------------------------------
>
> Key: RATIS-614
> URL: https://issues.apache.org/jira/browse/RATIS-614
> Project: Ratis
> Issue Type: Bug
> Reporter: Lokesh Jain
> Assignee: Lokesh Jain
> Priority: Blocker
> Labels: ozone
> Attachments: RATIS-614.001.patch
>
>
> Currently Raft leader uses the StateMachineUpdater's lastAppliedIndex to
> determine if leader is ready to take requests. It should rather use
> StateMachine's lastAppliedTermIndex because it denotes the index till which
> the transactions have already been completed whereas StateMachineUpdater's
> lastAppliedIndex denotes the index till which the applyTransaction call has
> been made to the StateMachine.
> Currently the new leader might not have applied all the transactions of the
> old term. Any reads served on the new leader can be stale.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)