It's not a class loading problem, it's an operator lookup mechanism, which is a by design behavior, you can see details here[1]. If there are multiple candidates in the result of operator lookup, the first one will be returned.
[1] https://github.com/apache/calcite/blob/d64ee0037db7abacdfcd4e774072f5e3fb8f2998/core/src/main/java/org/apache/calcite/sql/SqlUtil.java#L494-L517 Cancai Cai <[email protected]> 于2024年3月5日周二 16:53写道: > > Hello, everyone in the calcite community. > > I'm not sure if I should ask this question. > > In the process of fixing CALCITE-6259 > <https://issues.apache.org/jira/browse/CALCITE-6259>, I found that I > defined a log10_MS function in SqlLibraryOperators to simulate the behavior > of the log function in mysql, but the ReturnTypes.DOUBLE_FORCE_NULLABLE I > set was not Effective, its return value still complies with the ReturnTypes > of the LOG10 function in SqlStdOperatorTable. It seems to be a class > loading conflict. I tried to modify sqlkind, but it didn’t take effect. Is > there any good way? > > Thank you all. > > Best wishes. > Cancai Cai -- Best, Benchao Li
