Greg Hogan created FLINK-2814:
---------------------------------

             Summary: DeltaIteration: DualInputPlanNode cannot be cast to 
SingleInputPlanNode
                 Key: FLINK-2814
                 URL: https://issues.apache.org/jira/browse/FLINK-2814
             Project: Flink
          Issue Type: Bug
          Components: Optimizer
    Affects Versions: master
            Reporter: Greg Hogan


A delta iteration that closes with a solution set which is a {{JoinOperator}} 
throws the following exception:

{noformat}
org.apache.flink.client.program.ProgramInvocationException: The main method 
caused an error.
        at 
org.apache.flink.client.program.PackagedProgram.callMainMethod(PackagedProgram.java:444)
        at 
org.apache.flink.client.program.PackagedProgram.invokeInteractiveModeForExecution(PackagedProgram.java:345)
        at org.apache.flink.client.program.Client.runBlocking(Client.java:289)
        at 
org.apache.flink.client.CliFrontend.executeProgramBlocking(CliFrontend.java:669)
        at org.apache.flink.client.CliFrontend.run(CliFrontend.java:324)
        at 
org.apache.flink.client.CliFrontend.parseParameters(CliFrontend.java:969)
        at org.apache.flink.client.CliFrontend.main(CliFrontend.java:1019)
Caused by: java.lang.ClassCastException: 
org.apache.flink.optimizer.plan.DualInputPlanNode cannot be cast to 
org.apache.flink.optimizer.plan.SingleInputPlanNode
        at 
org.apache.flink.optimizer.dag.WorksetIterationNode.instantiate(WorksetIterationNode.java:432)
        at 
org.apache.flink.optimizer.dag.TwoInputNode.addLocalCandidates(TwoInputNode.java:557)
        at 
org.apache.flink.optimizer.dag.TwoInputNode.getAlternativePlans(TwoInputNode.java:478)
        at 
org.apache.flink.optimizer.dag.DataSinkNode.getAlternativePlans(DataSinkNode.java:204)
        at 
org.apache.flink.optimizer.dag.TwoInputNode.getAlternativePlans(TwoInputNode.java:309)
        at 
org.apache.flink.optimizer.dag.TwoInputNode.getAlternativePlans(TwoInputNode.java:308)
        at org.apache.flink.optimizer.Optimizer.compile(Optimizer.java:500)
        at org.apache.flink.optimizer.Optimizer.compile(Optimizer.java:402)
        at 
org.apache.flink.client.program.Client.getOptimizedPlan(Client.java:271)
        at 
org.apache.flink.client.program.Client.getOptimizedPlan(Client.java:543)
        at org.apache.flink.client.program.Client.runBlocking(Client.java:350)
        at 
org.apache.flink.client.program.ContextEnvironment.execute(ContextEnvironment.java:64)
        at 
org.apache.flink.api.java.ExecutionEnvironment.execute(ExecutionEnvironment.java:796)
        at org.apache.flink.api.java.DataSet.collect(DataSet.java:424)
        at org.apache.flink.api.java.DataSet.print(DataSet.java:1365)
        at Driver.main(Driver.java:366)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at 
org.apache.flink.client.program.PackagedProgram.callMainMethod(PackagedProgram.java:429)
        ... 6 more
{noformat}

Temporary fix is to attach an identity mapper.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to