consul/agent/structs
Dan Upton e6b55d1d81
perf: remove expensive reflection from xDS hot path (#14934)
Replaces the reflection-based implementation of proxycfg's
ConfigSnapshot.Clone with code generated by deep-copy.

While load testing server-based xDS (for consul-dataplane) we discovered
this method is extremely expensive. The ConfigSnapshot struct, directly
or indirectly, contains a copy of many of the structs in the agent/structs
package, which creates a large graph for copystructure.Copy to traverse
at runtime, on every proxy reconfiguration.
2022-10-14 10:26:42 +01:00
..
aclfilter proxycfg: server-local intention upstreams data source 2022-07-04 10:48:36 +01:00
acl.go Add server certificate manager 2022-09-16 17:57:10 -06:00
acl_cache.go acl: gRPC login and logout endpoints (#12935) 2022-05-04 17:38:45 +01:00
acl_cache_test.go acl: gRPC login and logout endpoints (#12935) 2022-05-04 17:38:45 +01:00
acl_oss.go Manual Structs fixup 2022-04-05 14:51:10 -07:00
acl_test.go acl: gRPC login and logout endpoints (#12935) 2022-05-04 17:38:45 +01:00
auto_encrypt.go tls: auto_encrypt enables automatic RPC cert provisioning for consul clients (#5597) 2019-06-27 22:22:07 +02:00
autopilot.go Switch to using the external autopilot module 2020-11-09 09:22:11 -05:00
autopilot_oss.go re-run gofmt on 1.17 (#11579) 2021-11-16 12:04:01 -06:00
catalog.go Manual Structs fixup 2022-04-05 14:51:10 -07:00
catalog_oss.go re-run gofmt on 1.17 (#11579) 2021-11-16 12:04:01 -06:00
check_definition.go UDP check for service stanza #12221 (#12722) 2022-06-06 15:13:19 -04:00
check_definition_test.go add http2 ping health checks (#8431) 2021-04-09 15:12:10 -04:00
check_type.go UDP check for service stanza #12221 (#12722) 2022-06-06 15:13:19 -04:00
config_entry.go Add envoy connection balancing. (#14616) 2022-09-26 11:29:06 -05:00
config_entry_discoverychain.go Add the ability to retry on reset connection to service-routers (#12890) 2022-10-05 13:06:44 -04:00
config_entry_discoverychain_oss.go Add `Targets` field to service resolver failovers. (#14162) 2022-08-15 09:20:25 -04:00
config_entry_discoverychain_oss_test.go Update the structs and discovery chain for service resolver redirects to cluster peers. (#14366) 2022-08-29 09:51:32 -04:00
config_entry_discoverychain_test.go Add the ability to retry on reset connection to service-routers (#12890) 2022-10-05 13:06:44 -04:00
config_entry_export_oss_test.go Rename `PeerName` to `Peer` on prepared queries and exported services (#14854) 2022-10-04 14:46:15 -04:00
config_entry_exports.go Rename `PeerName` to `Peer` on prepared queries and exported services (#14854) 2022-10-04 14:46:15 -04:00
config_entry_exports_test.go Rename `PeerName` to `Peer` on prepared queries and exported services (#14854) 2022-10-04 14:46:15 -04:00
config_entry_gateways.go feat(ingress gateway: support configuring limits in ingress-gateway c… (#14749) 2022-09-28 14:56:46 -04:00
config_entry_gateways_test.go fix: multiple grpc/http2 services for ingress listeners 2022-05-26 10:43:58 -04:00
config_entry_intentions.go peering, state: account for peer intentions (#13443) 2022-06-16 10:27:31 -07:00
config_entry_intentions_oss.go Manual Structs fixup 2022-04-05 14:51:10 -07:00
config_entry_intentions_test.go peering, state: account for peer intentions (#13443) 2022-06-16 10:27:31 -07:00
config_entry_mesh.go Update xds generation for peering over mesh gws 2022-10-03 12:42:27 -06:00
config_entry_mesh_oss.go re-run gofmt on 1.17 (#11579) 2021-11-16 12:04:01 -06:00
config_entry_mesh_test.go Update xds generation for peering over mesh gws 2022-10-03 12:42:27 -06:00
config_entry_oss.go peering: initial sync (#12842) 2022-04-21 17:34:40 -05:00
config_entry_oss_test.go re-run gofmt on 1.17 (#11579) 2021-11-16 12:04:01 -06:00
config_entry_test.go Rename `PeerName` to `Peer` on prepared queries and exported services (#14854) 2022-10-04 14:46:15 -04:00
connect.go Manual Structs fixup 2022-04-05 14:51:10 -07:00
connect_ca.go Update intermediate pki mount/role when reconfiguring Vault provider 2022-09-13 15:42:26 -07:00
connect_ca_test.go add root_cert_ttl option for consul connect, vault ca providers (#11428) 2021-11-02 11:02:10 -07:00
connect_oss.go re-run gofmt on 1.17 (#11579) 2021-11-16 12:04:01 -06:00
connect_proxy_config.go peering: Make Upstream peer-aware (#12900) 2022-04-29 18:12:51 -04:00
connect_proxy_config_oss.go Manual Structs fixup 2022-04-05 14:51:10 -07:00
connect_proxy_config_test.go bulk rewrite using this script 2022-01-20 10:46:23 -06:00
deep-copy.sh perf: remove expensive reflection from xDS hot path (#14934) 2022-10-14 10:26:42 +01:00
discovery_chain.go Cluster peering failover disco chain changes (#14296) 2022-08-23 09:13:43 -04:00
discovery_chain_oss.go Manual Structs fixup 2022-04-05 14:51:10 -07:00
errors.go Special case the error returned when we have a Raft leader but are not tracking it in the ServerLookup (#9487) 2021-01-04 14:05:23 -05:00
federation_state.go wan federation via mesh gateways (#6884) 2020-03-09 15:59:02 -05:00
identity.go Manual Structs fixup 2022-04-05 14:51:10 -07:00
intention.go Add SourcePeer fields to relevant Intentions types (#13390) 2022-06-08 13:24:10 -04:00
intention_oss.go Manual Structs fixup 2022-04-05 14:51:10 -07:00
intention_test.go Add SourcePeer fields to relevant Intentions types (#13390) 2022-06-08 13:24:10 -04:00
operator.go Switch to using the external autopilot module 2020-11-09 09:22:11 -05:00
peering.go Add remote peer partition and datacenter info. 2022-10-13 10:37:41 -05:00
prepared_query.go Rename `PeerName` to `Peer` on prepared queries and exported services (#14854) 2022-10-04 14:46:15 -04:00
prepared_query_test.go structs: add two cache completeness tests types that implement cache.Request 2021-05-31 16:54:41 -04:00
protobuf_compat.go remove the rest of gogo 2022-03-28 17:34:41 -04:00
sanitize_oss.go re-run gofmt on 1.17 (#11579) 2021-11-16 12:04:01 -06:00
service_definition.go peering: Make Upstream peer-aware (#12900) 2022-04-29 18:12:51 -04:00
service_definition_test.go bulk rewrite using this script 2022-01-20 10:46:23 -06:00
snapshot.go
structs.deepcopy.go perf: remove expensive reflection from xDS hot path (#14934) 2022-10-14 10:26:42 +01:00
structs.go perf: remove expensive reflection from xDS hot path (#14934) 2022-10-14 10:26:42 +01:00
structs_filtering_test.go Add SourcePeer fields to relevant Intentions types (#13390) 2022-06-08 13:24:10 -04:00
structs_oss.go peering: accept replication stream of discovery chain information at the importing side (#13151) 2022-05-19 16:37:52 -05:00
structs_oss_test.go add new entmeta stuff. 2022-04-05 14:49:31 -07:00
structs_test.go Separate port and socket path requirement in case of local agent assignment 2022-07-29 13:28:21 -05:00
system_metadata.go Add virtual IP generation for term gateway backed services 2022-01-12 12:08:49 -08:00
testing.go Vendor in rpc mono repo for net/rpc fork, go-msgpack, msgpackrpc. (#12311) 2022-02-14 09:45:45 -08:00
testing_catalog.go Make the mesh gateway changes to allow `local` mode for cluster peering data plane traffic (#14817) 2022-10-06 09:54:14 -04:00
testing_connect_proxy_config.go Add additional parameters to envoy passive health check config (#14238) 2022-09-01 09:59:11 -07:00
testing_intention.go Cleanup unnecessary normalizing method (#11169) 2021-09-28 15:31:12 -04:00
testing_service_definition.go
txn.go connect: intentions are now managed as a new config entry kind "service-intentions" (#8834) 2020-10-06 13:24:05 -05:00