diff --git a/pkg/kubelet/volumemanager/volume_manager.go b/pkg/kubelet/volumemanager/volume_manager.go index a71c05412f5..d48266f52a3 100644 --- a/pkg/kubelet/volumemanager/volume_manager.go +++ b/pkg/kubelet/volumemanager/volume_manager.go @@ -18,6 +18,7 @@ package volumemanager import ( "fmt" + "sort" "strconv" "time" @@ -286,15 +287,8 @@ func (vm *volumeManager) GetVolumesInUse() []v1.UniqueVolumeName { // volume *should* be attached to this node until it is safely unmounted. desiredVolumes := vm.desiredStateOfWorld.GetVolumesToMount() mountedVolumes := vm.actualStateOfWorld.GetGloballyMountedVolumes() - volumesToReportInUse := - make( - []v1.UniqueVolumeName, - 0, /* len */ - len(desiredVolumes)+len(mountedVolumes) /* cap */) - desiredVolumesMap := - make( - map[v1.UniqueVolumeName]bool, - len(desiredVolumes)+len(mountedVolumes) /* cap */) + volumesToReportInUse := make([]v1.UniqueVolumeName, 0, len(desiredVolumes)+len(mountedVolumes)) + desiredVolumesMap := make(map[v1.UniqueVolumeName]bool, len(desiredVolumes)+len(mountedVolumes)) for _, volume := range desiredVolumes { if volume.PluginIsAttachable { @@ -313,6 +307,9 @@ func (vm *volumeManager) GetVolumesInUse() []v1.UniqueVolumeName { } } + sort.Slice(volumesToReportInUse, func(i, j int) bool { + return string(volumesToReportInUse[i]) < string(volumesToReportInUse[j]) + }) return volumesToReportInUse }