Merge pull request #116408 from ChenLingPeng/fit
skip pod resource check when request is zero
This commit is contained in:
		@@ -307,7 +307,7 @@ func fitsRequest(podRequest *preFilterState, nodeInfo *framework.NodeInfo, ignor
 | 
				
			|||||||
		return insufficientResources
 | 
							return insufficientResources
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if podRequest.MilliCPU > (nodeInfo.Allocatable.MilliCPU - nodeInfo.Requested.MilliCPU) {
 | 
						if podRequest.MilliCPU > 0 && podRequest.MilliCPU > (nodeInfo.Allocatable.MilliCPU-nodeInfo.Requested.MilliCPU) {
 | 
				
			||||||
		insufficientResources = append(insufficientResources, InsufficientResource{
 | 
							insufficientResources = append(insufficientResources, InsufficientResource{
 | 
				
			||||||
			ResourceName: v1.ResourceCPU,
 | 
								ResourceName: v1.ResourceCPU,
 | 
				
			||||||
			Reason:       "Insufficient cpu",
 | 
								Reason:       "Insufficient cpu",
 | 
				
			||||||
@@ -316,7 +316,7 @@ func fitsRequest(podRequest *preFilterState, nodeInfo *framework.NodeInfo, ignor
 | 
				
			|||||||
			Capacity:     nodeInfo.Allocatable.MilliCPU,
 | 
								Capacity:     nodeInfo.Allocatable.MilliCPU,
 | 
				
			||||||
		})
 | 
							})
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if podRequest.Memory > (nodeInfo.Allocatable.Memory - nodeInfo.Requested.Memory) {
 | 
						if podRequest.Memory > 0 && podRequest.Memory > (nodeInfo.Allocatable.Memory-nodeInfo.Requested.Memory) {
 | 
				
			||||||
		insufficientResources = append(insufficientResources, InsufficientResource{
 | 
							insufficientResources = append(insufficientResources, InsufficientResource{
 | 
				
			||||||
			ResourceName: v1.ResourceMemory,
 | 
								ResourceName: v1.ResourceMemory,
 | 
				
			||||||
			Reason:       "Insufficient memory",
 | 
								Reason:       "Insufficient memory",
 | 
				
			||||||
@@ -325,7 +325,8 @@ func fitsRequest(podRequest *preFilterState, nodeInfo *framework.NodeInfo, ignor
 | 
				
			|||||||
			Capacity:     nodeInfo.Allocatable.Memory,
 | 
								Capacity:     nodeInfo.Allocatable.Memory,
 | 
				
			||||||
		})
 | 
							})
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if podRequest.EphemeralStorage > (nodeInfo.Allocatable.EphemeralStorage - nodeInfo.Requested.EphemeralStorage) {
 | 
						if podRequest.EphemeralStorage > 0 &&
 | 
				
			||||||
 | 
							podRequest.EphemeralStorage > (nodeInfo.Allocatable.EphemeralStorage-nodeInfo.Requested.EphemeralStorage) {
 | 
				
			||||||
		insufficientResources = append(insufficientResources, InsufficientResource{
 | 
							insufficientResources = append(insufficientResources, InsufficientResource{
 | 
				
			||||||
			ResourceName: v1.ResourceEphemeralStorage,
 | 
								ResourceName: v1.ResourceEphemeralStorage,
 | 
				
			||||||
			Reason:       "Insufficient ephemeral-storage",
 | 
								Reason:       "Insufficient ephemeral-storage",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -473,6 +473,17 @@ func TestEnoughRequests(t *testing.T) {
 | 
				
			|||||||
			name:                      "skip checking extended resource request with quantity zero via resource groups",
 | 
								name:                      "skip checking extended resource request with quantity zero via resource groups",
 | 
				
			||||||
			wantInsufficientResources: []InsufficientResource{},
 | 
								wantInsufficientResources: []InsufficientResource{},
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								pod: newResourcePod(
 | 
				
			||||||
 | 
									framework.Resource{
 | 
				
			||||||
 | 
										ScalarResources: map[v1.ResourceName]int64{
 | 
				
			||||||
 | 
											extendedResourceA: 1,
 | 
				
			||||||
 | 
										}}),
 | 
				
			||||||
 | 
								nodeInfo: framework.NewNodeInfo(newResourcePod(framework.Resource{
 | 
				
			||||||
 | 
									MilliCPU: 20, Memory: 30, ScalarResources: map[v1.ResourceName]int64{extendedResourceA: 1}})),
 | 
				
			||||||
 | 
								name:                      "skip checking resource request with quantity zero",
 | 
				
			||||||
 | 
								wantInsufficientResources: []InsufficientResource{},
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for _, test := range enoughPodsTests {
 | 
						for _, test := range enoughPodsTests {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user