envoyproxy / envoyproxy/gateway
MergeBackends: BackendTrafficPolicy RoutingType override at Gateway-listener scope silently missed when route's parentRef omits sectionName
- Dominant language
- Go
- Stars
- 3k
- Forks
- 864
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 140
Description
## Description
`RoutingType` on a `BackendTrafficPolicy` controls how a backend's endpoints are resolved: either through the Service's ClusterIP, or directly to each backing Pod. When that setting is overridden on a specific Gateway listener (via `sectionName`), and a route reaches that listener without naming the same `sectionName` on its own `parentRef`, the listener's override is silently ignored. The route falls back to whatever `RoutingType` applies at the Gateway level instead.
This is the same "route's `parentRef` omits `sectionName`" pattern reported in #9676 (which covered `ClusterSettings` and was fixed in #9695), affecting `RoutingType` instead. It was split out into its own issue since it isn't fixed by that PR.
## Impact
A route that attaches to a Gateway without naming a specific listener can silently get the wrong endpoint-resolution behavior for traffic through a listener that has its own `RoutingType` override - pod-direct routing intended for that listener may not take effect, or ClusterIP routing may be used where per-pod routing was intended (or vice versa).
cc @kkk777-7 @jukie
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by comparing the BackendTrafficPolicy RoutingType handling with the ClusterSettings fix in #9695 for the route parentRef pattern reported in #9676. Trace how a route with no parentRef sectionName selects a Gateway listener override. Done means the listener-level RoutingType is honored rather than falling back to the Gateway-level setting.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, kubernetes
- Domain
- backend-api-design, networking
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 62/100