diff --git a/xds/internal/resolver/serviceconfig.go b/xds/internal/resolver/serviceconfig.go index 9eaff52db..bf1c53fc9 100644 --- a/xds/internal/resolver/serviceconfig.go +++ b/xds/internal/resolver/serviceconfig.go @@ -255,9 +255,6 @@ func (cs *configSelector) generateHash(rpcInfo iresolver.RPCInfo, hashPolicies [ } func (cs *configSelector) newInterceptor(rt *route, cluster *routeCluster) (iresolver.ClientInterceptor, error) { - if len(cs.httpFilterConfig) == 0 { - return nil, nil - } interceptors := make([]iresolver.ClientInterceptor, 0, len(cs.httpFilterConfig)) for _, filter := range cs.httpFilterConfig { if router.IsRouterFilter(filter.Filter) { diff --git a/xds/internal/resolver/xds_resolver_test.go b/xds/internal/resolver/xds_resolver_test.go index 9bce8ffe8..462298235 100644 --- a/xds/internal/resolver/xds_resolver_test.go +++ b/xds/internal/resolver/xds_resolver_test.go @@ -1197,6 +1197,11 @@ func (s) TestXDSResolverHTTPFilters(t *testing.T) { selectErr string newStreamErr string }{ + { + name: "empty filters", + ldsFilters: []xdsclient.HTTPFilter{}, + selectErr: "no router filter present", + }, { name: "no router filter", ldsFilters: []xdsclient.HTTPFilter{