flytekit icon indicating copy to clipboard operation
flytekit copied to clipboard

Bugfix: AuthorizationClient hangs on invalid request

Open mys007 opened this issue 5 months ago • 0 comments

Why are the changes needed?

AuthorizationClient.get_creds_from_remote() is written in such a way that it waits for exactly one request from the browser. But if the request is invalid (i.e. does not contain the credentials), nothing is inserted in the queue and a follow-up call to auth_code = q.get() hangs forever.

I have observed this happening when the first request succeeds but another (e.g. grpc) exception is raised, the authorization is retried and in the meantime, the browser tries to get "favicon.ico" from the callback server.

What changes were proposed in this pull request?

I added a loop which waits for a valid request.

How was this patch tested?

Setup process

Screenshots

Check all the applicable boxes

  • [ ] I updated the documentation accordingly.
  • [ ] All new and existing tests passed.
  • [ ] All commits are signed-off.

Related PRs

Docs link

Summary by Bito

This pull request fixes a critical bug in the AuthorizationClient that caused indefinite hanging on invalid requests. A loop has been implemented to wait for valid requests, enhancing the robustness and reliability of the authorization process.

mys007 avatar Jul 29 '25 19:07 mys007