[
https://issues.apache.org/jira/browse/ASTERIXDB-2799?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17231807#comment-17231807
]
Dmitry Lychagin commented on ASTERIXDB-2799:
--------------------------------------------
[~wyk], I cannot reproduce it on the most recent master. Can you double check
on your side?
> SQL++ UDF cannot be used twice in SELECT
> ----------------------------------------
>
> Key: ASTERIXDB-2799
> URL: https://issues.apache.org/jira/browse/ASTERIXDB-2799
> Project: Apache AsterixDB
> Issue Type: Bug
> Reporter: Wail Y. Alkowaileet
> Assignee: Dmitry Lychagin
> Priority: Major
>
>
> I'm not sure if I'm doing something wrong.
> DDL:
> {code:java}
> DROP DATAVERSE UDFTest IF EXISTS;
> CREATE DATAVERSE UDFTest;
> CREATE FUNCTION doubleDigit(digit) {
> CASE WHEN digit < 10
> THEN concat("0", toString(digit))
> ELSE toString(digit)
> END
> };{code}
> Query:
>
> {code:java}
> USE UDFTest;
> SELECT doubleDigit(1), doubleDigit(10);
> {code}
> It throws:
> {code:java}
> ASX1079: Compilation error: Recursive invocation UDFTest.doubleDigit(1) <==>
> UDFTest.doubleDigit(1){code}
> Log:
> {code:java}
> 22:01:49.997 [QueryTranslator:a5e7e2fe-fcbe-4b6b-ae99-8c0b0e717ddd] INFO
> org.apache.asterix.app.translator.QueryTranslator - ASX1079: Compilation
> error: Recursive invocation UDFTest.doubleDigit(1) <==>
> UDFTest.doubleDigit(1) (in line 9, at column 24)22:01:49.997
> [QueryTranslator:a5e7e2fe-fcbe-4b6b-ae99-8c0b0e717ddd] INFO
> org.apache.asterix.app.translator.QueryTranslator - ASX1079: Compilation
> error: Recursive invocation UDFTest.doubleDigit(1) <==>
> UDFTest.doubleDigit(1) (in line 9, at column
> 24)org.apache.asterix.common.exceptions.CompilationException: ASX1079:
> Compilation error: Recursive invocation UDFTest.doubleDigit(1) <==>
> UDFTest.doubleDigit(1) (in line 9, at column 24) at
> org.apache.asterix.lang.common.util.FunctionUtil.retrieveUsedStoredFunctions(FunctionUtil.java:236)
> ~[asterix-lang-common-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at
> org.apache.asterix.lang.sqlpp.rewrites.SqlppQueryRewriter.inlineDeclaredUdfs(SqlppQueryRewriter.java:318)
> ~[asterix-lang-sqlpp-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at
> org.apache.asterix.lang.sqlpp.rewrites.SqlppQueryRewriter.rewrite(SqlppQueryRewriter.java:184)
> ~[asterix-lang-sqlpp-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at
> org.apache.asterix.api.common.APIFramework.reWriteQuery(APIFramework.java:191)
> ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at
> org.apache.asterix.app.translator.QueryTranslator.rewriteCompileQuery(QueryTranslator.java:2834)
> ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at
> org.apache.asterix.app.translator.QueryTranslator.lambda$handleQuery$3(QueryTranslator.java:3341)
> ~[asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at
> org.apache.asterix.app.translator.QueryTranslator.createAndRunJob(QueryTranslator.java:3473)
> [asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at
> org.apache.asterix.app.translator.QueryTranslator.deliverResult(QueryTranslator.java:3377)
> [asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at
> org.apache.asterix.app.translator.QueryTranslator.handleQuery(QueryTranslator.java:3356)
> [asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at
> org.apache.asterix.app.translator.QueryTranslator.compileAndExecute(QueryTranslator.java:434)
> [asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at
> org.apache.asterix.api.http.server.QueryServiceServlet.executeStatement(QueryServiceServlet.java:417)
> [asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at
> org.apache.asterix.api.http.server.QueryServiceServlet.handleRequest(QueryServiceServlet.java:303)
> [asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at
> org.apache.asterix.api.http.server.QueryServiceServlet.post(QueryServiceServlet.java:143)
> [asterix-app-0.9.6-SNAPSHOT.jar:0.9.6-SNAPSHOT] at
> org.apache.hyracks.http.server.AbstractServlet.handle(AbstractServlet.java:93)
> [hyracks-http-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at
> org.apache.hyracks.http.server.HttpRequestHandler.handle(HttpRequestHandler.java:83)
> [hyracks-http-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at
> org.apache.hyracks.http.server.HttpRequestHandler.call(HttpRequestHandler.java:68)
> [hyracks-http-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at
> org.apache.hyracks.http.server.HttpRequestHandler.call(HttpRequestHandler.java:37)
> [hyracks-http-0.3.6-SNAPSHOT.jar:0.3.6-SNAPSHOT] at
> java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?] at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> [?:?] at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> [?:?] at java.lang.Thread.run(Thread.java:834) [?:?]
> {code}
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)