BigQuery API getQueryResults返回0条记录的pageToken

1 投票
1 回答
541 浏览
提问于 2025-04-18 17:49

我们有一个查询,有时候调用它时会返回0条记录。当你用jobId调用getQueryResults时,它会返回一个有效的pageToken,但结果却是0行。这有点让人意外,因为从技术上讲,这里没有数据。更糟糕的是,如果你继续使用这个pageToken进行后续的数据提取,它每次都会返回0行,尽管pageToken是有效的。

如果查询最开始确实返回了数据,并且你继续使用这个pageToken进行后续的数据提取,最后一页会返回pageToken为None,这样就给出了一个结束的条件。

这种行为似乎不太一致?这是一个bug吗?

这是我看到的一个示例作业响应: 这是一个示例作业响应: {u'kind': u'bigquery#getQueryResultsResponse', u'jobReference': {u'projectId': u'xxx', u'jobId': u'job_aUAK1qlMkOhqPYxwj6p_HbIVhqY'}, u'cacheHit': True, u'jobComplete': True, u'totalRows': u'0', u'pageToken': u'CIDBB777777QOGQFBAABBAAE', u'etag': u'"vUqnlBof5LNyOIdb3TAcUeUweLc/6JrAdpn-kvulQHoSb7ImNUZ-NFM"', u'schema': {......}}

我正在使用Python,并通过BQ API在GAE上运行查询。

1 个回答

0

这是一个大家都知道的问题,已经存在很久了。这个问题在本周的更新中已经修复,预计今天下午或明天就会发布。

撰写回答