[
https://issues.apache.org/jira/browse/YUNIKORN-3317?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Wilfred Spiegelenburg updated YUNIKORN-3317:
--------------------------------------------
Affects Version/s: (was: 1.7.0)
> Foreign allocations not tracked in core
> ---------------------------------------
>
> Key: YUNIKORN-3317
> URL: https://issues.apache.org/jira/browse/YUNIKORN-3317
> Project: Apache YuniKorn
> Issue Type: Bug
> Affects Versions: 1.8.0, 1.9.0
> Reporter: Wilfred Spiegelenburg
> Assignee: Wilfred Spiegelenburg
> Priority: Blocker
>
> Foreign allocations are pods managed by either the node (static pods) or by a
> different scheduler in the cluster (not YuniKorn). The pods can show up in
> the informer as an update without a create event. This breaks foreign pod
> tracking in the core:
> {code:java}
>
> {"stream":"stdout","log":"2026-07-08T11:08:44.202Z\tDEBUG\tshim.cache.external\texternal/scheduler_cache.go:672\tScheduler
> cache state (UpdatePod.Pre)\t{\"nodes\": 10, \"pods\": 217, \"assumed\": 45,
> \"pendingAllocs\": 0, \"inProgressAllocs\": 0, \"podsAssigned\": 179,
> \"schedulingTasks\": 38, \"phases\": {\"Pending\":64,\"Running\":153}}"}
> {"stream":"stdout","log":"2026-07-08T11:08:44.202Z\tDEBUG\tshim.cache.external\texternal/scheduler_cache.go:467\tPutting
> pod in cache\t{\"podName\": \"calico-node-b46nq\", \"podKey\":
> \"ac73ed90-8216-418c-b312-ec16c747f2c8\"}"}
> {"stream":"stdout","log":"2026-07-08T11:08:44.202Z\tDEBUG\tshim.cache.external\texternal/scheduler_cache.go:672\tScheduler
> cache state (UpdatePod.Post)\t{\"nodes\": 10, \"pods\": 218, \"assumed\":
> 45, \"pendingAllocs\": 0, \"inProgressAllocs\": 0, \"podsAssigned\": 180,
> \"schedulingTasks\": 38, \"phases\": {\"Pending\":65,\"Running\":153}}"}
> {"stream":"stdout","log":"2026-07-08T11:08:44.202Z\tDEBUG\tshim.context\tcache/context.go:405\tpod
> is assigned to a node, trigger foreign resource update\t{\"namespace\":
> \"kube-system\", \"podName\": \"calico-node-b46nq\", \"podStatusBefore\":
> \"Pending\", \"podStatusCurrent\": \"Pending\"}"}
> {{code}
>
> The log shows:
> * adding a new pod to the cache: 217 to218
> * already assigned: 179 to 180
> * podStatusBefore is {{Pending}} which means we have an “old” and “new” pod
> which only happens for an update event.
> That means we see a new pod but it came in as an update from the informer.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]