headscale/hscontrol/state
Kristoffer Dalby f497b4efd7 state, poll: refcount poll sessions, mark offline only on last release
A cancelled map request whose handler ran late could Connect after the
live session, steal the newest SessionEpoch, then exit without
disconnecting (stillConnected path); the live session's final
Disconnect was rejected as stale and the node stayed online forever
(relogin flake). Counted releases are order-independent, so overlapping
sessions cannot strand a node in either direction.
2026-06-11 16:28:25 +02:00
..
auth_cache_test.go state: replace zcache with bounded LRU for auth cache 2026-04-10 14:09:57 +01:00
auth_tagged_expiry_test.go state: keep nil expiry for nodes that stay tagged on reauth 2026-06-08 10:04:49 +02:00
autoapprove_test.go state: batch route auto-approval into one policy rebuild 2026-06-08 10:04:49 +02:00
connect_test.go state, poll: refcount poll sessions, mark offline only on last release 2026-06-11 16:28:25 +02:00
debug.go all: apply godoc [Name] link conventions across comments 2026-05-19 09:55:22 +02:00
debug_test.go hscontrol/state: make NodeStore batch configuration tunable (#2886) 2025-11-28 16:38:29 +01:00
endpoint_test.go hscontrol/state: make NodeStore batch configuration tunable (#2886) 2025-11-28 16:38:29 +01:00
ephemeral_test.go all: upgrade to Go 1.26rc2 and modernize codebase 2026-02-08 12:35:23 +01:00
ha_health.go all: apply godoc [Name] link conventions across comments 2026-05-19 09:55:22 +02:00
maprequest.go all: apply godoc [Name] link conventions across comments 2026-05-19 09:55:22 +02:00
maprequest_noop_test.go state: skip database persist for keepalive-only map requests 2026-06-08 10:04:49 +02:00
maprequest_test.go all: apply godoc [Name] link conventions across comments 2026-05-19 09:55:22 +02:00
node_store.go state: signal NodeStore shutdown without closing writeQueue 2026-06-08 10:04:49 +02:00
node_store_hostname_test.go state: auto-bump GivenName on collision and add SetGivenName 2026-04-18 15:12:21 +01:00
node_store_stop_test.go state: signal NodeStore shutdown without closing writeQueue 2026-06-08 10:04:49 +02:00
node_store_test.go types: persist Node JSON slices via named IsZero types 2026-05-15 11:21:58 +02:00
persist_clobber_test.go state: persist live NodeStore node in persistNodeToDB 2026-06-08 10:04:49 +02:00
persist_test.go hscontrol: satisfy golangci-lint on changed lines 2026-06-09 15:21:18 +02:00
ping.go all: apply godoc [Name] link conventions across comments 2026-05-19 09:55:22 +02:00
ping_test.go state: drain pending pings on Close 2026-04-17 16:31:49 +01:00
primaries_property_test.go state, servertest: property-test HA election + invariant catalogue 2026-05-18 17:18:08 +02:00
primaries_test.go state, servertest: property-test HA election + invariant catalogue 2026-05-18 17:18:08 +02:00
ssh_check_test.go state, policy, noise: implement SSH check period auto-approval 2026-02-25 21:28:05 +01:00
state.go state, poll: refcount poll sessions, mark offline only on last release 2026-06-11 16:28:25 +02:00
tags.go all: apply godoc [Name] link conventions across comments 2026-05-19 09:55:22 +02:00
test_helpers.go all: apply godoc [Name] link conventions across comments 2026-05-19 09:55:22 +02:00