无法为“_CLOUD_QUERY_METADATA_SCHEMA_”加载 FileDescriptorProto

Posted

技术标签:

【中文标题】无法为“_CLOUD_QUERY_METADATA_SCHEMA_”加载 FileDescriptorProto【英文标题】:Failed to load FileDescriptorProto for '_CLOUD_QUERY_METADATA_SCHEMA_' 【发布时间】:2021-06-29 13:31:06 【问题描述】:

我的 Firebase 项目与 BigQuery 集成,因此所有原始 Google Analytics 事件每天都会导出并流式传输到专用集合。

从今天开始,即使是对这些事件的简单查询也因错误而失败:

运行查询时出错

未能加载 FileDescriptorProto 'CLOUD_QUERY_METADATA_SCHEMA': ; 23 号字段已经被 由字段“items”在“Msg_0_CLOUD_QUERY_TABLE”中使用。

一个失败的查询示例:

SELECT * FROM `project.analytics_184030700.events_*` WHERE event_name IN ("share")

正如我所提到的,那些(和更高级的)查询过去一直运行到昨天。在此期间,我没有更改架构或任何其他配置。我还注意到BigQuery was updated yesterday。

查看错误描述,看起来我的表架构确实包含一个名为 items 的字段(最后一个,23 日),但它是由 Google Analytics 自动添加的。

我的怀疑:

    最近的 BigQuery 版本出了点问题 每日同步 Google Analytics 时出现问题 -> BigQuery 一些旧作业或缓存妨碍了新查询

在这一点上,我不知道下一步该尝试什么。有没有人知道可能导致此错误的原因?

编辑: 我注意到这个问题也刚刚在此处的 Google 问题跟踪器中报告:https://issuetracker.google.com/issues/192325507。

【问题讨论】:

我很确定这是一个新的 BigQuery 错误(是我报告了 issuetracker.google.com/issues/192325507)。同时,请注意,您可以通过不带通配符的名称查询特定字段来解决此问题。 【参考方案1】:

我有同样的问题,但我还没有解决它,但正如你所说,我猜它的原因是 Firebase。有一个额外的字段问题,仅限三天(6 月 26 日、27 日和 28 日)。

我检查了 6 月 26 日之前的所有数据,但没有 privacy_info 字段。如您所见,6 月 29 日再次没有 privacy_info 字段。我认为 firebase 提出了这个新领域,但他们出于某种原因改变了主意。但这给我们带来了很大的问题。

更新: 我改变了这部分:

SELECT * FROM `project.analytics_184030700.events_*`

像这样:

SELECT * FROM `project.analytics_184030700.events_2*`

有趣的是,这对我有用。

【讨论】:

我刚刚注意到这个问题也被报告在 Google 问题跟踪器中:issuetracker.google.com/issues/192325507。 我在上面更新了我的评论,检查最后一部分。 @ChrisBarry 它不包括日内数据。但是即使他们有privacy_info字段也可以与其他人一起使用。每个事件表都以“events_2”开头,除了盘中,我只是将其排除在外。如果您仍需要盘中数据,此解决方案将不适合您。 @ChrisBarry 另外我发现由于列数差异,我们仍然无法合并 6 月 25 日和 26 日的事件数据。那么我不知道“events_2*”是如何工作的。 @VolkanEgeDindar 看起来您的解决方法确实适用于我的情况,谢谢!【参考方案2】:

您可以解决该问题;字段好像有问题

隐私信息

如果您选择多个表分区,只需确保您只选择您需要的字段,并省略字段privacy_info。

不使用“SELECT *”确实为我解决了这个错误。

【讨论】:

以上是关于无法为“_CLOUD_QUERY_METADATA_SCHEMA_”加载 FileDescriptorProto的主要内容,如果未能解决你的问题,请参考以下文章

C# 无法将类型为“System.Byte[]”的对象强制转换为类型“System.Data.DataTable

无法将类型为“System.Collections.Generic.List`1[EPMS.Domain.SingleItem]”的对象强制转换为类型“EPMS

我无法解决“无法为模拟器构建应用程序。 '

无法将 createdAt 和 updatedAt 保存为日期时间值,也无法将后端保存为前端

toast 无法解析,activitynotfoundexception 无法解析为类型

无法解析 JSONArray 无法转换为 JSONObject