我正在尝试将我们的BigQuery客户端库迁移到版本0.28。现在,当我试图获取表引用时,它失败了ChunkedEncodingError
。这是我的代码:
def table_exists(client, table_reference):
from google.cloud.exceptions import NotFound
try:
client.get_table(table_reference)
return True
except NotFound:
return False
我们正在使用GAE标准环境。这可能是请求库的问题吗?
答案 0 :(得分:2)
使用带有Python的已部署App Engine Standard的google-cloud-bigquery包时,我遇到了同样的ChunkedEncodingError
错误。
这是使用Google App Engine的urllib3的问题。正如您在this link中看到的那样:
...如果您使用的是标准环境,那么您必须使用urllib3.contrib.appengine的AppEngineManager或使用套接字API
我使用了套接字API,它包括将以下内容添加到app.yaml文件中:
env_variables:
GAE_USE_SOCKETS_HTTPLIB : 'true'
您拥有official google Sockets Python API docs here
之后你可以重新部署,它应该可以工作。
此外还有google-cloud-bigquery(0.30.0)的最新版本,如果你不断出现错误,请试用而不是0.28.0。