-
Notifications
You must be signed in to change notification settings - Fork 1
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
[DOM-56006] Retry getting jwt token for reading timeout #141
[DOM-56006] Retry getting jwt token for reading timeout #141
Conversation
✅ Result of Pytest Coverage---------- coverage: platform linux, python 3.8.18-final-0 -----------
~ 67 passed in 15.60s ~ |
Have to loosen the version of openapi-client to solve pydantic version conflicts.
@@ -79,11 +79,11 @@ types-python-dateutil = "^2.8.19.14" | |||
vcrpy = "^5.0.0" | |||
|
|||
[tool.poetry.group.featurestore.dependencies] | |||
feast = "^0.35.0" | |||
feast = ">=0.36.0" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Upgrade to the latest to fix the fastapi vulnerabiliy
@@ -62,7 +62,7 @@ grpcio = "^1.56.2" | |||
isort = {extras = ["colors"], version = "^5.12.0"} | |||
mypy = "^1.4.1" | |||
mypy-extensions = "^1.0.0" | |||
openapi-python-client = "^0.11.6" | |||
openapi-python-client = ">=0.11.6" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To solve the pydantic version conflicts with feast
GitPython = "^3.1.41" | ||
|
||
[tool.poetry.group.vectordbs.dependencies] | ||
pinecone-client = ">=2.2.4" | ||
pinecone-client = "^2.2.4" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
DominoPineconeConfiguration is extended from OpenAPIConfiguration from pinecone client 2.x
@@ -13,6 +13,7 @@ | |||
|
|||
|
|||
@backoff.on_exception(backoff.expo, httpx.HTTPStatusError, max_time=2) | |||
@backoff.on_exception(backoff.expo, httpx.ReadTimeout, max_tries=2) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This line is for mitigating the read timeout exception when getting the jwt token.
All the other changes are for fixing the build failures caused by recent vulnerability.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you should be able to use a tuple of exceptions instead of having two wrappers.
@backoff.on_exception(backoff.expo, (httpx.HTTPStatusError, httpx.ReadTimeout), max_time=2)
def ...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I thought about that idea too. The two exception fail in different pace. HTTPStatusError fails fast, for ReadTimeout exception, it normally takes 5 seconds to fail.
Description
Seeing the reading timeout in the nightly system test. It's an exception safe to retry.
Related Issue
https://dominodatalab.atlassian.net/browse/DOM-56006
Type of Change
Checklist
CONTRIBUTING.md
guide.make codestyle
.