0

我有一个带有连接的大选择,其中两个表的大小相同,所以为了处理它,我将右表上的选择限制为块(通过使用 %),然后多次运行相同的选择,每个块一个和追加到目标表。

该过程适用于块 0、1、2,但对于任何后续块,它都会失败并声称“提供的架构与表不匹配”。

一些失败的工作如下:

job_01eb892ab77c49f2ab5a7d24fa19ea96 (chunk 3)
job_ae450380bacd42b8aae7b7b350a8bd61 (chunk 4)
job_6f40617d0e6046e7b474dffef220ade7 (chunk 5)
job_edfbf86b95364efba3a21ae855827eb4 (chunk 6)

如果我删除表并单独运行第一个失败的块 (3) (job_bbbd3c8b56594725a3d3933c79f96286),它工作正常并且新表中的架构与预期相同。

如果我有选择地处理块 0、1、3、4,块 3 工作正常,现在它在 4(job_76c3addb316644f595988cbc393ffa8a)上失败,如果我运行块 2、3、4、5,它在块 5(job_c5d99e0fa6b0481b8e5ea6b5d6f26271)上失败。

这看起来像 BQ 的一个问题是阻止将第四个块(无论它是什么)附加到目标表,并且它给出了错误的错误描述。

有什么建议么?谢谢

4

2 回答 2

1

这看起来像一个错误,当我们开始将表结果写入磁盘时,我们会使用一种略有不同的模式格式。我已经签入了一个修复程序,但它可能要到下周发布才能使用。

于 2012-08-21T20:01:32.350 回答
0

我认为这是一个已知的错误,查询结果返回不可预测的字段模式(必需与可选)。IIRC,您可以使用 AS 或 IF() 来强制设置可选标志。

于 2012-08-20T15:36:00.080 回答