You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I got the following error when I run a heavy load job which cause a TIMEOUT. Such that the jobComplete is false. And the jobReference is undefined in this case. https://cloud.google.com/bigquery/querying-data
TypeError: Cannot read property 'jobId' of undefined at responseHandler (.........../node_modules/gcloud/lib/bigquery/index.js:394:43)
If the query timeout expires before the query has finished, the method will return jobComplete=false, and you must call jobs.getQueryResults as described next. The query job will continue to run even after the timeout period until it finishes, either successfully or because an error has occurred.
I can't reproduce so far. I ran a query and specified timeoutMs: 0 to force a jobComplete = false. The response from the API returned, as expected, jobComplete = false, but jobReference was always present.
jobReference: Reference to the Job that was created to run the query. This field will be present even if the original request timed out...
I'm not sure how the response could have come back without that to cause that error. Can you try to reproduce the error using our master branch (npm install --save googlecloudplatform/gcloud-node), and let me know if you still get the error?
I'm unfortunately still unable to reproduce. According to the docs and in my experience, a jobReference is always returned. @jdcc or @sunnychow would one of you be able to provide a consistently reproducible query I can run from a query on public data? As an example, something like SELECT url FROM [publicdata:samples.github_nested]. Until then, I'm unfortunately unsure how to resolve.
I'm seeing it consistently on my system. With my data, of course. I'll see if I can generate an example with public data. Meantime, could you put a guard in the code to check when this situation occurs and output to the console? At is is, we can't even tell which of the queries is the one that is timing out.
If as you say, this situation has not happened in your experience, then that message will never trigger. No harm, no foul. If, on the other hand, the message does trigger, then we can provide you with more details to help resolve the issue.
The error message I am seeing is:
TypeError: Cannot read property 'jobId' of undefined
at responseHandler (/usr/local/brightcove/bigquery-metrics/node_modules/gcloud/lib/bigquery/index.js:384:43)
at /usr/local/brightcove/bigquery-metrics/node_modules/gcloud/lib/common/util.js:672:11
at Object.handleResp (/usr/local/brightcove/bigquery-metrics/node_modules/gcloud/lib/common/util.js:193:3)
at Request._callback (/usr/local/brightcove/bigquery-metrics/node_modules/gcloud/lib/common/util.js:667:12)
at Request.self.callback (/usr/local/brightcove/bigquery-metrics/node_modules/gcloud/node_modules/request/request.js:354:22)
at Request.EventEmitter.emit (events.js:98:17)
at Request.<anonymous> (/usr/local/brightcove/bigquery-metrics/node_modules/gcloud/node_modules/request/request.js:1207:14)
at Request.EventEmitter.emit (events.js:117:20)
at IncomingMessage.<anonymous> (/usr/local/brightcove/bigquery-metrics/node_modules/gcloud/node_modules/request/request.js:1153:12)
at IncomingMessage.EventEmitter.emit (events.js:117:20)
A new error should come through when this issue appears. You can log and paste the error.response property here to help us see what the API returns.
@jgeewax do you know someone who can help us with this issue? In summary, when calling BigQuery#query, there is evidently sometimes a response from the API (either Jobs.query or Jobs.getQueryResults) that doesn't include jobReference.
According to the JSON API docs, jobReference is guaranteed to exist, but as seen here, it's not coming back.
TypeError: undefined is not a function
at responseHandler (/Users/gquinones/work/bigquery-metrics/node_modules/gcloud/lib/bigquery/index.js:389:15)
at /Users/gquinones/work/bigquery-metrics/node_modules/gcloud/lib/common/util.js:684:11
at Object.handleResp (/Users/gquinones/work/bigquery-metrics/node_modules/gcloud/lib/common/util.js:205:3)
at Request._callback (/Users/gquinones/work/bigquery-metrics/node_modules/gcloud/lib/common/util.js:679:12)
at Request.self.callback (/Users/gquinones/work/bigquery-metrics/node_modules/gcloud/node_modules/request/request.js:354:22)
at Request.emit (events.js:98:17)
at Request. (/Users/gquinones/work/bigquery-metrics/node_modules/gcloud/node_modules/request/request.js:1207:14)
at Request.emit (events.js:117:20)
at IncomingMessage. (/Users/gquinones/work/bigquery-metrics/node_modules/gcloud/node_modules/request/request.js:1153:12)
at IncomingMessage.emit (events.js:117:20)
Activity
stephenplusplus commentedon Mar 11, 2015
Is this fixed in #431?
sunnychow commentedon Mar 12, 2015
It's another issues. it's not fixed in #431
I want to ask the response from google bigquery, according to https://cloud.google.com/bigquery/querying-data
I have tested on it before, the response does not return the jobReference.jobId. So it cause undefined error in this line https://github.com/GoogleCloudPlatform/gcloud-node/blob/v0.12.0/lib/bigquery/index.js#L394
stephenplusplus commentedon Apr 21, 2015
Okay, thanks for explaining, and sorry for the delay. I'll take a look at this asap.
stephenplusplus commentedon Apr 21, 2015
I can't reproduce so far. I ran a query and specified
timeoutMs: 0to force a jobComplete = false. The response from the API returned, as expected,jobComplete = false, butjobReferencewas always present.According to the API docs (Search "jobReference": https://cloud.google.com/bigquery/docs/reference/v2/jobs/query):
I'm not sure how the response could have come back without that to cause that error. Can you try to reproduce the error using our master branch (
npm install --save googlecloudplatform/gcloud-node), and let me know if you still get the error?jdcc commentedon Apr 21, 2015
Update: Sorry, I see now that this is a different issue with the same symptoms. Move if desired.
I can reproduce on master (b094aa2) with this query:
and this code:
The first query will succeed, and the second will hit this:
jdcc commentedon Apr 21, 2015
This is what the response object looks like for the second query:
stephenplusplus commentedon Jun 8, 2015
Sorry for the slow attention to this issue, @jdcc. I'll be taking another look today to try to get to the bottom of this.
stephenplusplus commentedon Jun 8, 2015
I'm unfortunately still unable to reproduce. According to the docs and in my experience, a
jobReferenceis always returned. @jdcc or @sunnychow would one of you be able to provide a consistently reproducible query I can run from a query on public data? As an example, something likeSELECT url FROM [publicdata:samples.github_nested]. Until then, I'm unfortunately unsure how to resolve.gquinones commentedon Jun 10, 2015
I'm seeing it consistently on my system. With my data, of course. I'll see if I can generate an example with public data. Meantime, could you put a guard in the code to check when this situation occurs and output to the console? At is is, we can't even tell which of the queries is the one that is timing out.
If as you say, this situation has not happened in your experience, then that message will never trigger. No harm, no foul. If, on the other hand, the message does trigger, then we can provide you with more details to help resolve the issue.
The error message I am seeing is:
stephenplusplus commentedon Jun 10, 2015
@gquinones I've put up a repo for debugging:
stephenplusplus/gcloud-node-bigquery-debug. You can install this with npm in your project to debug:A new error should come through when this issue appears. You can log and paste the
error.responseproperty here to help us see what the API returns.@jgeewax do you know someone who can help us with this issue? In summary, when calling
BigQuery#query, there is evidently sometimes a response from the API (eitherJobs.queryorJobs.getQueryResults) that doesn't includejobReference.According to the JSON API docs,
jobReferenceis guaranteed to exist, but as seen here, it's not coming back.gquinones commentedon Jun 10, 2015
@stephenplusplus Will do.
gquinones commentedon Jun 10, 2015
@stephenplusplus Bad news, I'm afraid:
TypeError: undefined is not a function
at responseHandler (/Users/gquinones/work/bigquery-metrics/node_modules/gcloud/lib/bigquery/index.js:389:15)
at /Users/gquinones/work/bigquery-metrics/node_modules/gcloud/lib/common/util.js:684:11
at Object.handleResp (/Users/gquinones/work/bigquery-metrics/node_modules/gcloud/lib/common/util.js:205:3)
at Request._callback (/Users/gquinones/work/bigquery-metrics/node_modules/gcloud/lib/common/util.js:679:12)
at Request.self.callback (/Users/gquinones/work/bigquery-metrics/node_modules/gcloud/node_modules/request/request.js:354:22)
at Request.emit (events.js:98:17)
at Request. (/Users/gquinones/work/bigquery-metrics/node_modules/gcloud/node_modules/request/request.js:1207:14)
at Request.emit (events.js:117:20)
at IncomingMessage. (/Users/gquinones/work/bigquery-metrics/node_modules/gcloud/node_modules/request/request.js:1153:12)
at IncomingMessage.emit (events.js:117:20)
38 remaining items
test: retry tests that intermittently timeout (#432)
docs: update return type in jsdoc for Buffers (#432)
chore: regenerate synth.metadata (#432)
docs: update return type in jsdoc for Buffers (#432)
chore: regenerate synth.metadata (#432)
Update Conformance Tests (#432)
chore: regenerate synth.metadata (#432)
chore: migrate code from googleapis/gcp-metadata (#53)
Release @google-cloud/pubsub v0.23.0 (#432)
build: remove verbose logging from test scripts (#432)
build: Add docuploader credentials to node publish jobs (#432)
build: Add docuploader credentials to node publish jobs (#432)
Release @google-cloud/pubsub v0.23.0 (#432)
build: Add docuploader credentials to node publish jobs (#432)
build: Add docuploader credentials to node publish jobs (googleapis#432)