godfreyhe commented on a change in pull request #11321:
URL: https://github.com/apache/flink/pull/11321#discussion_r449544239
##########
File path:
flink-table/flink-table-common/src/main/java/org/apache/flink/table/functions/UserDefinedFunction.java
##########
@@ -45,10 +45,19 @@
/**
* Returns a unique, serialized representation for this function.
+ *
+ * <p>If the function has no constructor or only one constructor
without any parameter,
Review comment:
if a class contains no constructor declarations, then a default
constructor is automatically generated by the compiler. We can't distinguish
between a user-defined constructor and a compiler-generated constructor. I will
update the javadoc to `If the function has only one constructor without any
parameter (a default constructor is automatically generated by the compiler if
a class contains no constructor declarations), identifier is the class name,
else identifier is the class name and instance's md5.`
> It may contains some variable and may be changed after constructed.
That means this UDF is non-deterministic, the identifier of this UDF is also
unstable.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]