当使用会使条件查询为 false 的子查询时,无论其 FROM 子句中的任何行中是何内容,Presto 发起程序查询的连续运行都可能会停滞。禁用动态筛选有助于避免使用子查询时出现问题。
未禁用 enable_dynamic_filtering 时可能会出现问题的查询示例:
select * from remote_table where col1 = (select null);
- [可选] 为了避免查询停滞的风险,Teradata 建议您在预计使用可能会忽略 WHERE 子句的子查询时执行以下操作之一:
- 将会话属性 enable_dynamic_filtering 设置为 false
- 将以下行添加到 Presto config.properties 文件:
experimental.enable_dynamic_filtering=false