Details
-
Bug
-
Status: Resolved
-
Critical
-
Resolution: Fixed
-
0.9.9
Description
The following query fails at compile time
SELECT SUM(random(1)) FROM ExperDataset GROUP BY a.ai;
With the following error
org.apache.asterix.common.exceptions.CompilationException: ASX1079: Compilation error: Found non-functional function asterix:agg-local-sql-sum#1 (in line 3, at column 12) at org.apache.asterix.optimizer.rules.SweepIllegalNonfunctionalFunctions$IllegalNonfunctionalFunctionSweeperOperatorVisitor.sweepExpression(SweepIllegalNonfunctionalFunctions.java:108) ~[classes/:?] at org.apache.asterix.optimizer.rules.SweepIllegalNonfunctionalFunctions$IllegalNonfunctionalFunctionSweeperOperatorVisitor.visitAggregateOperator(SweepIllegalNonfunctionalFunctions.java:115) ~[classes/:?] at org.apache.asterix.optimizer.rules.SweepIllegalNonfunctionalFunctions$IllegalNonfunctionalFunctionSweeperOperatorVisitor.visitAggregateOperator(SweepIllegalNonfunctionalFunctions.java:102) ~[classes/:?] at org.apache.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator.accept(AggregateOperator.java:54) ~[classes/:?] at org.apache.asterix.optimizer.rules.SweepIllegalNonfunctionalFunctions.rewritePost(SweepIllegalNonfunctionalFunctions.java:96) ~[classes/:?] at org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:119) ~[classes/:?] at org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:104) ~[classes/:?] at org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:92) ~[classes/:?] at org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:92) ~[classes/:?] at org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:92) ~[classes/:?] at org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:92) ~[classes/:?] at org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:92) ~[classes/:?] at org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:92) ~[classes/:?] at org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:92) ~[classes/:?] at org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController.rewriteOperatorRef(AbstractRuleController.java:92) ~[classes/:?] at org.apache.hyracks.algebricks.compiler.rewriter.rulecontrollers.SequentialOnceRuleController.rewriteWithRuleCollection(SequentialOnceRuleController.java:43) ~[classes/:?] at org.apache.hyracks.algebricks.core.rewriter.base.HeuristicOptimizer.runOptimizationSets(HeuristicOptimizer.java:92) ~[classes/:?] at org.apache.hyracks.algebricks.core.rewriter.base.HeuristicOptimizer.runPhysicalOptimizationSets(HeuristicOptimizer.java:122) ~[classes/:?] at org.apache.hyracks.algebricks.core.rewriter.base.HeuristicOptimizer.optimize(HeuristicOptimizer.java:66) ~[classes/:?] at org.apache.hyracks.algebricks.compiler.api.HeuristicCompilerFactoryBuilder$CompilerImpl.optimize(HeuristicCompilerFactoryBuilder.java:163) ~[classes/:?] at org.apache.asterix.api.common.APIFramework.compileQuery(APIFramework.java:268) ~[classes/:?] at org.apache.asterix.app.translator.QueryTranslator.rewriteCompileQuery(QueryTranslator.java:3630) ~[classes/:?] at org.apache.asterix.app.translator.QueryTranslator.lambda$handleQuery$2(QueryTranslator.java:4543) ~[classes/:?] at org.apache.asterix.app.translator.QueryTranslator.createAndRunJob(QueryTranslator.java:4685) ~[classes/:?] at org.apache.asterix.app.translator.QueryTranslator.deliverResult(QueryTranslator.java:4580) ~[classes/:?] at org.apache.asterix.app.translator.QueryTranslator.handleQuery(QueryTranslator.java:4559) ~[classes/:?] at org.apache.asterix.app.translator.QueryTranslator.compileAndExecute(QueryTranslator.java:497) ~[classes/:?] at org.apache.asterix.api.http.server.QueryServiceServlet.executeStatement(QueryServiceServlet.java:415) ~[classes/:?] at org.apache.asterix.api.http.server.QueryServiceServlet.handleRequest(QueryServiceServlet.java:305) ~[classes/:?] at org.apache.asterix.api.http.server.QueryServiceServlet.post(QueryServiceServlet.java:139) ~[classes/:?] at org.apache.hyracks.http.server.AbstractServlet.handle(AbstractServlet.java:94) ~[classes/:?] at org.apache.hyracks.http.server.HttpRequestHandler.handle(HttpRequestHandler.java:83) ~[classes/:?] at org.apache.hyracks.http.server.HttpRequestHandler.call(HttpRequestHandler.java:68) ~[classes/:?] at org.apache.hyracks.http.server.HttpRequestHandler.call(HttpRequestHandler.java:37) ~[classes/:?] at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?] at java.lang.Thread.run(Thread.java:833) ~[?:?]