当 Talend 在雪花中的单个表上执行 32 个线程的并行合并语句时,进程失败并显示错误,因为“语句 X”已中止,因为此锁的等待者数量超过了 20 个语句的限制”。
现在我的问题是如何有效地使用 Talend 中的并行线程,使其不应该超过雪花中的这个限制?
20 个线程总是会在特定时间戳创建最多 20 个锁定事务(1 个持有,19 个等待),还是可以超过 20 个?
雪花中的锁是否与任何特定时间戳的 DML(在这些情况下为合并语句)的数量成正比?
雪花在自动中止之前等待等待锁等待其他持有锁完成多长时间?由于其他 DML 正在等待获得排他锁,这意味着它们处于空闲状态,所以如果持有的事务在 4 小时内没有完成,雪花会在开始 4 小时后中止事务吗?