Inference: Updates InferencePool Status Management #11621
Draft
+871
−349
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
When an InferencePool was first created, the k8s API server auto-populates one synthetic parent entry. Every time the endpointpicker plugin tried to append the real Gateway parent (or remove it again), the list kept toggling between [default,…] and […].
This PR added
stripDefaultParent()
and called it in all paths that read/writeinferencepool.Status.Parents
:Fixes #11554
InferencePool status was not being updated when referent/referenced (HTTPRoute and Service) object events were triggered:
buildRegisterCallback()
to accept the triggering InferencePool status calculation based on HTTPRoute and Service events.referencedGateway()
no longer aborts on type assertion failures and continues scanning remaining routes. Removed the GatewayClass check since the GatewayIndex only contains Gateways whose GatewayClass.controllerName matches kgateway. Any Gateway coming out of this index is guaranteed to be managed by kgateway.Partially Fixes #11379
Change Type
Changelog
Additional Notes