consul/agent/consul
Chris Piraino db3400c22d Fix bug in usage metrics when multiple service instances are changed in a single transaction (#9440)
* Fix bug in usage metrics that caused a negative count to occur

There were a couple of instances were usage metrics would do the wrong
thing and result in incorrect counts, causing the count to attempt to
decrement below zero and return an error. The usage metrics did not
account for various places where a single transaction could
delete/update/add multiple service instances at once.

We also remove the error when attempting to decrement below zero, and
instead just make sure we do not accidentally underflow the unsigned
integer. This is a more graceful failure than returning an error and not
allowing a transaction to commit.

* Add changelog
2021-01-12 21:32:29 +00:00
..
authmethod Fix a bunch of unparam lint issues 2020-06-24 13:00:14 -04:00
discoverychain Merge pull request #7583 from hashicorp/dnephin/id-printing 2021-01-08 00:02:59 +00:00
fsm acl: global tokens created by auth methods now correctly replicate to secondary datacenters (#9351) 2020-12-09 21:27:24 +00:00
prepared_query Enable gofmt simplify 2020-06-16 13:21:11 -04:00
state Fix bug in usage metrics when multiple service instances are changed in a single transaction (#9440) 2021-01-12 21:32:29 +00:00
stream Merge pull request #9114 from hashicorp/dnephin/filtering-in-stream 2020-11-16 19:21:20 +00:00
testdata Fix support for RSA CA keys in Connect. (#6638) 2019-11-01 13:20:26 +00:00
usagemetrics Merge pull request #9198 from hashicorp/mkcp/telemetry/add-all-metric-definitions 2020-11-17 00:13:51 +00:00
wanfed wan federation via mesh gateways (#6884) 2020-03-09 15:59:02 -05:00
acl.go Merge pull request #9213 from hashicorp/dnephin/resolve-tokens-take-2 2021-01-06 23:52:17 +00:00
acl_authmethod.go ACL Node Identities (#7970) 2020-06-16 12:54:27 -04:00
acl_authmethod_oss.go acl: add auth method for JWTs (#7846) 2020-05-11 20:59:29 -05:00
acl_authmethod_test.go acl: refactor the authmethod.Validator interface (#7760) 2020-05-01 17:35:28 -05:00
acl_client.go Merge pull request #9213 from hashicorp/dnephin/resolve-tokens-take-2 2021-01-06 23:52:17 +00:00
acl_endpoint.go Merge pull request #9198 from hashicorp/mkcp/telemetry/add-all-metric-definitions 2020-11-17 00:13:51 +00:00
acl_endpoint_legacy.go Merge pull request #9198 from hashicorp/mkcp/telemetry/add-all-metric-definitions 2020-11-17 00:13:51 +00:00
acl_endpoint_oss.go acl: add auth method for JWTs (#7846) 2020-05-11 20:59:29 -05:00
acl_endpoint_test.go acl: global tokens created by auth methods now correctly replicate to secondary datacenters (#9351) 2020-12-09 21:27:24 +00:00
acl_oss.go Allow the PolicyResolve and RoleResolve endpoints to process na… (#7296) 2020-02-13 14:55:27 -05:00
acl_oss_test.go Update the ACL Resolver to allow for Consul Enterprise specific hooks. (#6687) 2019-10-25 11:06:16 -04:00
acl_replication.go Allow users to configure either unstructured or JSON logging (#7130) 2020-01-28 17:50:41 -06:00
acl_replication_legacy.go Allow users to configure either unstructured or JSON logging (#7130) 2020-01-28 17:50:41 -06:00
acl_replication_legacy_test.go AuthMethod updates to support alternate namespace logins (#7029) 2020-01-14 10:09:29 -05:00
acl_replication_test.go acl: global tokens created by auth methods now correctly replicate to secondary datacenters (#9351) 2020-12-09 21:27:24 +00:00
acl_replication_types.go acl: global tokens created by auth methods now correctly replicate to secondary datacenters (#9351) 2020-12-09 21:27:24 +00:00
acl_server.go Add per-agent reconnect timeouts (#8781) 2020-10-08 15:02:19 -04:00
acl_server_oss.go Allow the bootstrap endpoint to be disabled in enterprise. (#7614) 2020-04-14 11:45:39 -04:00
acl_test.go Merge pull request #9213 from hashicorp/dnephin/resolve-tokens-take-2 2021-01-06 23:52:17 +00:00
acl_token_exp.go Remove ACLsEnabled from delegate interface 2020-07-03 17:00:20 -04:00
acl_token_exp_test.go acl: adding support for kubernetes auth provider login (#5600) 2019-04-26 14:49:25 -05:00
auto_config_endpoint.go Agent Auto Config: Implement Certificate Generation (#8360) 2020-07-28 15:31:48 -04:00
auto_config_endpoint_test.go Merge pull request #9103 from hashicorp/feature/autopilot-mod 2020-11-09 16:30:48 +00:00
auto_encrypt_endpoint.go Rename (*Server).forward to (*Server).ForwardRPC 2020-07-08 11:05:44 -04:00
auto_encrypt_endpoint_test.go Allow setting verify_incoming* when using auto_encrypt or auto_config (#8394) 2020-07-30 10:15:12 -04:00
autopilot.go Merge pull request #9198 from hashicorp/mkcp/telemetry/add-all-metric-definitions 2020-11-17 00:13:51 +00:00
autopilot_oss.go Merge pull request #9103 from hashicorp/feature/autopilot-mod 2020-11-09 16:30:48 +00:00
autopilot_test.go Merge pull request #9103 from hashicorp/feature/autopilot-mod 2020-11-09 16:30:48 +00:00
catalog_endpoint.go Merge pull request #9261 from hashicorp/telemetry/fix-missing-and-stale-docs-2 2020-11-23 21:34:59 +00:00
catalog_endpoint_test.go test: update tags for database service registrations and queries (#8693) 2020-09-16 14:05:01 -04:00
client.go Merge pull request #9198 from hashicorp/mkcp/telemetry/add-all-metric-definitions 2020-11-17 00:13:51 +00:00
client_serf.go Add per-agent reconnect timeouts (#8781) 2020-10-08 15:02:19 -04:00
client_test.go Merge pull request #9103 from hashicorp/feature/autopilot-mod 2020-11-09 16:30:48 +00:00
cluster_test.go A couple testing helper updates (#7694) 2020-04-27 12:17:38 -04:00
config.go Refactor to call non-voting servers read replicas (#9191) 2020-11-17 15:54:38 +00:00
config_endpoint.go Merge pull request #9198 from hashicorp/mkcp/telemetry/add-all-metric-definitions 2020-11-17 00:13:51 +00:00
config_endpoint_test.go connect: intentions are now managed as a new config entry kind "service-intentions" (#8834) 2020-10-06 13:24:05 -05:00
config_replication.go server: config entry replication now correctly uses namespaces in comparisons (#9024) 2020-10-23 13:41:54 -05:00
config_replication_test.go server: config entry replication now correctly uses namespaces in comparisons (#9024) 2020-10-23 13:41:54 -05:00
connect_ca_endpoint.go Merge pull request #9009 from hashicorp/update-secondary-ca 2020-11-30 22:50:26 +00:00
connect_ca_endpoint_test.go Merge pull request #9318 from hashicorp/ca-update-followup 2020-12-02 20:18:26 +00:00
consul_ca_delegate.go connect: derive connect certificate serial numbers from a memdb index instead of the provider table max index (#7011) 2020-01-09 16:32:19 +01:00
coordinate_endpoint.go Move RPC router from Client/Server and into BaseDeps (#8559) 2020-08-27 11:23:52 -04:00
coordinate_endpoint_test.go Replace goe/verify.Values with testify/require.Equal (#7993) 2020-06-02 12:41:25 -04:00
discovery_chain_endpoint.go Add method for downstreams from disco chain 2020-10-05 10:24:50 -06:00
discovery_chain_endpoint_test.go Enable gofmt simplify 2020-06-16 13:21:11 -04:00
enterprise_client_oss.go Sync some feature flag support from enterprise (#7167) 2020-01-29 13:21:38 -05:00
enterprise_config_oss.go Add EnterpriseConfig stubs (#6566) 2019-10-01 14:34:55 -04:00
enterprise_server_oss.go connect: various changes to make namespaces for intentions work more like for other subsystems (#8194) 2020-06-26 16:59:15 -05:00
federation_state_endpoint.go Merge pull request #9198 from hashicorp/mkcp/telemetry/add-all-metric-definitions 2020-11-17 00:13:51 +00:00
federation_state_endpoint_test.go Enable gofmt simplify 2020-06-16 13:21:11 -04:00
federation_state_replication.go testing: Fix govet errors 2020-08-21 18:01:55 +01:00
federation_state_replication_test.go fix flaky TestReplication_FederationStates test due to race conditions (#7612) 2020-04-09 15:42:41 -05:00
filter.go Updates to the Txn API for namespaces (#7172) 2020-01-30 13:12:26 -05:00
filter_test.go Enable gofmt simplify 2020-06-16 13:21:11 -04:00
flood.go agent: refactor to use a single addrFn 2020-05-05 21:08:10 +02:00
gateway_locator.go Rename (*Server).forward to (*Server).ForwardRPC 2020-07-08 11:05:44 -04:00
gateway_locator_test.go Merge pull request #9025 from hashicorp/dnephin/streaming-options 2020-10-29 19:31:08 +00:00
health_endpoint.go Rename (*Server).forward to (*Server).ForwardRPC 2020-07-08 11:05:44 -04:00
health_endpoint_test.go test: update tags for database service registrations and queries (#8693) 2020-09-16 14:05:01 -04:00
helper_test.go Merge pull request #9103 from hashicorp/feature/autopilot-mod 2020-11-09 16:30:48 +00:00
intention_endpoint.go server: deletions of intentions by name using the intention API is now idempotent (#9278) 2021-01-04 17:27:50 +00:00
intention_endpoint_test.go server: deletions of intentions by name using the intention API is now idempotent (#9278) 2021-01-04 17:27:50 +00:00
internal_endpoint.go Add protocol to the topology endpoint response (#8868) 2020-10-08 17:31:54 -06:00
internal_endpoint_test.go Add HasExact to topology endpoint (#9010) 2020-10-23 10:45:41 -06:00
issue_test.go Merge pull request #9025 from hashicorp/dnephin/streaming-options 2020-10-29 19:31:08 +00:00
kvs_endpoint.go Merge pull request #9198 from hashicorp/mkcp/telemetry/add-all-metric-definitions 2020-11-17 00:13:51 +00:00
kvs_endpoint_test.go ci: Enabled SA2002 staticcheck check 2020-06-05 17:50:11 -04:00
leader.go Merge pull request #9009 from hashicorp/update-secondary-ca 2020-11-30 22:50:26 +00:00
leader_connect.go Merge pull request #9009 from hashicorp/update-secondary-ca 2020-11-30 22:50:26 +00:00
leader_connect_ca.go Merge pull request #9318 from hashicorp/ca-update-followup 2020-12-02 20:18:26 +00:00
leader_connect_ca_test.go Merge pull request #9009 from hashicorp/update-secondary-ca 2020-11-30 22:50:26 +00:00
leader_connect_test.go Merge pull request #9009 from hashicorp/update-secondary-ca 2020-11-30 22:50:26 +00:00
leader_federation_state_ae.go testing: Fix govet errors 2020-08-21 18:01:55 +01:00
leader_federation_state_ae_test.go Enable gofmt simplify 2020-06-16 13:21:11 -04:00
leader_intentions.go server: skip deleted and deleting namespaces when migrating intentions to config entries (#9186) 2020-11-13 19:57:12 +00:00
leader_intentions_oss.go server: skip deleted and deleting namespaces when migrating intentions to config entries (#9186) 2020-11-13 19:57:12 +00:00
leader_intentions_oss_test.go server: skip deleted and deleting namespaces when migrating intentions to config entries (#9186) 2020-11-13 19:57:12 +00:00
leader_intentions_test.go server: skip deleted and deleting namespaces when migrating intentions to config entries (#9186) 2020-11-13 19:57:12 +00:00
leader_routine_manager.go server: skip deleted and deleting namespaces when migrating intentions to config entries (#9186) 2020-11-13 19:57:12 +00:00
leader_routine_manager_test.go server: skip deleted and deleting namespaces when migrating intentions to config entries (#9186) 2020-11-13 19:57:12 +00:00
leader_test.go Refactor to call non-voting servers read replicas (#9191) 2020-11-17 15:54:38 +00:00
logging.go Allow users to configure either unstructured or JSON logging (#7130) 2020-01-28 17:50:41 -06:00
logging_test.go Allow users to configure either unstructured or JSON logging (#7130) 2020-01-28 17:50:41 -06:00
merge.go agent: don't let left nodes hold onto their node-id (#7747) 2020-05-04 18:39:08 +02:00
merge_test.go Skips unique node ID check for old versions of Consul. 2017-09-05 22:57:29 -07:00
operator_autopilot_endpoint.go Prevent panic if autopilot health is requested prior to leader establishment finishing. (#9204) 2020-11-16 22:08:44 +00:00
operator_autopilot_endpoint_test.go Merge pull request #9103 from hashicorp/feature/autopilot-mod 2020-11-09 16:30:48 +00:00
operator_endpoint.go Allow users to configure either unstructured or JSON logging (#7130) 2020-01-28 17:50:41 -06:00
operator_raft_endpoint.go Merge pull request #9103 from hashicorp/feature/autopilot-mod 2020-11-09 16:30:48 +00:00
operator_raft_endpoint_test.go Enable gofmt simplify 2020-06-16 13:21:11 -04:00
options.go subscribe: add a stateless subscribe service for the gRPC server 2020-10-06 12:49:35 -04:00
prepared_query_endpoint.go Merge pull request #9198 from hashicorp/mkcp/telemetry/add-all-metric-definitions 2020-11-17 00:13:51 +00:00
prepared_query_endpoint_test.go Merge pull request #9103 from hashicorp/feature/autopilot-mod 2020-11-09 16:30:48 +00:00
raft_rpc.go agent: move conn pool for muxed connections into separate pkg 2017-06-21 05:42:39 +02:00
replication.go lib/retry: Refactor to reduce the interface surface 2020-10-04 18:12:42 -04:00
replication_test.go Allow users to configure either unstructured or JSON logging (#7130) 2020-01-28 17:50:41 -06:00
rpc.go Special case the error returned when we have a Raft leader but are not tracking it in the ServerLookup (#9487) 2021-01-04 19:05:53 +00:00
rpc_test.go Special case the error returned when we have a Raft leader but are not tracking it in the ServerLookup (#9487) 2021-01-04 19:05:53 +00:00
rtt.go Added Coordinate.Node rpc endpoint and client api method 2017-10-26 19:16:40 -07:00
rtt_test.go Enable gofmt simplify 2020-06-16 13:21:11 -04:00
segment_oss.go Merge pull request #9198 from hashicorp/mkcp/telemetry/add-all-metric-definitions 2020-11-17 00:13:51 +00:00
serf_test.go pkg refactor 2017-06-10 18:52:45 +02:00
server.go Merge pull request #9009 from hashicorp/update-secondary-ca 2020-11-30 22:50:26 +00:00
server_connect.go Merge pull request #9009 from hashicorp/update-secondary-ca 2020-11-30 22:50:26 +00:00
server_lookup.go Fix ACL mode advertisement and detection (#7451) 2020-03-16 12:54:45 -04:00
server_lookup_test.go ci: enable SA4006 staticcheck check 2020-06-16 13:10:11 -04:00
server_oss.go Merge pull request #9103 from hashicorp/feature/autopilot-mod 2020-11-09 16:30:48 +00:00
server_register.go server: remove config entry CAS in legacy intention API bridge code (#9151) 2020-11-13 20:42:57 +00:00
server_serf.go Refactor to call non-voting servers read replicas (#9191) 2020-11-17 15:54:38 +00:00
server_test.go Merge pull request #9009 from hashicorp/update-secondary-ca 2020-11-30 22:50:26 +00:00
session_endpoint.go Merge pull request #9198 from hashicorp/mkcp/telemetry/add-all-metric-definitions 2020-11-17 00:13:51 +00:00
session_endpoint_test.go ci: update to Go 1.15.4 and alpine:3.12 (#9036) 2020-11-13 18:03:37 +00:00
session_timers.go address review comments 2017-07-07 09:22:34 +02:00
session_timers_test.go rpc: refactor sessionTimers and fix racy tests 2017-07-07 09:22:34 +02:00
session_ttl.go Merge pull request #9261 from hashicorp/telemetry/fix-missing-and-stale-docs-2 2020-11-23 21:34:59 +00:00
session_ttl_test.go OSS Modifications necessary for sessions namespacing 2019-11-25 12:07:04 -05:00
snapshot_endpoint.go Special case the error returned when we have a Raft leader but are not tracking it in the ServerLookup (#9487) 2021-01-04 19:05:53 +00:00
snapshot_endpoint_test.go pool: remove useTLS and ForceTLS 2020-05-29 08:21:24 +02:00
stats_fetcher.go Merge pull request #9103 from hashicorp/feature/autopilot-mod 2020-11-09 16:30:48 +00:00
stats_fetcher_test.go Merge pull request #9103 from hashicorp/feature/autopilot-mod 2020-11-09 16:30:48 +00:00
status_endpoint.go Merge pull request #9103 from hashicorp/feature/autopilot-mod 2020-11-09 16:30:48 +00:00
status_endpoint_test.go pool: remove useTLS and ForceTLS 2020-05-29 08:21:24 +02:00
subscribe_backend.go Merge pull request #9073 from hashicorp/dnephin/backport-streaming-namespaces 2020-11-05 19:19:49 +00:00
system_metadata.go connect: intentions are now managed as a new config entry kind "service-intentions" (#8834) 2020-10-06 13:24:05 -05:00
system_metadata_test.go connect: intentions are now managed as a new config entry kind "service-intentions" (#8834) 2020-10-06 13:24:05 -05:00
txn_endpoint.go Merge pull request #9198 from hashicorp/mkcp/telemetry/add-all-metric-definitions 2020-11-17 00:13:51 +00:00
txn_endpoint_test.go Sync of OSS changes to support namespaces (#6909) 2019-12-09 21:26:41 -05:00
util.go Move RPC router from Client/Server and into BaseDeps (#8559) 2020-08-27 11:23:52 -04:00
util_test.go Remove bytesToUint64 from agent/consul 2020-06-18 12:45:43 -04:00