You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailscale/control/controlclient
Maisem Ali be027a9899 control/controlclient: improve handling of concurrent lite map requests
This reverts commit 6eca47b16c and fixes forward.

Previously the first ever streaming MapRequest that a client sent would also
set ReadOnly to true as it didn't have any endpoints and expected/relied on the
map poll to restart as soon as it got endpoints. However with 48f6c1eba4,
we would no longer restart MapRequests as frequently as we used to, so control
would only ever get the first streaming MapRequest which had ReadOnly=true.

Control would treat this as an uninteresting request and would not send it
any further netmaps, while the client would happily stay in the map poll forever
while litemap updates happened in parallel.

This makes it so that we never set `ReadOnly=true` when we are doing a streaming
MapRequest. This is no longer necessary either as most endpoint discovery happens
over disco anyway.

Co-authored-by: Andrew Dunham <andrew@du.nham.ca>
Signed-off-by: Maisem Ali <maisem@tailscale.com>
1 year ago
..
auto.go control/controlclient: improve handling of concurrent lite map requests 1 year ago
client.go all: update copyright and license headers 1 year ago
controlclient_test.go all: update copyright and license headers 1 year ago
debug.go all: update copyright and license headers 1 year ago
direct.go control/controlclient: improve handling of concurrent lite map requests 1 year ago
direct_test.go all: implement preauth-key support with tailnet lock 1 year ago
map.go all: update copyright and license headers 1 year ago
map_test.go all: use tstest.Replace more 1 year ago
noise.go all: update copyright and license headers 1 year ago
noise_test.go all: update copyright and license headers 1 year ago
sign.go all: update copyright and license headers 1 year ago
sign_supported.go all: update copyright and license headers 1 year ago
sign_supported_test.go all: update copyright and license headers 1 year ago
sign_unsupported.go all: update copyright and license headers 1 year ago
status.go all: update copyright and license headers 1 year ago