我们遇到的问题是,在配置标准SQL时,发出一个Big dry_run = True
错误的BigTable外部表的查询。
这是预期的吗?使用旧版SQL时,或者dry_run
设置为false时没有问题。
from google.oauth2.service_account import Credentials
from google.cloud.bigquery.client import Client
from google.cloud.bigquery.job import QueryJobConfig
creds = Credentials.from_service_account_file('secrets.json')
client = Client(project='project-id', credentials=creds)
query = 'select col from table limit 1'
job_config = QueryJobConfig()
job_config.dry_run = True
job_config.use_legacy_sql = False
client.query(query, job_config=job_config)
错误:
BadRequest:400 POST https://www.googleapis.com/bigquery/v2/projects/project-id/jobs:错误 阅读表:表,错误消息:访问云时出错 Bigtable:API密钥和身份验证凭据来自 不同的项目。
此代码返回google.cloud.bigquery.job.QueryJob
,没有错误:
job_config = QueryJobConfig()
job_config.dry_run = True
job_config.use_legacy_sql = True
client.query(query, job_config=job_config)
直接访问其余端点时会遇到同样的问题。
答案 0 :(得分:1)
通过GCP支持确认这是一个内部错误 - 估计修复将在“一两个月内”推出。