Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
b62d8242
Commit
b62d8242
authored
Feb 27, 2018
by
Harry Zhang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix golints in extender
parent
71603f2f
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
12 additions
and
10 deletions
+12
-10
extender.go
pkg/scheduler/core/extender.go
+5
-4
generic_scheduler.go
pkg/scheduler/core/generic_scheduler.go
+5
-4
generic_scheduler_test.go
pkg/scheduler/core/generic_scheduler_test.go
+2
-2
No files found.
pkg/scheduler/core/extender.go
View file @
b62d8242
...
...
@@ -184,18 +184,19 @@ func (h *HTTPExtender) restorePodFromNodeInfo(
metaPod
*
schedulerapi
.
MetaPod
,
nodeName
string
,
nodeNameToInfo
map
[
string
]
*
schedulercache
.
NodeInfo
)
(
*
v1
.
Pod
,
error
)
{
var
nodeInfo
*
schedulercache
.
NodeInfo
if
nodeInfo
,
ok
:=
nodeNameToInfo
[
nodeName
];
ok
{
for
_
,
pod
:=
range
nodeInfo
.
Pods
()
{
if
string
(
pod
.
UID
)
==
metaPod
.
UID
{
return
pod
,
nil
}
}
return
nil
,
fmt
.
Errorf
(
"extender: %v claims to preempt pod (UID: %v) on node: %v, but the pod is not found on that node
.
"
,
return
nil
,
fmt
.
Errorf
(
"extender: %v claims to preempt pod (UID: %v) on node: %v, but the pod is not found on that node"
,
h
.
extenderURL
,
metaPod
,
nodeInfo
.
Node
()
.
Name
)
}
else
{
return
nil
,
fmt
.
Errorf
(
"extender: %v claims to preempt on node: %v but the node is not found in nodeNameToInfo map"
,
h
.
extenderURL
,
nodeInfo
.
Node
()
.
Name
)
}
return
nil
,
fmt
.
Errorf
(
"extender: %v claims to preempt on node: %v but the node is not found in nodeNameToInfo map"
,
h
.
extenderURL
,
nodeInfo
.
Node
()
.
Name
)
}
// convertToNodeNameToMetaVictims converts from struct type to meta types.
...
...
pkg/scheduler/core/generic_scheduler.go
View file @
b62d8242
...
...
@@ -54,6 +54,7 @@ type FitError struct {
FailedPredicates
FailedPredicateMap
}
// ErrNoNodesAvailable is used to describe the error that no nodes available to schedule pods.
var
ErrNoNodesAvailable
=
fmt
.
Errorf
(
"no nodes available to schedule pods"
)
const
(
...
...
@@ -253,11 +254,11 @@ func (g *genericScheduler) Preempt(pod *v1.Pod, nodeLister algorithm.NodeLister,
nominatedPods
:=
g
.
getLowerPriorityNominatedPods
(
pod
,
candidateNode
.
Name
)
if
nodeInfo
,
ok
:=
g
.
cachedNodeInfoMap
[
candidateNode
.
Name
];
ok
{
return
nodeInfo
.
Node
(),
nodeToVictims
[
candidateNode
]
.
Pods
,
nominatedPods
,
err
}
else
{
return
nil
,
nil
,
nil
,
fmt
.
Errorf
(
"preemption failed: the target node %s has been deleted from scheduler cache"
,
candidateNode
.
Name
)
}
return
nil
,
nil
,
nil
,
fmt
.
Errorf
(
"preemption failed: the target node %s has been deleted from scheduler cache"
,
candidateNode
.
Name
)
}
// processPreemptionWithExtenders processes preemption with extenders
...
...
pkg/scheduler/core/generic_scheduler_test.go
View file @
b62d8242
...
...
@@ -883,7 +883,7 @@ func TestSelectNodesForPreemption(t *testing.T) {
for
_
,
test
:=
range
tests
{
nodes
:=
[]
*
v1
.
Node
{}
for
_
,
n
:=
range
test
.
nodes
{
node
:=
makeNode
(
n
,
priorityutil
.
DefaultMilliCPURequest
*
5
,
priorityutil
.
DefaultMemoryRequest
*
5
)
node
:=
makeNode
(
n
,
1000
*
5
,
priorityutil
.
DefaultMemoryRequest
*
5
)
node
.
ObjectMeta
.
Labels
=
map
[
string
]
string
{
"hostname"
:
node
.
Name
}
nodes
=
append
(
nodes
,
node
)
}
...
...
@@ -1286,7 +1286,7 @@ func TestPreempt(t *testing.T) {
}
cachedNodeInfoMap
:=
map
[
string
]
*
schedulercache
.
NodeInfo
{}
for
_
,
name
:=
range
nodeNames
{
node
:=
makeNode
(
name
,
priorityutil
.
DefaultMilliCpuRequest
*
5
,
priorityutil
.
DefaultMemoryRequest
*
5
)
node
:=
makeNode
(
name
,
1000
*
5
,
priorityutil
.
DefaultMemoryRequest
*
5
)
cache
.
AddNode
(
node
)
// Set nodeInfo to extenders to mock extenders' cache for preemption.
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment