Re: IllegalStateException Printing Plan

Posted by Rex Fenley on
URL: http://deprecated-apache-flink-user-mailing-list-archive.369.s1.nabble.com/IllegalStateException-Printing-Plan-tp39522p39554.html

So I tried userDocsTable.explain() however it doesn't give me the AST as JSON so that I can use the visualizer tool https://ci.apache.org/projects/flink/flink-docs-stable/dev/execution_plans.html . Also, if I get rid of executeInsert or move it to after getExecutionPlan I still end up with "Caused by: java.lang.IllegalStateException: No operators defined in streaming topology. Cannot execute." Ordering doesn't seem to make a difference here.

Anything else I can try to get the JSON?

Thanks!

On Tue, Nov 17, 2020 at 1:24 AM Dawid Wysakowicz <[hidden email]> wrote:

Hi Rex,

The executeInsert method as the name states executes the query. Therefore after the method there is nothing in the topology and thus you get the exception.

You can either explain the userDocsTable:

userDocsTable.explain()

or you can explain a statement set if you want to postpone the execution:

StatementSet set = tEnv.createStatementSet();

set.addInsert(SINK_ES_PEOPLE, userDocsTable);

set.explain()

or you can explain SQL:

String sqlQuery = ...

tEnv.explainSql(sqlQuery);

Best,

Dawid

On 17/11/2020 09:16, Khachatryan Roman wrote:
Hello,

Can you share the full program? 
getExecutionPlan call is probably misplaced.

Regards,
Roman


On Tue, Nov 17, 2020 at 8:26 AM Rex Fenley <[hidden email]> wrote:
Hello,

I have the following code attempting to print the execution plan for my job locally. The job runs fine and Flink UI displays so I'd expect this to work.

val tableResult = userDocsTable.executeInsert(SINK_ES_PEOPLE)
println(s"execution plan:\n${this.env.getExecutionPlan()}")

but instead I end up with

Caused by: java.lang.IllegalStateException: No operators defined in streaming topology. Cannot execute.

What am I doing wrong?

--

Rex Fenley  |  Software Engineer - Mobile and Backend


Remind.com |  BLOG  |  FOLLOW US  |  LIKE US



--

Rex Fenley  |  Software Engineer - Mobile and Backend


Remind.com |  BLOG  |  FOLLOW US  |  LIKE US