fix: propagate the HTTPFilter translation errors to the outer layer#7556
fix: propagate the HTTPFilter translation errors to the outer layer#7556zhaohuabing merged 6 commits intoenvoyproxy:mainfrom
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #7556 +/- ##
==========================================
- Coverage 72.33% 72.26% -0.08%
==========================================
Files 232 232
Lines 34114 34103 -11
==========================================
- Hits 24676 24644 -32
- Misses 7668 7682 +14
- Partials 1770 1777 +7 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
dc7f5b0 to
0dcab0a
Compare
internal/gatewayapi/testdata/extensions/httproute-with-custom-backend-invalid-group.out.yaml
Outdated
Show resolved
Hide resolved
|
I just found another issue while working on this PR: currently, the ir routes are not generated for HTTPRoute Rules with invalid HTTPFilters. If any rules have invalid filters, the user requests will get 404 not found. We should generate a 500 directResponse for these rules, like what we did with failed backendRefs. Let's handle this in a separate PR. |
0dcab0a to
ca5e6f3
Compare
ca5e6f3 to
008b334
Compare
33b4b12 to
8001531
Compare
| status: "False" | ||
| message: Route is accepted | ||
| reason: Accepted | ||
| status: "True" |
There was a problem hiding this comment.
Accepted should be True for unresolved filters.
internal/gatewayapi/testdata/httproute-with-header-filter-no-valid-headers.out.yaml
Outdated
Show resolved
Hide resolved
Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>
Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>
Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>
Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>
de9a6cc to
c29c132
Compare
Signed-off-by: Huabing Zhao <zhaohuabing@gmail.com>
|
LGTM, thanks! |
| type: Accepted | ||
| - lastTransitionTime: null | ||
| message: 'Unable to translate HTTPRouteFilter: default/direct-response-value-ref-not-found' | ||
| message: 'Unable to translate HTTPRouteFilter: default/direct-response-value-ref-not-found.' |
There was a problem hiding this comment.
not related to this PR, but we should consider updating reason from BackendNotFound to something better for this case in the future
This PR propagates the HTTPFilter translation errors to the out layer, so they can be handled with other route translation errors together in the
processHTTPRouteParentRefsmethod.This PR doesn't fix #7545, but it will allow us to associate an HTTPFilter translation error with a specific HTTPRule. This is a prerequisite for resolving #7545, where we need to set the
Acceptedstatus as true for mixed valid and invalid rules and generate the xDS for valid rules.