Skip to content

Commit c7d2703

Browse files
authored
Merge pull request kubernetes#121059 from matte21/improve_err_message_in_cpu_assignments
Improve error message in Kubelet CPU assignment logic
2 parents 0de29e1 + d4a5a08 commit c7d2703

File tree

3 files changed

+8
-8
lines changed

3 files changed

+8
-8
lines changed

pkg/kubelet/cm/cpumanager/cpu_assignment.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -453,7 +453,7 @@ func takeByTopologyNUMAPacked(topo *topology.CPUTopology, availableCPUs cpuset.C
453453
return acc.result, nil
454454
}
455455
if acc.isFailed() {
456-
return cpuset.New(), fmt.Errorf("not enough cpus available to satisfy request")
456+
return cpuset.New(), fmt.Errorf("not enough cpus available to satisfy request: requested=%d, available=%d", numCPUs, availableCPUs.Size())
457457
}
458458

459459
// Algorithm: topology-aware best-fit
@@ -565,7 +565,7 @@ func takeByTopologyNUMADistributed(topo *topology.CPUTopology, availableCPUs cpu
565565
return acc.result, nil
566566
}
567567
if acc.isFailed() {
568-
return cpuset.New(), fmt.Errorf("not enough cpus available to satisfy request")
568+
return cpuset.New(), fmt.Errorf("not enough cpus available to satisfy request: requested=%d, available=%d", numCPUs, availableCPUs.Size())
569569
}
570570

571571
// Get the list of NUMA nodes represented by the set of CPUs in 'availableCPUs'.

pkg/kubelet/cm/cpumanager/cpu_assignment_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -522,7 +522,7 @@ func commonTakeByTopologyTestCases(t *testing.T) []takeByTopologyTestCase {
522522
topoSingleSocketHT,
523523
cpuset.New(0, 2, 4, 6),
524524
5,
525-
"not enough cpus available to satisfy request",
525+
"not enough cpus available to satisfy request: requested=5, available=4",
526526
cpuset.New(),
527527
},
528528
{

pkg/kubelet/cm/cpumanager/policy_static_test.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -399,7 +399,7 @@ func TestStaticPolicyAdd(t *testing.T) {
399399
stAssignments: state.ContainerCPUAssignments{},
400400
stDefaultCPUSet: cpuset.New(0, 1, 2, 3, 4, 5, 6, 7),
401401
pod: makePod("fakePod", "fakeContainer2", "8000m", "8000m"),
402-
expErr: fmt.Errorf("not enough cpus available to satisfy request"),
402+
expErr: fmt.Errorf("not enough cpus available to satisfy request: requested=8, available=7"),
403403
expCPUAlloc: false,
404404
expCSet: cpuset.New(),
405405
},
@@ -429,7 +429,7 @@ func TestStaticPolicyAdd(t *testing.T) {
429429
},
430430
stDefaultCPUSet: cpuset.New(0, 4, 5, 6, 7, 8, 9, 10, 11),
431431
pod: makePod("fakePod", "fakeContainer5", "10000m", "10000m"),
432-
expErr: fmt.Errorf("not enough cpus available to satisfy request"),
432+
expErr: fmt.Errorf("not enough cpus available to satisfy request: requested=10, available=8"),
433433
expCPUAlloc: false,
434434
expCSet: cpuset.New(),
435435
},
@@ -444,7 +444,7 @@ func TestStaticPolicyAdd(t *testing.T) {
444444
},
445445
stDefaultCPUSet: cpuset.New(0, 7),
446446
pod: makePod("fakePod", "fakeContainer5", "2000m", "2000m"),
447-
expErr: fmt.Errorf("not enough cpus available to satisfy request"),
447+
expErr: fmt.Errorf("not enough cpus available to satisfy request: requested=2, available=1"),
448448
expCPUAlloc: false,
449449
expCSet: cpuset.New(),
450450
},
@@ -461,7 +461,7 @@ func TestStaticPolicyAdd(t *testing.T) {
461461
},
462462
stDefaultCPUSet: cpuset.New(10, 11, 53, 37, 55, 67, 52),
463463
pod: makePod("fakePod", "fakeContainer5", "76000m", "76000m"),
464-
expErr: fmt.Errorf("not enough cpus available to satisfy request"),
464+
expErr: fmt.Errorf("not enough cpus available to satisfy request: requested=76, available=7"),
465465
expCPUAlloc: false,
466466
expCSet: cpuset.New(),
467467
},
@@ -981,7 +981,7 @@ func TestStaticPolicyAddWithResvList(t *testing.T) {
981981
stAssignments: state.ContainerCPUAssignments{},
982982
stDefaultCPUSet: cpuset.New(0, 1, 2, 3, 4, 5, 6, 7),
983983
pod: makePod("fakePod", "fakeContainer2", "8000m", "8000m"),
984-
expErr: fmt.Errorf("not enough cpus available to satisfy request"),
984+
expErr: fmt.Errorf("not enough cpus available to satisfy request: requested=8, available=7"),
985985
expCPUAlloc: false,
986986
expCSet: cpuset.New(),
987987
},

0 commit comments

Comments
 (0)