Commit Graph

105 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
a32050e6cb
Merge pull request #116201 from sanposhiho/metric-scheduling-gate
add(scheduler): implement "plugin_execution_duration_seconds" metric in PreEnqueue
2023-03-12 13:52:40 -07:00
Kubernetes Prow Robot
e413e6a59c
Merge pull request #116312 from sanposhiho/move-label
cleanup(scheduler): move metric labels to metrics package
2023-03-12 10:48:40 -07:00
Kensei Nakada
639007b28e cleanup(scheduler): move metric labels to metrics package 2023-03-12 05:10:29 +00:00
Kensei Nakada
6697467062 add(scheduler): implement "plugin_execution_duration_seconds" metric in PreEnqueue 2023-03-12 04:45:52 +00:00
Aldo Culquicondor
07a73bb2e1
One lock among PodNominator and SchedulingQueue
Change-Id: I17fe5da40250e42c04124c25b530ce6c8dea4154
2023-03-08 16:18:36 -05:00
Kubernetes Prow Robot
283c26f91a
Merge pull request #115082 from sanposhiho/filter-metrics
feature(scheduler): implement plugin_evaluation_total metric
2023-03-06 12:58:17 -08:00
csDengh
f762145e06
minor code improvement
minor code improvement 
from repeated assignments in loops to initialize outside the loop
2023-03-06 09:00:40 +08:00
Kensei Nakada
608f4808ff support PreFilter as well 2023-03-06 00:48:30 +00:00
Kubernetes Prow Robot
77af0be42f
Merge pull request #115519 from sanposhiho/move-metric-recorder
cleanup(scheduler): move metricRecorder to metrics package
2023-02-16 03:57:38 -08:00
Kensei Nakada
aa7b1766e5 cleanup(scheduler): move metricRecorder to metrics package 2023-02-16 07:27:08 +00:00
kidddddddddddddddddddddd
f5a69ffda9
feature(scheduler): won't run Score if PreScore returned a Skip status (#115652)
* allow preScore to return skip status to skip running the corresponding score extension

* add test case for all skipped

* add test case for select host

* update plugin status

* skip score when all plugins are skipped

* update
2023-02-13 14:53:29 -08:00
Kensei Nakada
4f7717842c feature(scheduler): implement plugin_evaluation_total metric 2023-02-04 07:21:03 +00:00
Kante Yin
2ceadfe885 Code refactor for readability
Signed-off-by: Kante Yin <kerthcet@gmail.com>
2023-01-07 11:31:46 +08:00
Kubernetes Prow Robot
c549b59983
Merge pull request #114125 from sanposhiho/skip-reimplementation
feature(scheduler): won't run Filter if PreFilter returned a Skip status
2023-01-06 02:25:59 -08:00
Kensei Nakada
e5b536755f feature(scheduler): won't run Filter if PreFilter returned a Skip status 2023-01-06 07:38:15 +00:00
Kante Yin
2c205e291d Distinguish unschedulable with unresolvable in scheduler
Before, in RunPostFilterPlugins, we didn't distinguish between unschedulable and unresolvable
because we only have one postFilterPlugin by default, now, we have at least two, we should
make sure that once a postFilterPlugin returns unresolvable, we'll return directly

Signed-off-by: Kante Yin <kerthcet@gmail.com>
2023-01-05 16:59:19 +08:00
Kante Yin
49e7e80999 Modify the return type of RunFilterPlugins to *Status
Before, the return type of RunFilterPlugins is a Map, but considering we'll return immediately
once we met unsuccessful status, this is not necessary.

Signed-off-by: Kante Yin <kerthcet@gmail.com>
2023-01-03 14:33:58 +08:00
Kubernetes Prow Robot
94fd106a17
Merge pull request #110453 from claudiubelu/unittests-4
unittests: Fixes unit tests for Windows (part 4)
2022-12-16 06:16:16 -08:00
Wei Huang
0aecf6b3d5
Fix a regression that scheduler always go through all Filter plugins
The correct behavior is to stop upon the first Filter failure.
2022-12-15 12:02:27 -08:00
Claudiu Belu
4dc7a260ec unittests: Fixes unit tests for Windows (part 4)
Currently, there are some unit tests that are failing on Windows due to
various reasons:

- paths not properly joined (filepath.Join should be used).
- files not closed, which means that they cannot be removed / renamed.
- time.Now() is not as precise on Windows, which means that 2
  consecutive calls may return the same timestamp.
2022-11-29 16:32:26 +00:00
Kensei Nakada
f3868abfed Revert "feature(scheduler): won't run Filter if PreFilter returned a Skip status"
This reverts commit 786be73b4b.
2022-11-09 11:55:33 +00:00
Kubernetes Prow Robot
2b7b5245ea
Merge pull request #112637 from sanposhiho/pre-filter-skip
feature(scheduler): won't run Filter if PreFilter returned a Skip status
2022-11-08 06:16:37 -08:00
Kensei Nakada
786be73b4b feature(scheduler): won't run Filter if PreFilter returned a Skip status 2022-11-07 23:47:48 +00:00
Wei Huang
0b27f25252
PreEnqueue implementation
- Add PreEnqueuePlugin to Scheduler Framework
- Implement PreEnqueuePlugin in scheduler queue
- Implementation of SchedulingGates plugin
- Metrics
2022-11-07 14:02:58 -08:00
iyear
a62f0c3b9f scheduler/framework: remove useless SetFailedPlugin
Signed-off-by: iyear <ljyngup@gmail.com>
2022-11-02 10:42:52 +08:00
Kubernetes Prow Robot
8305358630
Merge pull request #108494 from sanposhiho/RunScorePlugins-return-type
change framework.RunScorePlugins to return slice organized by node
2022-10-20 08:57:02 -07:00
sanposhiho
cbf1ea5e68 change framework.RunScorePlugins to return slice organized by node 2022-10-20 01:04:38 +00:00
Yuan Chen
7297f48f12 Add profile level percentageOfNodesToScore
Fix conversion errors

