open-nomad/nomad/structs
Michael Schurter f8884d8b52
client/metadata: fix crasher caused by AllowStale = false (#16549)
Fixes #16517

Given a 3 Server cluster with at least 1 Client connected to Follower 1:

If a NodeMeta.{Apply,Read} for the Client request is received by
Follower 1 with `AllowStale = false` the Follower will forward the
request to the Leader.

The Leader, not being connected to the target Client, will forward the
RPC to Follower 1.

Follower 1, seeing AllowStale=false, will forward the request to the
Leader.

The Leader, not being connected to... well hoppefully you get the
picture: an infinite loop occurs.
2023-03-20 16:32:32 -07:00
..
config artifact: protect against unbounded artifact decompression (1.5.0) (#16151) 2023-02-14 09:28:39 -06:00
acl.go acl: add validation to binding rule selector on upsert. (#16210) 2023-02-17 15:38:55 +01:00
acl_test.go acl: add validation to binding rule selector on upsert. (#16210) 2023-02-17 15:38:55 +01:00
alloc.go Add Namespace, Job and Group to envoy stats (#14311) 2022-09-22 10:38:21 -04:00
alloc_test.go
autopilot.go migrate autopilot implementation to raft-autopilot (#14441) 2022-09-01 14:27:10 -04:00
batch_future.go
batch_future_test.go
bitmap.go scheduling: prevent self-collision in dynamic port network offerings (#16401) 2023-03-09 10:09:54 -05:00
bitmap_test.go
check_test.go cleanup: use constants for on_update values 2022-07-21 13:09:47 -05:00
checks.go cleanup: use constants for on_update values 2022-07-21 13:09:47 -05:00
connect.go
connect_test.go
consul.go cleanup: rename Equals to Equal for consistency (#14759) 2022-10-10 09:28:46 -05:00
consul_oss.go
consul_oss_test.go
consul_test.go cleanup: rename Equals to Equal for consistency (#14759) 2022-10-10 09:28:46 -05:00
csi.go scheduler: annotate tasksUpdated with reason and purge DeepEquals (#16421) 2023-03-14 09:46:00 -05:00
csi_test.go scheduler: annotate tasksUpdated with reason and purge DeepEquals (#16421) 2023-03-14 09:46:00 -05:00
devices.go scheduler: stopped-yet-running allocs are still running (#10446) 2022-09-13 12:52:47 -07:00
devices_test.go scheduler: stopped-yet-running allocs are still running (#10446) 2022-09-13 12:52:47 -07:00
diff.go Add option to expose workload token to task (#15755) 2023-02-02 10:59:14 -08:00
diff_test.go Add option to expose workload token to task (#15755) 2023-02-02 10:59:14 -08:00
encoding.go
errors.go Pre forwarding authentication (#15417) 2022-12-06 14:44:03 -05:00
errors_test.go
eval.go eval delete: move batching of deletes into RPC handler and state (#15117) 2022-11-14 14:08:13 -05:00
event.go events: add ACL binding rules to core events stream topics. (#15544) 2022-12-14 14:49:49 +01:00
extensions.go keyring: wrap root key in key encryption key (#14388) 2022-08-30 10:59:25 -04:00
funcs.go Add warnings to var put for non-alphanumeric keys. (#15933) 2023-02-13 16:14:59 -05:00
funcs_test.go Add warnings to var put for non-alphanumeric keys. (#15933) 2023-02-13 16:14:59 -05:00
generate.sh deps: upgrade to hashicorp/golang-lru/v2 (#16085) 2023-02-08 15:20:33 -06:00
handlers.go
job.go servicedisco: implicit constraint for nomad v1.4 when using nsd checks (#14868) 2022-10-11 08:21:42 -05:00
job_test.go servicedisco: implicit constraint for nomad v1.4 when using nsd checks (#14868) 2022-10-11 08:21:42 -05:00
keyring.go keyring: safely handle missing keys and restore GC (#15092) 2022-11-01 15:00:50 -04:00
network.go scheduling: prevent self-collision in dynamic port network offerings (#16401) 2023-03-09 10:09:54 -05:00
network_test.go scheduling: prevent self-collision in dynamic port network offerings (#16401) 2023-03-09 10:09:54 -05:00
node.go client/metadata: fix crasher caused by AllowStale = false (#16549) 2023-03-20 16:32:32 -07:00
node_class.go
node_class_test.go build: run gofmt on all go source files 2022-08-16 11:14:11 -05:00
node_test.go Dynamic Node Metadata (#15844) 2023-02-07 14:42:25 -08:00
operator.go renamed stanza to block for consistency with other projects (#15941) 2023-01-30 15:48:43 +01:00
search.go rename SecureVariables to Variables throughout 2022-08-26 16:06:24 -04:00
service_identities.go
service_registration.go cleanup: rename Equals to Equal for consistency (#14759) 2022-10-10 09:28:46 -05:00
service_registration_test.go cleanup: rename Equals to Equal for consistency (#14759) 2022-10-10 09:28:46 -05:00
services.go scheduler: annotate tasksUpdated with reason and purge DeepEquals (#16421) 2023-03-14 09:46:00 -05:00
services_test.go renamed stanza to block for consistency with other projects (#15941) 2023-01-30 15:48:43 +01:00
streaming_rpc.go
structs.go scheduler: annotate tasksUpdated with reason and purge DeepEquals (#16421) 2023-03-14 09:46:00 -05:00
structs_codegen.go
structs_oss.go
structs_periodic_test.go build: run gofmt on all go source files 2022-08-16 11:14:11 -05:00
structs_test.go scheduler: annotate tasksUpdated with reason and purge DeepEquals (#16421) 2023-03-14 09:46:00 -05:00
testing.go
uuid.go tests: don't mutate global structs in core scheduler tests (#16120) 2023-02-10 09:26:00 -05:00
variables.go [feat] Nomad Job Templates (#15746) 2023-02-02 10:37:40 -05:00
variables_test.go [feat] Nomad Job Templates (#15746) 2023-02-02 10:37:40 -05:00
vault.go
volume_test.go scheduler: annotate tasksUpdated with reason and purge DeepEquals (#16421) 2023-03-14 09:46:00 -05:00
volumes.go scheduler: annotate tasksUpdated with reason and purge DeepEquals (#16421) 2023-03-14 09:46:00 -05:00
workload_id.go Add option to expose workload token to task (#15755) 2023-02-02 10:59:14 -08:00
workload_id_test.go Add option to expose workload token to task (#15755) 2023-02-02 10:59:14 -08:00