Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement long poll for interactive login #727

Closed
juanfont opened this issue Aug 11, 2022 · 3 comments
Closed

Implement long poll for interactive login #727

juanfont opened this issue Aug 11, 2022 · 3 comments
Labels
enhancement New feature or request stale

Comments

@juanfont
Copy link
Owner

When using interactive login (i.e., the web + CLI or OIDC) for client registration, clients expect the control server to enter in a long poll until the client gets registered. This is shown in the mock control server tailscale has for testing https://github.com/tailscale/tailscale/blob/v1.28.0/tstest/integration/testcontrol/testcontrol.go#L451

If this long polling is not followed (or, as we are doing, an immediate response is given), the client will immediately retry... ad infinitum - hammering headscale with requests.

This is what is happening in #603 and #706.

The long-term solution is to implement some basic long poll here, that holds the request until the registration occurs (or the client closed the connection).

@juanfont juanfont added the enhancement New feature or request label Aug 11, 2022
@juanfont
Copy link
Owner Author

I have included a temporary solution in e1e3feb

(should a bit help in #603 and #706)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 2, 2023

This issue is stale because it has been open for 180 days with no activity.

@github-actions github-actions bot added the stale label Oct 2, 2023
@github-actions
Copy link
Contributor

This issue was closed because it has been inactive for 14 days since being marked as stale.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request stale
Projects
None yet
Development

No branches or pull requests

2 participants