Denis Chudov created IGNITE-25653:
-------------------------------------

             Summary: Primary replica negotiation may fail on replica side due 
to raft server overload
                 Key: IGNITE-25653
                 URL: https://issues.apache.org/jira/browse/IGNITE-25653
             Project: Ignite
          Issue Type: Bug
            Reporter: Denis Chudov


*Problem:*

When receiving LeaseGrantRequest, replica always performs a couple of raft 
operations:
 * read index
 * running PrimaryReplicaChangeCommand
 * and in the case when force flag is true - transferLeadership.

Raft internal disruptors are shared between groups. So, if the raft internals 
on Ignite node where the group leader of the given replica is located are 
overloaded then the mentioned raft commands will fail and the replica would not 
be able to process LeaseGrantRequest. This may look surprising because in the 
absence of primary replica there cannot be any load on this group, but there 
would be exception about overload.

*Proposals:*
 * introduce SystemWriteCommand which is never rejected by raft client by 
overload reason;
 * or add separate method to RaftGroupService (like #primaryReplicaChange() ) 
which works in the same way (never rejected).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to