consul/agent
Daniel Upton 13c04a13af proxycfg: terminate stream on irrecoverable errors
This is the OSS portion of enterprise PR 2339.

It improves our handling of "irrecoverable" errors in proxycfg data sources.

The canonical example of this is what happens when the ACL token presented by
Envoy is deleted/revoked. Previously, the stream would get "stuck" until the
xDS server re-checked the token (after 5 minutes) and terminated the stream.

Materializers would also sit burning resources retrying something that could
never succeed.

Now, it is possible for data sources to mark errors as "terminal" which causes
the xDS stream to be closed immediately. Similarly, the submatview.Store will
evict materializers when it observes they have encountered such an error.
2022-08-23 20:17:49 +01:00
..
ae
auto-config
cache test: update mockery use to put mocks into test files (#13656) 2022-07-05 16:57:15 -05:00
cache-types peering: default to false (#13963) 2022-08-01 15:22:36 -04:00
checks UDP check for service stanza #12221 (#12722) 2022-06-06 15:13:19 -04:00
config Add retry in TestAgentConnectCALeafCert_good 2022-08-09 11:20:37 -04:00
configentry
connect Cluster peering failover disco chain changes (#14296) 2022-08-23 09:13:43 -04:00
consul Cluster peering failover disco chain changes (#14296) 2022-08-23 09:13:43 -04:00
debug
dns
exec
grpc-external Re-validate existing secrets at state store 2022-08-08 09:06:07 -06:00
grpc-internal grpc: rename public/private directories to external/internal (#13721) 2022-07-13 16:33:48 +01:00
grpc-middleware grpc: rename public/private directories to external/internal (#13721) 2022-07-13 16:33:48 +01:00
local Merge pull request #13499 from maxb/delete-unused-metric 2022-08-01 12:31:05 -06:00
metadata grpc: rename public/private directories to external/internal (#13721) 2022-07-13 16:33:48 +01:00
mock
pool grpc: rename public/private directories to external/internal (#13721) 2022-07-13 16:33:48 +01:00
proxycfg proxycfg: terminate stream on irrecoverable errors 2022-08-23 20:17:49 +01:00
proxycfg-glue proxycfg: terminate stream on irrecoverable errors 2022-08-23 20:17:49 +01:00
proxycfg-sources proxycfg-sources: fix hot loop when service not found in catalog 2022-08-02 15:42:29 +01:00
router
routine-leak-checker
rpc Use proto message for each secrets write op 2022-08-08 01:41:00 -06:00
rpcclient/health proxycfg-glue: server-local implementation of the `Health` interface 2022-07-14 18:22:12 +01:00
structs Cluster peering failover disco chain changes (#14296) 2022-08-23 09:13:43 -04:00
submatview proxycfg: terminate stream on irrecoverable errors 2022-08-23 20:17:49 +01:00
systemd
token
uiserver Enable/Disable Peering Support in the UI (#13816) 2022-07-25 11:50:11 -04:00
xds proxycfg: terminate stream on irrecoverable errors 2022-08-23 20:17:49 +01:00
acl.go
acl_endpoint.go Revert getPathSuffixUnescaped (#13256) 2022-06-01 13:17:14 -04:00
acl_endpoint_legacy.go
acl_endpoint_legacy_test.go
acl_endpoint_test.go [OSS] Add new peering ACL rule (#13848) 2022-07-22 14:42:23 -06:00
acl_oss.go
acl_test.go chore: removed unused method AddService (#13905) 2022-07-26 16:54:53 -04:00
agent.go Close active listeners on error 2022-08-09 12:22:39 -04:00
agent_endpoint.go Separate port and socket path requirement in case of local agent assignment 2022-07-29 13:28:21 -05:00
agent_endpoint_oss.go
agent_endpoint_oss_test.go
agent_endpoint_test.go Add retry in TestAgentConnectCALeafCert_good 2022-08-09 11:20:37 -04:00
agent_oss.go proxycfg: replace direct agent cache usage with interfaces (#13320) 2022-06-01 16:18:06 +01:00
agent_test.go Close active listeners on error 2022-08-09 12:22:39 -04:00
apiserver.go
apiserver_test.go
catalog_endpoint.go [OSS] Support merge-central-config option in node services list API (#13450) 2022-06-15 08:30:31 -07:00
catalog_endpoint_oss.go
catalog_endpoint_test.go block PeerName register requests (#13887) 2022-07-29 14:36:22 -07:00
check.go
config_endpoint.go Revert getPathSuffixUnescaped (#13256) 2022-06-01 13:17:14 -04:00
config_endpoint_test.go
connect_auth.go
connect_ca_endpoint.go
connect_ca_endpoint_test.go
coordinate_endpoint.go Revert getPathSuffixUnescaped (#13256) 2022-06-01 13:17:14 -04:00
coordinate_endpoint_test.go
delegate_mock_test.go Move ACLResolveResult into acl/resolver package (#13467) 2022-06-17 10:24:43 +01:00
denylist.go
denylist_test.go
discovery_chain_endpoint.go Revert getPathSuffixUnescaped (#13256) 2022-06-01 13:17:14 -04:00
discovery_chain_endpoint_test.go Cluster peering failover disco chain changes (#14296) 2022-08-23 09:13:43 -04:00
dns.go Parse peer name for virtual IP DNS queries (#13602) 2022-07-06 10:30:04 -06:00
dns_oss.go Parse peer name for virtual IP DNS queries (#13602) 2022-07-06 10:30:04 -06:00
dns_test.go block PeerName register requests (#13887) 2022-07-29 14:36:22 -07:00
enterprise_delegate_oss.go
event_endpoint.go Revert getPathSuffixUnescaped (#13256) 2022-06-01 13:17:14 -04:00
event_endpoint_test.go
federation_state_endpoint.go Revert getPathSuffixUnescaped (#13256) 2022-06-01 13:17:14 -04:00
health_endpoint.go Revert getPathSuffixUnescaped (#13256) 2022-06-01 13:17:14 -04:00
health_endpoint_test.go block PeerName register requests (#13887) 2022-07-29 14:36:22 -07:00
http.go no 1.9 style metrics (#13532) 2022-06-29 09:46:37 -07:00
http_decode_test.go
http_oss.go
http_oss_test.go
http_register.go peering: rename initiate to establish in the context of the APIs (#13419) 2022-06-10 11:10:46 -05:00
http_test.go Revert getPathSuffixUnescaped (#13256) 2022-06-01 13:17:14 -04:00
intentions_endpoint.go oss: peering, http: get peer service intentions (#2098) 2022-06-22 16:25:09 -07:00
intentions_endpoint_oss_test.go
intentions_endpoint_test.go oss: peering, http: get peer service intentions (#2098) 2022-06-22 16:25:09 -07:00
keyring.go
keyring_test.go
kvs_endpoint.go Fix KVSGet method to handle QueryOptions properly (#13344) 2022-06-02 12:26:18 -04:00
kvs_endpoint_test.go
metrics.go
metrics_test.go no 1.9 style metrics (#13532) 2022-06-29 09:46:37 -07:00
nodeid.go
nodeid_test.go
notify.go
notify_test.go
operator_endpoint.go
operator_endpoint_oss.go
operator_endpoint_test.go
peering_endpoint.go Add ACL enforcement to peering endpoints 2022-07-25 09:34:29 -06:00
peering_endpoint_oss_test.go
peering_endpoint_test.go Implement/Utilize secrets for Peering Replication Stream (#13977) 2022-08-01 10:33:18 -04:00
prepared_query_endpoint.go Revert getPathSuffixUnescaped (#13256) 2022-06-01 13:17:14 -04:00
prepared_query_endpoint_test.go Add Cluster Peering Failover Support to Prepared Queries (#13835) 2022-07-22 09:14:43 -04:00
reload.go
remote_exec.go
remote_exec_test.go
retry_join.go fix: shadowed err in retryJoin() (#14112) 2022-08-10 10:53:57 -04:00
retry_join_test.go
service_checks_test.go
service_manager.go Add support for merge-central-config query param (#13001) 2022-05-25 13:20:17 -07:00
service_manager_test.go Add support for merge-central-config query param (#13001) 2022-05-25 13:20:17 -07:00
session_endpoint.go Revert getPathSuffixUnescaped (#13256) 2022-06-01 13:17:14 -04:00
session_endpoint_test.go
setup.go peering: emit exported services count metric (#13811) 2022-07-22 12:05:08 -07:00
setup_oss.go
sidecar_service.go Merge branch 'main' into proxy-register-port-race 2022-08-10 08:40:45 -05:00
sidecar_service_test.go Merge branch 'main' into proxy-register-port-race 2022-08-10 08:40:45 -05:00
signal_unix.go
signal_windows.go
snapshot_endpoint.go
snapshot_endpoint_test.go
status_endpoint.go
status_endpoint_test.go
streaming_test.go
testagent.go peering: default to false (#13963) 2022-08-01 15:22:36 -04:00
testagent_test.go
translate_addr.go
txn_endpoint.go
txn_endpoint_test.go
ui_endpoint.go peering, internal: support UIServices, UINodes, UINodeInfo (#13577) 2022-06-24 15:17:35 -07:00
ui_endpoint_oss_test.go
ui_endpoint_test.go block PeerName register requests (#13887) 2022-07-29 14:36:22 -07:00
user_event.go
user_event_test.go chore: removed unused method AddService (#13905) 2022-07-26 16:54:53 -04:00
util.go
util_test.go
watch_handler.go
watch_handler_test.go