diff --git a/core/trino-main/src/main/java/io/trino/metadata/ResolvedFunction.java b/core/trino-main/src/main/java/io/trino/metadata/ResolvedFunction.java index dfdcdc1dfc43..a3dfd45f67f6 100644 --- a/core/trino-main/src/main/java/io/trino/metadata/ResolvedFunction.java +++ b/core/trino-main/src/main/java/io/trino/metadata/ResolvedFunction.java @@ -159,8 +159,9 @@ public boolean equals(Object o) ResolvedFunction that = (ResolvedFunction) o; return Objects.equals(signature, that.signature) && Objects.equals(functionId, that.functionId) && - Objects.equals(functionKind, that.functionKind) && + functionKind == that.functionKind && deterministic == that.deterministic && + Objects.equals(functionNullability, that.functionNullability) && Objects.equals(typeDependencies, that.typeDependencies) && Objects.equals(functionDependencies, that.functionDependencies); } @@ -168,7 +169,7 @@ public boolean equals(Object o) @Override public int hashCode() { - return Objects.hash(signature, functionId, functionKind, deterministic, typeDependencies, functionDependencies); + return Objects.hash(signature, functionId, functionKind, deterministic, functionNullability, typeDependencies, functionDependencies); } @Override