Changed the order

update

update

fix manaul coversions

keep the global parameter for backward compatibility

Address Wei's comments

Fix an error

Fix issues

Add unit tests for validation

Fix a comment

Address comments

Update comments

fix verifiation errors

Add tests for scheme_test.go

Convert percentageOfNodesToScore to pointer

Fix errors

Resolve conflicts

Fix testing errors

Address Wei's comments

Revert IntPtr to Int changes

Address comments

Not overrite percentageOfNodesToScore

Fix a bug

Fix a bug

change errs to err

Fix a nit

Remove duplication

Address comments

Fix lint warning

Fix an issue

Update comments

Clean up

Address comments

Revert changes to defaults

fix unit test error

Update

Fix tests

Use default PluginConfigs
2022-10-14 13:01:06 -07:00
kidddddddddddddddddddddd
b901ef0f68 changes in test files 2022-10-12 22:11:04 +08:00
Kubernetes Prow Robot
5fe1450ba7
Merge pull request #112028 from dengyufeng2206/test2508
fix several typos under scheduler framework
2022-09-22 15:18:53 -07:00
Kubernetes Prow Robot
3ac752e4a0
Merge pull request #112003 from sanposhiho/metrics-goroutine
feature(scheduler): add "goroutines" metric and deprecate the "scheduler_goroutines" metric
2022-09-12 12:01:16 -07:00
Kante Yin
096dafe757
Feat: unify the status handle when return in bindingCycle (#112103)
Signed-off-by: kerthcet <kerthcet@gmail.com>

Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-09-09 08:31:23 -07:00
Kensei Nakada
08bd123b95 feature(scheduler): add "goroutines" metric and deprecate the "scheduler_goroutines" metric 2022-09-01 13:21:21 +00:00
Kubernetes Prow Robot
dbe3ac755a
Merge pull request #112029 from chendave/fix_status
Fix the wrong status returned from `RunPreFilterPlugins`
2022-08-25 23:34:50 -07:00
Dave Chen
8a288d6406 Fix the wrong status returned from RunPreFilterPlugins
event msg will be impacted due to the wrong status is returned.
e.g.

Warning  FailedScheduling ... running PreFilter plugin "PodTopologySpread": %!!(MISSING)w(<nil>)

Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-08-26 11:20:11 +08:00
dengyufeng2206
1a07ea2f60 fix several typos under scheduler framework
Signed-off-by: dengyufeng2206 <deng.yufeng@zte.com.cn>
2022-08-25 19:02:07 +08:00
Wei Huang
a07e27082a
Fix potential context leaking in scheduler 2022-08-11 22:22:40 -07:00
kerthcet
97e3e50493 Remove potential goroutine leak in NewFramework
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-08-06 00:05:22 +08:00
Kubernetes Prow Robot
3d5971aa5d
Merge pull request #110167 from NoicFank/master
scheduling: fix duplicate checks for number of enabled queue sort plugin
2022-06-21 13:15:43 -07:00
kerthcet
186470abd4 Cleanup: modify unmatch comments with stopCh
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-05-31 11:28:02 +08:00
Dingzhu Lurong
2499c240a9 remove duplicate checks for number of enabled queue sort plugin 2022-05-23 21:13:32 +08:00
Wojciech Tyczyński
7060953b92 Clear shutdown of scheduler metrics recorder 2022-05-20 20:23:29 +02:00
kerthcet
41e46a1bb4 cleanup: remove unnecessary codes
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-05-11 16:07:12 +08:00
Kubernetes Prow Robot
78faab2c7b
Merge pull request #109478 from shintard/added-status-functions
Implementation of a function that returns the wait state of the scheduler
2022-05-04 02:33:44 -07:00
shinta
22984402ab impl 'IsWait' functions
Co-authored-by: Alex Wang <453102040@qq.com>
2022-05-04 12:36:13 +09:00
zzr93
b54befc97d cleanUp:check existence using basic method of set 2022-03-30 20:47:46 +08:00
Carlos Eduardo Arango Gutierrez
d2f67b42b7
Fix typos under pkg/scheduler
./scheduler/framework/plugins/noderesources/most_allocated_test.go:227: negtive ==> negative
./scheduler/framework/plugins/noderesources/most_allocated_test.go:228: negtive ==> negative
./scheduler/framework/plugins/volumebinding/binder.go:402: everytime ==> every time
./scheduler/framework/preemption/preemption_test.go:67: staus ==> status
./scheduler/framework/runtime/framework_test.go:1252: followings ==> following
./scheduler/internal/cache/cache_test.go:932: datas ==> data
./scheduler/internal/cache/node_tree_test.go:471: unknow ==> unknown
./scheduler/internal/queue/scheduling_queue_test.go:442: actived ==> activated
./scheduler/internal/queue/scheduling_queue_test.go:2209: covert ==> convert

Signed-off-by: Carlos Eduardo Arango Gutierrez <carangog@redhat.com>
2022-03-24 08:01:25 -04:00
Kubernetes Prow Robot
0b8a665d50
Merge pull request #108613 from Huang-Wei/fix-v1beta3-order
Fix a bug that out-of-tree plugin is misplaced when using scheduler v1beta3 config
2022-03-22 01:01:44 -07:00
Wei Huang
d330f4dcb4
Fix a bug that out-of-tree plugin is misplaced when using scheduler v1beta3 config 2022-03-21 10:46:26 -07:00
kerthcet
29b565d071 feat: remove unsupported configuration field alwaysCheckAllPredicates in scheduler
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-03-21 10:17:46 +08:00