-
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
BigQuery: QueryJob().done()
method gets stuck
#7831
Comments
oh i forgot to mention that i previously set:
to allow api calls to complete quickly instead of using the built-in timeout |
i realized that the internally, bigquery uses the is there a way for me to set such parameters via the BigQuery api? |
First, setting the
You can tweak the |
the timeout derived from my workaround for now is to run |
Rather than looping on |
thanks @tseaver that seems like a pretty good solution. the main drawback is that i don't want a possibly a feature request: can a similar |
never mind -- the mechanism in
timeout duration, but if it gets stuck forever, so does the rest of the program. since the target function (done_or_raise ) simply invokes done() (here:
_blocking_poll is just a more complicated way of calling done() directly.
since there's definitely something broken here -- maybe just on my end, since nobody else seems to be having jobs that get stuck forever? haven't figure out what it is yet, but i'm going to stick with calling |
This is a good request. My suspicion is that the GET job resource request is hanging. We should also investigate the |
yes -- client-side timeout support would make this library much more resilient. |
FWIW, the reported behavior can be reproduced with a small trick - calling If re-enabling the connection, a subsequent retry eventually kicks in at some point, and the |
👋 @igor47! Nice seeing you here. |
My environment:
here's a code sample:
in the usual case, the output looks something like this:
however, sometimes it looks like this:
and then the output proceeds no further.
as best as i can tell, the
.done()
function is getting stuck somewhere, without ever even issuing theurllib3
query (since there is nourllib3
log line.when this happens, my task just becomes stuck indefinitely.
i'm running this in containers, so i don't have access to good debug tools but might be willing to install them if necessary.
i'm going to try to read the code for
.done()
and see if i can spot what's happening, but wanted to open the issue to get additional eyes on it.this happens pretty sporadically -- like, maybe one out of 50 jobs get stuck -- which makes debugging more difficult.
The text was updated successfully, but these errors were encountered: