Skip to content

Commit 3ea21ae

Browse files
committed
[fix-33011][core]builtin function error filter
1 parent b79154e commit 3ea21ae

File tree

1 file changed

+4
-7
lines changed

1 file changed

+4
-7
lines changed

core/src/main/java/com/dtstack/flink/sql/side/JoinNodeDealer.java

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -47,13 +47,12 @@
4747
import org.apache.commons.collections.CollectionUtils;
4848
import org.apache.commons.lang3.StringUtils;
4949
import org.apache.flink.api.java.tuple.Tuple2;
50-
import org.apache.flink.table.functions.BuiltInFunctionDefinitions;
5150

5251
import java.util.List;
5352
import java.util.Map;
5453
import java.util.Queue;
5554
import java.util.Set;
56-
import java.util.stream.Collectors;
55+
import java.util.Arrays;
5756

5857
import static org.apache.calcite.sql.SqlKind.*;
5958

@@ -74,6 +73,9 @@ public class JoinNodeDealer {
7473

7574
private FlinkPlanner flinkPlanner = new FlinkPlanner();
7675

76+
// 内置无参函数的临时解决方法,防止被误判为表的字段
77+
private List<String> builtInFunctionNames = Arrays.asList("LOCALTIMESTAMP", "LOCALTIME", "CURRENT_TIMESTAMP", "CURRENT_TIME", "CURRENT_DATE", "PI");
78+
7779
public JoinNodeDealer(SideSQLParser sideSQLParser){
7880
this.sideSQLParser = sideSQLParser;
7981
}
@@ -611,11 +613,6 @@ private void extractSelectField(SqlNode selectNode,
611613
SqlIdentifier sqlIdentifier = (SqlIdentifier) selectNode;
612614

613615
if (sqlIdentifier.names.size() == 1) {
614-
List<String> builtInFunctionNames = BuiltInFunctionDefinitions
615-
.getDefinitions()
616-
.stream()
617-
.map(e -> e.getName().toUpperCase())
618-
.collect(Collectors.toList());
619616
if (builtInFunctionNames.contains(sqlIdentifier.toString().toUpperCase())) {
620617
return;
621618
} else {

0 commit comments

Comments
 (0)