From b77abe56a2c8ebfc5930f7ad651ac6ca791f8263 Mon Sep 17 00:00:00 2001 From: Sami Wagiaalla Date: Wed, 16 Mar 2016 17:00:05 -0400 Subject: [PATCH] Check claimRef UID when processing a recycled PV --- .../persistentvolume_claim_binder_controller.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/controller/persistentvolume/persistentvolume_claim_binder_controller.go b/pkg/controller/persistentvolume/persistentvolume_claim_binder_controller.go index 3acda3a8a9a..4d963b22107 100644 --- a/pkg/controller/persistentvolume/persistentvolume_claim_binder_controller.go +++ b/pkg/controller/persistentvolume/persistentvolume_claim_binder_controller.go @@ -238,7 +238,7 @@ func syncVolume(volumeIndex *persistentVolumeOrderedIndex, binderClient binderCl if volume.Spec.ClaimRef != nil { claim, err := binderClient.GetPersistentVolumeClaim(volume.Spec.ClaimRef.Namespace, volume.Spec.ClaimRef.Name) - if errors.IsNotFound(err) { + if errors.IsNotFound(err) || (claim != nil && claim.UID != volume.Spec.ClaimRef.UID) { if volume.Spec.PersistentVolumeReclaimPolicy == api.PersistentVolumeReclaimRecycle { // Pending volumes that have a ClaimRef where the claim is missing were recently recycled. // The Recycler set the phase to VolumePending to start the volume at the beginning of this lifecycle.