[ https://issues.apache.org/jira/browse/PHOENIX-4866?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
cherish peng updated PHOENIX-4866: ---------------------------------- Description: I built an udf `ARRAY_DISTINCT`, When i exec: {color:#d04437}①{color} SELECT ARRAY_DISTINCT(ARRAY['A', 'B', 'A', 'C'], TRUE); throw error: {code:java} org.apache.phoenix.schema.FunctionNotFoundException: ERROR 6001 (42F01): Function undefined. functionName=ARRAY_DISTINCT at org.apache.phoenix.compile.FromCompiler$1.resolveFunction(FromCompiler.java:134) at org.apache.phoenix.compile.ExpressionCompiler.visitLeave(ExpressionCompiler.java:327) {code} However when i exec: {color:#d04437}②{color} SELECT ARRAY_DISTINCT(ARRAY['A', 'B', 'A', 'C'], TRUE) {color:#f79232}FROM TABLE_NAME;{color} output: *+---------------------+* *|* *ARRAY['A','B','C']* *|* *+---------------------+* *+---------------------+* {color:#d04437}③{color} SELECT ARRAY_DISTINCT({color:#f79232}array_elements{color}, TRUE) as arr {color:#f79232}FROM TABLE_NAME;{color}** {color:#f79232}output:{color} *+---------------------+* *| ARR* * ** |* *+---------------------+* *| ARRAY['A','B','C'] |*** *+---------------------+* The DDL: CREATE FUNCTION ARRAY_DISTINCT(VARCHAR[], BOOLEAN) RETURNS VARCHAR AS 'com.godalgo.udf.ArrayDistinctFunction'; My Environment: apache-phoenix-5.0.0-HBase-2.0-bin hbase-2.0.0 hadoop-3.1.0 I tried the built-in functions which provided by Phoenix, ALL OF THEM ARE OK . *I had putted ARRAY_DISTINCT's SOURCE TO attachment.* was: {code:java} Environment: apache-phoenix-5.0.0-HBase-2.0-bin hbase-2.0.0 hadoop-3.1.0 {code} I built an udf `ARRAY_DISTINCT`, When i exec: {color:#d04437}①{color} SELECT ARRAY_DISTINCT(ARRAY['A', 'B', 'A', 'C'], TRUE); throw error: "org.apache.phoenix.schema.FunctionNotFoundException: ERROR 6001 (42F01): Function undefined" However when i exec: {color:#d04437}②{color} SELECT ARRAY_DISTINCT(ARRAY['A', 'B', 'A', 'C'], TRUE) {color:#f79232}FROM TABLE_NAME;{color} output: *+---------------------+* *|* *ARRAY['A','B','C']* *|* *+---------------------+* *+---------------------+* {color:#d04437}③{color} SELECT ARRAY_DISTINCT({color:#f79232}array_elements{color}, TRUE) as arr {color:#f79232}FROM TABLE_NAME;{color}** {color:#f79232}output:{color} *+---------------------+* *| ARR* ** *|* *+---------------------+* *| ARRAY['A','B','C'] |*** *+---------------------+* My ddl: CREATE FUNCTION ARRAY_DISTINCT(VARCHAR[], BOOLEAN) RETURNS VARCHAR AS 'com.godalgo.udf.ArrayDistinctFunction'; *I tried the built-in functions which provided by Phoenix, they only output ③ .* *I put the ARRAY_DISTINCT SOURCE TO attachment.* > UDFs get error: org.apache.phoenix.schema.FunctionNotFoundException: ERROR > 6001 (42F01): Function undefined > ----------------------------------------------------------------------------------------------------------- > > Key: PHOENIX-4866 > URL: https://issues.apache.org/jira/browse/PHOENIX-4866 > Project: Phoenix > Issue Type: Bug > Affects Versions: 5.0.0 > Environment: [^ArrayDistinctFunction.java] > Reporter: cherish peng > Priority: Blocker > Labels: User-Defined-Function, functions, udfs > Attachments: ArrayDistinctFunction.java > > Original Estimate: 72h > Remaining Estimate: 72h > > I built an udf `ARRAY_DISTINCT`, When i exec: > {color:#d04437}①{color} SELECT ARRAY_DISTINCT(ARRAY['A', 'B', 'A', 'C'], > TRUE); > throw error: > > {code:java} > org.apache.phoenix.schema.FunctionNotFoundException: ERROR 6001 (42F01): > Function undefined. functionName=ARRAY_DISTINCT at > org.apache.phoenix.compile.FromCompiler$1.resolveFunction(FromCompiler.java:134) > at > org.apache.phoenix.compile.ExpressionCompiler.visitLeave(ExpressionCompiler.java:327) > {code} > > However when i exec: > {color:#d04437}②{color} SELECT ARRAY_DISTINCT(ARRAY['A', 'B', 'A', 'C'], > TRUE) {color:#f79232}FROM TABLE_NAME;{color} > output: > *+---------------------+* > *|* *ARRAY['A','B','C']* *|* > *+---------------------+* > *+---------------------+* > > {color:#d04437}③{color} SELECT > ARRAY_DISTINCT({color:#f79232}array_elements{color}, TRUE) as arr > {color:#f79232}FROM TABLE_NAME;{color}** > {color:#f79232}output:{color} > *+---------------------+* > *| ARR* * ** |* > *+---------------------+* > *| ARRAY['A','B','C'] |*** > *+---------------------+* > > The DDL: > CREATE FUNCTION ARRAY_DISTINCT(VARCHAR[], BOOLEAN) RETURNS VARCHAR AS > 'com.godalgo.udf.ArrayDistinctFunction'; > My Environment: apache-phoenix-5.0.0-HBase-2.0-bin hbase-2.0.0 hadoop-3.1.0 > > I tried the built-in functions which provided by Phoenix, ALL OF THEM ARE OK . > *I had putted ARRAY_DISTINCT's SOURCE TO attachment.* -- This message was sent by Atlassian JIRA (v7.6.3#76005)