Skip to content

2.25.2.0-b134

@spolitov spolitov tagged this 11 Mar 04:26
Summary:
We could get into situation when leader changed twice in a short period of time.
Consider there are 3 leaders in chronological order - L1, L2, L3.
L1 could have leader lease, before L2 became leader.
And there are scenarios when L2 did not revoke L1's lease before L3 became the leader.
Since we keep only a single old leader lease, L3 could decide that old leader does not have lease when L2 lease was revoked.

Fixed by keeping multiple old leader leases and revoking them individually.

**Upgrade/Rollback safety:** Optional fields were replaced with repeated fields. The old software versions will see only the latest element on those fields.
So we put most advanced lease to the last position.
Jira: DB-8238

Test Plan: QLTabletTest.LeaderLeaseRevocation

Reviewers: hsunder, patnaik.balivada

Reviewed By: hsunder, patnaik.balivada

Subscribers: ybase

Tags: #jenkins-ready

Differential Revision: https://phorge.dev.yugabyte.com/D42229
Assets 2
Loading