Re: Understanding UDF annotations

2022-02-02 Thread Julian Hyde
Yes, the UDF annotations are intended to allow better optimizations. I’m sure there are bugs. If a query with a UDF is not being optimized, log a bug. The fix is probably at the level of a particular RelOptRule, and therefore the test case would be in RelOptRulesTest. But I don’t think that

Understanding UDF annotations

2022-02-02 Thread X L
Hi, I was wondering if my understanding about UDFs' annotations in Calcite is correct. For instance, I notice there is a `@Deterministic` label to specify a deterministic UDF. Then, relevant query rewrite rules (e.g., ReduceExpressionsRule) need to check the existence of this label (e.g.,