From f2e7211ab8f49868534908527e74627ecf198f1e Mon Sep 17 00:00:00 2001 From: weizhichen Date: Tue, 23 Aug 2022 23:36:09 +0000 Subject: [PATCH 1/2] delete stale code in kubelet volumemanager --- .../desired_state_of_world_populator.go | 55 +++++++------------ .../desired_state_of_world_populator_test.go | 1 - pkg/kubelet/volumemanager/volume_manager.go | 7 --- 3 files changed, 20 insertions(+), 43 deletions(-) diff --git a/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator.go b/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator.go index 7b0c7536356..76d42302c43 100644 --- a/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator.go +++ b/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator.go @@ -90,7 +90,6 @@ type podStateProvider interface { func NewDesiredStateOfWorldPopulator( kubeClient clientset.Interface, loopSleepDuration time.Duration, - getPodStatusRetryDuration time.Duration, podManager pod.Manager, podStateProvider podStateProvider, desiredStateOfWorld cache.DesiredStateOfWorld, @@ -101,13 +100,12 @@ func NewDesiredStateOfWorldPopulator( intreeToCSITranslator csimigration.InTreeToCSITranslator, volumePluginMgr *volume.VolumePluginMgr) DesiredStateOfWorldPopulator { return &desiredStateOfWorldPopulator{ - kubeClient: kubeClient, - loopSleepDuration: loopSleepDuration, - getPodStatusRetryDuration: getPodStatusRetryDuration, - podManager: podManager, - podStateProvider: podStateProvider, - desiredStateOfWorld: desiredStateOfWorld, - actualStateOfWorld: actualStateOfWorld, + kubeClient: kubeClient, + loopSleepDuration: loopSleepDuration, + podManager: podManager, + podStateProvider: podStateProvider, + desiredStateOfWorld: desiredStateOfWorld, + actualStateOfWorld: actualStateOfWorld, pods: processedPods{ processedPods: make(map[volumetypes.UniquePodName]bool)}, kubeContainerRuntime: kubeContainerRuntime, @@ -121,22 +119,20 @@ func NewDesiredStateOfWorldPopulator( } type desiredStateOfWorldPopulator struct { - kubeClient clientset.Interface - loopSleepDuration time.Duration - getPodStatusRetryDuration time.Duration - podManager pod.Manager - podStateProvider podStateProvider - desiredStateOfWorld cache.DesiredStateOfWorld - actualStateOfWorld cache.ActualStateOfWorld - pods processedPods - kubeContainerRuntime kubecontainer.Runtime - timeOfLastGetPodStatus time.Time - keepTerminatedPodVolumes bool - hasAddedPods bool - hasAddedPodsLock sync.RWMutex - csiMigratedPluginManager csimigration.PluginManager - intreeToCSITranslator csimigration.InTreeToCSITranslator - volumePluginMgr *volume.VolumePluginMgr + kubeClient clientset.Interface + loopSleepDuration time.Duration + podManager pod.Manager + podStateProvider podStateProvider + desiredStateOfWorld cache.DesiredStateOfWorld + actualStateOfWorld cache.ActualStateOfWorld + pods processedPods + kubeContainerRuntime kubecontainer.Runtime + keepTerminatedPodVolumes bool + hasAddedPods bool + hasAddedPodsLock sync.RWMutex + csiMigratedPluginManager csimigration.PluginManager + intreeToCSITranslator csimigration.InTreeToCSITranslator + volumePluginMgr *volume.VolumePluginMgr } type processedPods struct { @@ -171,17 +167,6 @@ func (dswp *desiredStateOfWorldPopulator) HasAddedPods() bool { func (dswp *desiredStateOfWorldPopulator) populatorLoop() { dswp.findAndAddNewPods() - - // findAndRemoveDeletedPods() calls out to the container runtime to - // determine if the containers for a given pod are terminated. This is - // an expensive operation, therefore we limit the rate that - // findAndRemoveDeletedPods() is called independently of the main - // populator loop. - if time.Since(dswp.timeOfLastGetPodStatus) < dswp.getPodStatusRetryDuration { - klog.V(5).InfoS("Skipping findAndRemoveDeletedPods(). ", "nextRetryTime", dswp.timeOfLastGetPodStatus.Add(dswp.getPodStatusRetryDuration), "retryDuration", dswp.getPodStatusRetryDuration) - return - } - dswp.findAndRemoveDeletedPods() } diff --git a/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator_test.go b/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator_test.go index aec172bf994..75ef45140e9 100644 --- a/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator_test.go +++ b/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator_test.go @@ -1509,7 +1509,6 @@ func createDswpWithVolumeWithCustomPluginMgr(t *testing.T, pv *v1.PersistentVolu dswp := &desiredStateOfWorldPopulator{ kubeClient: fakeClient, loopSleepDuration: 100 * time.Millisecond, - getPodStatusRetryDuration: 2 * time.Second, podManager: fakePodManager, podStateProvider: fakeStateProvider, desiredStateOfWorld: fakesDSW, diff --git a/pkg/kubelet/volumemanager/volume_manager.go b/pkg/kubelet/volumemanager/volume_manager.go index ee58b2fcaa7..02d6df29a9e 100644 --- a/pkg/kubelet/volumemanager/volume_manager.go +++ b/pkg/kubelet/volumemanager/volume_manager.go @@ -61,12 +61,6 @@ const ( // DesiredStateOfWorldPopulator loop waits between successive executions desiredStateOfWorldPopulatorLoopSleepPeriod = 100 * time.Millisecond - // desiredStateOfWorldPopulatorGetPodStatusRetryDuration is the amount of - // time the DesiredStateOfWorldPopulator loop waits between successive pod - // cleanup calls (to prevent calling containerruntime.GetPodStatus too - // frequently). - desiredStateOfWorldPopulatorGetPodStatusRetryDuration = 2 * time.Second - // podAttachAndMountTimeout is the maximum amount of time the // WaitForAttachAndMount call will wait for all volumes in the specified pod // to be attached and mounted. Even though cloud operations can take several @@ -207,7 +201,6 @@ func NewVolumeManager( vm.desiredStateOfWorldPopulator = populator.NewDesiredStateOfWorldPopulator( kubeClient, desiredStateOfWorldPopulatorLoopSleepPeriod, - desiredStateOfWorldPopulatorGetPodStatusRetryDuration, podManager, podStateProvider, vm.desiredStateOfWorld, From 5d514601a89873a33053bb9a30c5fbb36af9e8ba Mon Sep 17 00:00:00 2001 From: weizhichen Date: Thu, 13 Oct 2022 01:47:08 +0000 Subject: [PATCH 2/2] gofmt --- .../desired_state_of_world_populator_test.go | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator_test.go b/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator_test.go index 75ef45140e9..61334474c69 100644 --- a/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator_test.go +++ b/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator_test.go @@ -1507,12 +1507,12 @@ func createDswpWithVolumeWithCustomPluginMgr(t *testing.T, pv *v1.PersistentVolu csiTranslator := csitrans.New() dswp := &desiredStateOfWorldPopulator{ - kubeClient: fakeClient, - loopSleepDuration: 100 * time.Millisecond, - podManager: fakePodManager, - podStateProvider: fakeStateProvider, - desiredStateOfWorld: fakesDSW, - actualStateOfWorld: fakeASW, + kubeClient: fakeClient, + loopSleepDuration: 100 * time.Millisecond, + podManager: fakePodManager, + podStateProvider: fakeStateProvider, + desiredStateOfWorld: fakesDSW, + actualStateOfWorld: fakeASW, pods: processedPods{ processedPods: make(map[types.UniquePodName]bool)}, kubeContainerRuntime: fakeRuntime,