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

authservice node peek cancelation issues #256

Closed
halkyon opened this issue Oct 6, 2022 · 1 comment
Closed

authservice node peek cancelation issues #256

halkyon opened this issue Oct 6, 2022 · 1 comment

Comments

@halkyon
Copy link
Contributor

halkyon commented Oct 6, 2022

An authservice node will issue a peek request to other nodes if it can't find a record. This is to ensure we cover the case of a user inserting an auth record in one region and retrieving in another region (e.g. insert on ap1, retrieve on us1 as the service is global), or the request goes to node (a) behind a load balancer/proxy but then the retrieval request goes to node (b).

We do a "broadcasted get" sending a peek request to all nodes and the first one to return a record wins, with the rest being canceled.

However, we noticed a few things:

Acceptance criteria:

  • Log does not show intentional peek cancellation errors.
  • as_badgerauth_peer_down metric is not be reported when we cancel peek requests.
@halkyon halkyon added bug Something isn't working authservice Needs Estimation labels Oct 6, 2022
@halkyon halkyon added this to the Auth Database Enhancements milestone Oct 6, 2022
@halkyon halkyon added this to Edge Team Oct 6, 2022
@halkyon halkyon moved this to Backlog in Edge Team Oct 6, 2022
@halkyon halkyon removed this from the Auth Database Enhancements milestone Oct 6, 2022
@zeebo
Copy link
Contributor

zeebo commented Oct 6, 2022

Figuring out a better strategy in DRPC for connection reuse in the presence of cancellation seems to be more and more important, and this seems like a great example problem to work on because we control all the components for debugging and inspection and it happens frequently. I think DRPC is currently a little bit too eager to close connections and could maybe delay the decision to close until right before it's about to used.

Happy to help out with this problem if it can be solved by improving DRPC cancellation 😄

@amwolff amwolff added this to the Auth Database Enhancements milestone Oct 7, 2022
@NiaStorj NiaStorj added the edge label Dec 12, 2022
@amwolff amwolff closed this as not planned Won't fix, can't repro, duplicate, stale Dec 13, 2023
@github-project-automation github-project-automation bot moved this from Backlog to Done in Edge Team Dec 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
No open projects
Status: Done
Development

No branches or pull requests

4 participants