-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
feat(bigquery): add timeout parameter to QueryJob.done() method #9875
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
plamut
added
type: feature request
‘Nice-to-have’ improvement, new feature or different behavior or design.
api: bigquery
Issues related to the BigQuery API.
labels
Nov 21, 2019
googlebot
added
the
cla: yes
This human has signed the Contributor License Agreement.
label
Nov 21, 2019
tswast
reviewed
Nov 27, 2019
This was referenced Dec 4, 2019
plamut
force-pushed
the
iss-7831
branch
6 times, most recently
from
December 11, 2019 07:48
87d74f7
to
2044a84
Compare
plamut
added
the
kokoro:force-run
Add this label to force Kokoro to re-run the tests.
label
Dec 11, 2019
yoshi-kokoro
removed
the
kokoro:force-run
Add this label to force Kokoro to re-run the tests.
label
Dec 11, 2019
A snippets test failed, seems like flakiness (it passed on several previous runs). Re-running. |
This was referenced Dec 11, 2019
In addition, fix the timeout logic in QueryJob.done() - the timeouts are in different units (seconds vs. milliseconds)
The new timeout feature requires more recent versions of the API core and google auth dependencies.
tswast
requested changes
Dec 18, 2019
If the server-side processing timeout is used (the `timeout_ms` API parameter) as the total timeout, it should be slightly longer than the actual server-side timeout in order to not timeout the connection while there might still be chance that the server-side processing has actually completed.
tswast
approved these changes
Dec 19, 2019
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.
Thanks!
This was referenced Jan 29, 2020
[CHANGE ME] Re-generated container to pick up changes in the API or client library generator.
#10256
Closed
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
api: bigquery
Issues related to the BigQuery API.
cla: yes
This human has signed the Contributor License Agreement.
type: feature request
‘Nice-to-have’ improvement, new feature or different behavior or design.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #7831.
Requires #9873.
This is a proposed fix for the
done()
method getting stuck. It makes sure that the underlying HTTP request does not block indefinitely when retrieving query results, and that any underlyingrequests
exceptions are retriable.TODO
timeout
parameter to_http.JSONConnection.api_request()
(feat(core): add timeout param to JSONConnection.api_request() #9915)timeout
parameter togoogle.auth.transport.AuthorizedSession.request()
that BigQuery client uses as its transport (feat: add timeout parameter to AuthorizedSession.request() google-auth-library-python#406)setup.py
to depend on the newapi_core
version, and the newauth
library version (once the timeout-related changes are merged, and the new versions of those libraries released).