Merge pull request #124588 from jiuker/patch-2

fix: Hang when canceling leader election information

Kubernetes-commit: 7a6931b31cf04d2a91ce8c0af09ad0f474927436
This commit is contained in:
Kubernetes Publisher 2024-05-08 19:30:36 -07:00
commit 62f959700d

View File

@ -304,7 +304,9 @@ func (le *LeaderElector) release() bool {
RenewTime: now,
AcquireTime: now,
}
if err := le.config.Lock.Update(context.TODO(), leaderElectionRecord); err != nil {
timeoutCtx, timeoutCancel := context.WithTimeout(context.Background(), le.config.RenewDeadline)
defer timeoutCancel()
if err := le.config.Lock.Update(timeoutCtx, leaderElectionRecord); err != nil {
klog.Errorf("Failed to release lock: %v", err)
return false
}