-
Notifications
You must be signed in to change notification settings - Fork 9.8k
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
The key is not deleted when the bound lease expires #10686
Comments
I have injected a failpoint when got the expired lease, likes:
and you can try this script to reproduce it.
and the result is:
|
As a new comer of etcd, I can't guarantee that my opinion is completely correct. Lessor pop expired lease from leaseHeap and send to expiredC. lessor pop and send to expiredC
Maybe, sender of expiredC should record leases that have expired but are being revoke. |
@j2gg0s Yes, I think there is no guarantee. |
Just to confirm, this issue exists on master only? Not 3.3 and earlier since the heap was introduced after they were released? |
Appears to me that this issue exists in master branch only. Ref: the benchmark result with and without the heap: #9418 (comment) |
Yes, we use the master. |
Hi @nolouch , thanks a lot for the detailed testing and fix in #10693 ! Just curious: did you find the problem in long living cluster which caused connection failures or leader elections? I'm guessing the essential root cause would be that the management of lease lifetime depends on physical clock progress of a leader node and some states like It might be a good example of jepsen test planned in etcd-io/maintainers#3 but not fully sure. |
@mitake The problem may be the network problem if propose the |
ETCD Version: master
We occasionally encounter the same problem as #9935.
As the origin issue says:
If failed to revoke the lease,
etcd
will still keep this lease inleaseMap
and no will try to delete it later. Like this:and the main problem may be the
leaseQueue
pop the expired lease and then fail to revoke the expired lease, so we will no longer to find this lease in the queue and retry to revoke it later.cc @gyuho @xiang90 @jingyih
The text was updated successfully, but these errors were encountered: