Remove locks from `OAuth2Client`
See original GitHub issueOAuth2Client uses ~a dedicated thread pool~ locks and optionally requires a dedicated thread pool(ref. SerialFuture.java) to solve the concurrency issue related to access token refresh where multiple requests try to update the same token concurrently after it gets expired.
We may want to remove the use of a dedicated thread pool and locks while leaving the code fully asynchronous.
Refer to this thread for the direction of improvement.
Issue Analytics
- State:
- Created 2 years ago
- Reactions:1
- Comments:11 (8 by maintainers)
Top Results From Across the Web
oauth2client.client.Storage
Store and retrieve a single credential. This class supports locking such that multiple processes and threads can operate on a single store.
Read more >oauth2client.client module - Read the Docs
Delete credential. Frees any resources associated with storing the credential. The Storage lock must not be held when this is called.
Read more >oauth2client Documentation - Read the Docs
The lock will be acquired before anything is written or read from the dictionary. locked_delete(). Remove the credentials from the dictionary, ...
Read more >How to prevent "ImportError: No module named oauth2client ...
I have this problem and solved by installing oauth2client with pip3 : pip3 install --upgrade oauth2client.
Read more >client.py - Google Git
from oauth2client import GOOGLE_TOKEN_INFO_URI. from oauth2client._helpers import _from_bytes ... around for now, but will remove it in the future.
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found

Thanks, @trustin. I will send a PR next week!
@ks-yim I’d like to encourage you to send out a draft PR that shows your proposal so we can compare the old and new implementations. 🚀