Github user lomoree commented on the issue: https://github.com/apache/phoenix/pull/222 1. There are still a number of cases that don't pass. Many of them are due to existing features not being supported, and many are due to other issues within Calcite-Phoenix. I have compiled a list of the major common issues though: - No differentiation between the regex functions (String based and Byte based) - Invert and MD5 Function don't work (phoenix doesn't supply the correct arguments in annotation) - Type matching doesn't work on input arguments (date/timestamp) - Timezone parameter doesn't work properly in ToDateFunction (basic cases work, but custom timezones do not act as expected) - Array constructors are not supported (another issue entirely) 2. I believe you're referring to those in PhoenixScalarFunction, createBuiltinFunctions() and evaluateReturnType()? In the case of createBuiltinFunctions() it makes sense to be in PhoenixScalarFunction since it create instances of that class. We could move evaluateReturnType() to PhoenixSchema since it has more generic behavior, but I'm not entirely convinced that it should move.
--- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---