Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Invalid
-
None
-
None
-
None
-
None
Description
The following will throw a runtime exception:
drop dataverse channels if exists;
create dataverse channels;
use channels;
create type result as {
id:uuid
};
create type subscriptionType as {
subscriptionId:uuid,
param0:int
};
create dataset roomRecordsResults(result)
primary key id autogenerated;
create dataset roomRecordsSubscriptions(subscriptionType)
primary key subscriptionId autogenerated;
use channels;
insert into channels.roomRecordsResults (
select sub.subscriptionId
from channels.roomRecordsSubscriptions sub
);
Here is the stack trace:
WARNING: Unhandled throwable
java.lang.VerifyError: Bad return type
Exception Details:
Location:
org/apache/asterix/runtime/evaluators/functions/records/RecordMergeDescriptor$_EvaluatorFactoryGen.access$0(Lorg/apache/asterix/runtime/evaluators/functions/records/RecordMergeDescriptor$_EvaluatorFactoryGen;)Lorg/apache/asterix/runtime/evaluators/functions/records/RecordMergeDescriptor; @4: areturn
Reason:
Type 'org/apache/asterix/runtime/evaluators/functions/records/RecordMergeDescriptor$_Gen' (current frame, stack[0]) is not assignable to 'org/apache/asterix/runtime/evaluators/functions/records/RecordMergeDescriptor' (from method signature)
Current Frame:
bci: @4
flags: { }
locals:
stack:
{ 'org/apache/asterix/runtime/evaluators/functions/records/RecordMergeDescriptor$_Gen' } Bytecode:
0x0000000: 2ab4 0063 b0
at org.apache.asterix.runtime.evaluators.functions.records.RecordMergeDescriptor$_Gen.createEvaluatorFactory(RecordMergeDescriptor.java:86)
at org.apache.asterix.jobgen.QueryLogicalExpressionJobGen.createScalarFunctionEvaluatorFactory(QueryLogicalExpressionJobGen.java:144)
at org.apache.asterix.jobgen.QueryLogicalExpressionJobGen.createEvaluatorFactory(QueryLogicalExpressionJobGen.java:109)
at org.apache.asterix.jobgen.QueryLogicalExpressionJobGen.codegenArguments(QueryLogicalExpressionJobGen.java:161)
at org.apache.asterix.jobgen.QueryLogicalExpressionJobGen.createScalarFunctionEvaluatorFactory(QueryLogicalExpressionJobGen.java:134)
at org.apache.asterix.jobgen.QueryLogicalExpressionJobGen.createEvaluatorFactory(QueryLogicalExpressionJobGen.java:109)
at org.apache.hyracks.algebricks.core.algebra.expressions.ExpressionRuntimeProvider.createEvaluatorFactory(ExpressionRuntimeProvider.java:41)
at org.apache.hyracks.algebricks.core.algebra.operators.physical.AssignPOperator.contributeRuntimeOperator(AssignPOperator.java:84)
at org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator.contributeRuntimeOperator(AbstractLogicalOperator.java:166)
at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:97)
at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:84)
at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:84)
at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:84)
at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:84)
at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:84)
at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:84)
at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:84)
at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:84)
at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compileOpRef(PlanCompiler.java:84)
at org.apache.hyracks.algebricks.core.jobgen.impl.PlanCompiler.compilePlan(PlanCompiler.java:60)
at org.apache.hyracks.algebricks.compiler.api.HeuristicCompilerFactoryBuilder$1$1.createJob(HeuristicCompilerFactoryBuilder.java:107)
at org.apache.asterix.api.common.APIFramework.compileQuery(APIFramework.java:333)
at org.apache.asterix.app.translator.QueryTranslator.rewriteCompileInsertUpsert(QueryTranslator.java:1867)
at org.apache.asterix.app.translator.QueryTranslator.lambda$0(QueryTranslator.java:1755)
at org.apache.asterix.app.translator.QueryTranslator.handleInsertUpsertStatement(QueryTranslator.java:1781)
at org.apache.asterix.app.translator.QueryTranslator.compileAndExecute(QueryTranslator.java:337)
at org.apache.asterix.app.translator.QueryTranslator.compileAndExecute(QueryTranslator.java:254)
at org.apache.asterix.api.http.server.ApiServlet.post(ApiServlet.java:157)
at org.apache.hyracks.http.server.AbstractServlet.handle(AbstractServlet.java:78)
at org.apache.hyracks.http.server.HttpRequestHandler.handle(HttpRequestHandler.java:70)
at org.apache.hyracks.http.server.HttpRequestHandler.call(HttpRequestHandler.java:55)
at org.apache.hyracks.http.server.HttpRequestHandler.call(HttpRequestHandler.java:36)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)