BigQuery : An internal error occurred and the request could not be completed

Simple select queries with timestamp are failing :

SELECT COUNT(*) FROM [bi.table] WHERE  timestamp > DATE_ADD(CURRENT_TIMESTAMP(), -15, 'MINUTE') and column1 is null

Query Failed:

Error: An internal error occurred and the request could not be completed.
Job ID: streamrail:job_lndEirUwwM_khdBrV8eMDmBDFiE

Is there anything wrong with the bigquery system?

https://status.cloud.google.com/ does not say anything is wrong.

Answers


This error was actually unrelated to the timestamps. You hit an error in our streaming ingestion service. It was overloaded at the time you ran your query and it could not serve the data that had been ingested for your table. We are investigating and will fix the underlying issue. Sorry for the inconvenience.


Recommendation is to never use a wildcard with COUNT.. Especially large tables. If we re-write your query a bit, we get:

SELECT COUNT(user) count_user
FROM [bi.table]
WHERE  timestamp > DATE_ADD(CURRENT_TIMESTAMP(), -15, 'MINUTE')
and column1 is null

depending on the API, you can also use:

and isnull(column1)

you can also use:

and isnull(column1)

you can also use:

and isempty(column1)

you can also use:

and column1=''

This is using the KB article from Microsoft talking about the difference between isnull(column1) or colum1 is null..

Also, with SQL server.. You can use Locking Hints..

FROM [bi.table] (NOLOCK)

but, I am not familiar with the Google API... So, these are just suggestions.


Need Your Help

Do I need to Dispose XmlReader if I Dispose its underlying Stream?

c# dispose xmlreader streamreader

I have the following method GetData that creates a StreamReader from a file.

Can you control the order in which the TagBuilder class renders attribues?

c# asp.net tagbuilder

I know this is kind of obsessive, but is there a way to control the order that the TagBuilder class renders the attributes of an HTML tag when you call ToString()?