agent: cache notifications work after error if the underlying RPC returns index=1
Fixes #6521 Ensure that initial failures to fetch an agent cache entry using the notify API where the underlying RPC returns a synthetic index of 1 correctly recovers when those RPCs resume working. The bug in the Cache.notifyBlockingQuery used to incorrectly "fix" the index for the next query from 0 to 1 for all queries, when it should have not done so for queries that errored. Also fixed some things that made debugging difficult: - config entry read/list endpoints send back QueryMeta headers - xds event loops don't swallow the cache notification errors
Showing
- agent/agent_test.go 96 additions, 0 deletionsagent/agent_test.go
- agent/cache/watch.go 1 addition, 1 deletionagent/cache/watch.go
- agent/cache/watch_test.go 4 additions, 3 deletionsagent/cache/watch_test.go
- agent/config_endpoint.go 2 additions, 0 deletionsagent/config_endpoint.go
- agent/proxycfg/state.go 22 additions, 14 deletionsagent/proxycfg/state.go
Please register or sign in to comment