是的,这种就被当做常量被优化掉了。 你可以覆盖一下ScalarFunction#isDeterministic方法,说明你这个函数时非确定性的,就不会被优化掉了。
867127831 <[email protected]> 于2020年7月17日周五 下午5:27写道: > hi, 我有一个不带参数的udf,用于返回系统当前时间的字符串格式,但是调用时每次都返回这个udf第一次调用的结果,所以拿到的时间全部都是一样的 > > > udf的实时如下: > > > public class GetTimeFunc extends ScalarFunction { > public String eval() { > return new SimpleDateFormat("yyyy-MM-dd > HH:mm:ss").format(new Date()); > } > } > > > > 请问,针对这种没有入参的udf,flink内部是有做什么优化吗,导致每次调用返回的结果都一样? -- Best, Benchao Li
