Skip to content

Commit ef54121

Browse files
committed
use jobReference.jobId instead, to not include the "project-id:" prefix for Job constructor
current code use the job.id from metadata in jobs.list api response to construct a Job; however it has the full format of "project-id:jobid-........." the constructed Job from this full id format can't be used for further acesss, like job.get job.getQueryResults server side will return an "Invalid job ID" error; see this fixes #2736 the metadata response has jobReference.jobId is exactly needed here; { kind: 'bigquery#job', etag: '"cX5UmbB_R-S07ii743IKGH9YCYM/4xT3EKx31LcQTmnaqUafpQ2RHqU"', id: 'project-id:job_D3tTAICe8jSlPuOw8CSvLEKs7-0C', selfLink: 'https://www.googleapis.com/bigquery/v2/projects/<project-id>/jobs/job_D3tTAICe8jSlPuOw8CSvLEKs7-0C', jobReference: { projectId: '<project-id>', jobId: 'job_D3tTAICe8jSlPuOw8CSvLEKs7-0C' },
1 parent eccb085 commit ef54121

2 files changed

Lines changed: 7 additions & 4 deletions

File tree

packages/bigquery/src/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -806,7 +806,7 @@ BigQuery.prototype.getJobs = function(options, callback) {
806806
}
807807

808808
var jobs = (resp.jobs || []).map(function(jobObject) {
809-
var job = that.job(jobObject.id);
809+
var job = that.job(jobObject.jobReference.jobId);
810810
job.metadata = jobObject;
811811
return job;
812812
});

packages/bigquery/test/index.js

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1048,7 +1048,8 @@ describe('BigQuery', function() {
10481048

10491049
it('should return Job objects', function(done) {
10501050
bq.request = function(reqOpts, callback) {
1051-
callback(null, { jobs: [{ id: JOB_ID }] });
1051+
callback(null, { jobs: [{ id: JOB_ID,
1052+
jobReference: { jobId: JOB_ID } }] });
10521053
};
10531054

10541055
bq.getJobs(function(err, jobs) {
@@ -1059,7 +1060,8 @@ describe('BigQuery', function() {
10591060
});
10601061

10611062
it('should return apiResponse', function(done) {
1062-
var resp = { jobs: [{ id: JOB_ID }] };
1063+
var resp = { jobs: [{ id: JOB_ID,
1064+
jobReference: { jobId: JOB_ID } }] };
10631065

10641066
bq.request = function(reqOpts, callback) {
10651067
callback(null, resp);
@@ -1073,7 +1075,8 @@ describe('BigQuery', function() {
10731075
});
10741076

10751077
it('should assign metadata to the Job objects', function(done) {
1076-
var jobObjects = [{ a: 'b', c: 'd', id: JOB_ID }];
1078+
var jobObjects = [{ a: 'b', c: 'd', id: JOB_ID,
1079+
jobReference: { jobId: JOB_ID } }];
10771080

10781081
bq.request = function(reqOpts, callback) {
10791082
callback(null, { jobs: jobObjects });

0 commit comments

Comments
 (0)