Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[3.4] Support linearizable renew lease for 3.4 #14177

Merged
merged 1 commit into from Jul 19, 2022

Conversation

ahrtr
Copy link
Member

@ahrtr ahrtr commented Jun 29, 2022

Cherry pick 13932 to 3.4.

Part of 14105

When etcdserver receives a LeaseRenew request, it may be still in
progress of processing the LeaseGrantRequest on exact the same
leaseID. Accordingly it may return a TTL=0 to client due to the
leaseID not found error. So the leader should wait for the appliedID
to be available before processing client requests.

Signed-off-by: Benjamin Wang wachao@vmware.com

Please read https://github.com/etcd-io/etcd/blob/main/CONTRIBUTING.md#contribution-flow.

@lavacat
Copy link

lavacat commented Jun 29, 2022

LGTM, the only diff seams to be

  1. No func (c *ClusterV3) ClusterClient() in tests/intergration/cluster.go
  2. No TestV3LeaseTimeToLiveStressWithClusterClient (as a result of 1)

everything else is the same

@lavacat
Copy link

lavacat commented Jun 29, 2022

the test TestV3CurlAuthClientTLSCertAuth also failed here recently. Another flake?

@ahrtr
Copy link
Member Author

ahrtr commented Jun 29, 2022

the test TestV3CurlAuthClientTLSCertAuth also failed here recently. Another flake?

Yes, let me take care of this one.

@ahrtr ahrtr force-pushed the 3.4_lease_renew_linearizable branch from bd9e9dd to c84ef43 Compare June 30, 2022 21:43
@ahrtr
Copy link
Member Author

ahrtr commented Jun 30, 2022

cc @serathius @spzala @ptabor PTL, thx.

@ahrtr
Copy link
Member Author

ahrtr commented Jul 3, 2022

I decided not to cherry pick this PR. We should only backport security fix and major/critical bug fixes.

@ahrtr ahrtr closed this Jul 3, 2022
Cherry pick etcd-io#13932 to 3.4.

When etcdserver receives a LeaseRenew request, it may be still in
progress of processing the LeaseGrantRequest on exact the same
leaseID. Accordingly it may return a TTL=0 to client due to the
leaseID not found error. So the leader should wait for the appliedID
to be available before processing client requests.

Signed-off-by: Benjamin Wang <wachao@vmware.com>
@ahrtr ahrtr reopened this Jul 19, 2022
@ahrtr ahrtr force-pushed the 3.4_lease_renew_linearizable branch from c84ef43 to 07d2b1d Compare July 19, 2022 05:35
@ahrtr
Copy link
Member Author

ahrtr commented Jul 19, 2022

Moved this PR from 3.4.19 to 3.4.20.

Part of #14232

@ahrtr
Copy link
Member Author

ahrtr commented Jul 19, 2022

@serathius @ptabor @spzala PTAL, thx.

@ahrtr ahrtr mentioned this pull request Jul 19, 2022
25 tasks
@ahrtr ahrtr merged commit d58a0c0 into etcd-io:release-3.4 Jul 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants