Generate complete leader election record to resolve leader election issues with LeaseLocks

Kubernetes-commit: c902b8a20578a1d299e3563613a66ed32f70efad
This commit is contained in:
Zachary Seguin 2019-08-03 17:40:03 -04:00 committed by Kubernetes Publisher
parent d1a4fe5f2d
commit 710705cfe6

View File

@ -290,8 +290,12 @@ func (le *LeaderElector) release() bool {
if !le.IsLeader() { if !le.IsLeader() {
return true return true
} }
now := metav1.Now()
leaderElectionRecord := rl.LeaderElectionRecord{ leaderElectionRecord := rl.LeaderElectionRecord{
LeaderTransitions: le.observedRecord.LeaderTransitions, LeaderTransitions: le.observedRecord.LeaderTransitions,
LeaseDurationSeconds: 1,
RenewTime: now,
AcquireTime: now,
} }
if err := le.config.Lock.Update(context.TODO(), leaderElectionRecord); err != nil { if err := le.config.Lock.Update(context.TODO(), leaderElectionRecord); err != nil {
klog.Errorf("Failed to release lock: %v", err) klog.Errorf("Failed to release lock: %v", err)