Daanish Millwalla
Daanish Millwalla

Reputation: 23

BigQuery returns 404 error on table that exists

com.google.api.client.googleapis.json.GoogleJsonResponseException: 404   
NOT_FOUND 
{ 
   "code" : 404, 
   "errors" : [ { 
     "domain" : "global", 
     "message" : "Not found: Table   
optimizehit.com:optimizehit-db:_026b772272a27a80bf416f682c0426cbb2061afe.anon1d35b89ee725c18278192da78ee38f63d0b749ca", 
 "reason" : "notFound" 
   } ], 
   "message" : "Not found: Table   
optimizehit.com:optimizehit-db:_026b772272a27a80bf416f682c0426cbb2061afe.anon1d35b89ee725c18278192da78ee38f63d0b749ca" 
} 

We are getting this error while querying a table that always exists in our dataset, so it's not a problem of the table missing as per the documentation of the error code.

Checking the dashboard also showed that the table exists, and querying it after a minute or so, it was working.

There is, however, a cron that updates this table with a query job with

writeDisposition set to WRITE_TRUNCATE.

Could this affect querying the table?

Edit: The time of this error was: August 5, 2015 at 6:48:39 PM UTC+5:30

Upvotes: 2

Views: 3184

Answers (1)

Matthew Wesley
Matthew Wesley

Reputation: 626

you're receiving the "not found" error not on the table FROM which you query, but instead on the anonymous table to which you are writing:

optimizehit.com:optimizehit-db:_026b772272a27a80bf416f682c0426cbb2061afe.anon1d35b89ee725c18278192da78ee38f63d0b749ca

As a BigQuery engineer, I looked into the history of this anonymous table and the jobs that operated on it. The job that would have used this anonymous table failed with a RATE_LIMIT_EXCEEDED error.

The configuration.query.destination_table fields would still contain the anonymous table reference the job would have filled with results. Did you check for an error result before retrieving the query job results?

Upvotes: 4

Related Questions