Hello, everyone in the calcite community. Recently, I have been adapting the behavior of functions in different dialects to the calcite community. At first, I used the method in CALCITE-5831 <https://issues.apache.org/jira/browse/CALCITE-5831>[1], but later I discovered that this The method is not very suitable. A function may have multiple behaviors in different dialects (for example, the behaviors of the log function in mysql, pg, and bigquery are somewhat different). We may need to add some specific methods and SqlLibraryOperators to these behaviors respectively. name.
In CALCITE-6325 <https://issues.apache.org/jira/browse/CALCITE-6325>[2], tanclary proposed that @LibraryAnnotations can be used to optimize (I hope I didn’t understand). Julian also said before that it can be implemented in the form of flag bits (but I don’t know how to use the database The type flag is passed into Sqlfunctions) I would like to ask everyone what you think? Seriously, adaptation functions are not fun, but I want to help the community improve this problem. Best wishes, Cancai Cai [1] :https://issues.apache.org/jira/browse/CALCITE-5831 [2]: https://issues.apache.org/jira/browse/CALCITE-6325