Permission denied while globbing file pattern. のエラー
症状
BigQuery のWebコンソールでは特にエラーは出ないのに、redash だと
Error running query: The job encountered an internal error during execution and was unable to complete successfully.
みたいなエラー。
調査
コマンドコンソールにて同クエリーを実行。 すると、
Permission denied while globbing file pattern.
のエラー。
そのエラーのクエリをヒストリから選び、Open Query
から RUN QUERY
を再実行するも、正常に返ってくる。
Webで調べてみると、google drive がらみの権限エラーの模様。
Google Driveは全く使っていないが、たしかに 直接インポート した。
インポートしたテーブルを外すと、コマンドからでも正常にクエリは実行された。
該当テーブルの detail をwebコンソールから見ると、
External Data Configuration Source URI(s) https://docs.google.com/spreadsheets/d/XXXXXXXXXXXXX/edit#gid=0 Auto-detect Schema true Source Format GOOGLE_SHEETS Max Bad Records 10
となっており、たしかに外部から持ってきたデータであることと、source format も GOOGLE_SHEETS となっている。
対応
原因が分かったが、対応方法は不明。
まず、bq コマンドによりコピーを試みるが、当然失敗した。
次に、
SELECT * FROM [TABLE_NAME]
を実行し、その結果を別テーブルに保管した。そしてそのテーブルを参照するようにすると、bq コマンドで問題なくクエリは実行できた。 redashも問題なく動作した。