Commit ab35df57 authored by Kubernetes Submit Queue's avatar Kubernetes Submit Queue Committed by GitHub

Merge pull request #49420 from gnufied/fix-adc-controller-nil-spec

Automatic merge from submit-queue (batch tested with PRs 49420, 49296, 49299, 49371, 46514) Fix controller crash because of nil volume spec For volumes that don't support bulk volume verification, a nil volume spec can cause crash of controller. Fixes #49418 **Release note**: ```release-note Fixes #49418 where kube-controller-manager can panic on volume.CanSupport methods and enter a crash loop. ```
parents 5d5d6ca3 0b1d61db
...@@ -115,6 +115,10 @@ func (og *operationGenerator) GenerateVolumesAreAttachedFunc( ...@@ -115,6 +115,10 @@ func (og *operationGenerator) GenerateVolumesAreAttachedFunc(
volumeSpecMap := make(map[*volume.Spec]v1.UniqueVolumeName) volumeSpecMap := make(map[*volume.Spec]v1.UniqueVolumeName)
// Iterate each volume spec and put them into a map index by the pluginName // Iterate each volume spec and put them into a map index by the pluginName
for _, volumeAttached := range attachedVolumes { for _, volumeAttached := range attachedVolumes {
if volumeAttached.VolumeSpec == nil {
glog.Errorf("VerifyVolumesAreAttached.GenerateVolumesAreAttachedFunc: nil spec for volume %s", volumeAttached.VolumeName)
continue
}
volumePlugin, err := volumePlugin, err :=
og.volumePluginMgr.FindPluginBySpec(volumeAttached.VolumeSpec) og.volumePluginMgr.FindPluginBySpec(volumeAttached.VolumeSpec)
if err != nil || volumePlugin == nil { if err != nil || volumePlugin == nil {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment