Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Failed to execute an insert statement across the database #2723

Open
weijunlu opened this issue Dec 19, 2022 · 8 comments
Open

Failed to execute an insert statement across the database #2723

weijunlu opened this issue Dec 19, 2022 · 8 comments

Comments

@weijunlu
Copy link

weijunlu commented Dec 19, 2022

Failed to execute an insert statement across the database.

Steps to reproduce the behavior:

  1. Prepare the mysql and postgresql table structures and data.
    mysql:
    create table t1(c1 int, c2 int);
    insert into t1 values (1,1), (2,2);
    postgres:
    create table t1(c1 int, c2 int);

  2. Create mysql and postgresql Plugins in Storage label via http://localhost:8047/storage pages.

  3. Execute the following sql statement using sqlline.
    Jupiter> insert into pg.public.t1 select c1, c2 from mysql.test.t1;
    Error: DATA_READ ERROR: The JDBC storage plugin failed while trying setup the SQL query.
    Sql: INSERT INTO public.t1 (c1, c2)
    (SELECT *
    FROM test.t1)
    Fragment: 0:0
    [Error Id: a5b3ee38-38f5-4945-afda-8a7d4746df4c on DESKTOP-PHHB7LC:31010] (state=,code=0)

  4. The execution plan in the log is as follows:
    2022-12-19 14:36:32,447 [1c5ffc63-764a-c5ab-4d06-90e658b8e132:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - Drill Physical:
    00-00    Screen : rowType = RecordType(BIGINT ROWCOUNT): rowcount = 1.0E9, cumulative cost = {1.1E9 rows, 1.1E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 614
    00-01      Jdbc(sql=[INSERT INTO public.t1 (c1, c2)
     (SELECT *
     FROM test.t1) ]) : rowType = RecordType(BIGINT ROWCOUNT): rowcount = 1.0E9, cumulative cost = {1.0E9 rows, 1.0E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 604

@cgivre
Copy link
Contributor

cgivre commented Dec 22, 2022

What version of Drill are you using? INSERT was only recently merged and is not part of any official release yet. So unless you are using the latest master, this won't work.

@weijunlu
Copy link
Author

@cgivre yes, I used the master version.
apache drill> select version, commit_message, commit_time from sys.version;
+----------------+----------------------------------------------------------------------------------+---------------------------+
| version | commit_message | commit_time |
+----------------+----------------------------------------------------------------------------------+---------------------------+
| 2.0.0-SNAPSHOT | DRILL-8314: Add support for automatically retrying and disabling broken storage plugins (#2655) | 18.10.2022 @ 18:15:31 CST |

@cgivre
Copy link
Contributor

cgivre commented Dec 27, 2022

Can you please enable verbose logging and post the stack trace? Without that, we really can't debug this.

@weijunlu
Copy link
Author

weijunlu commented Dec 28, 2022

I opened the trace log, included the calcite log.
Log configurations are as follows:

@weijunlu
Copy link
Author

2022-12-28 19:03:07,204 [main] DEBUG o.a.d.j.impl.DrillStatementRegistry - Adding to open-statements registry: org.apache.drill.jdbc.impl.DrillStatementImpl@71df3d2b
2022-12-28 19:03:07,204 [main] DEBUG o.a.d.j.i.DrillCursor$ResultsListener - [#2] Query listener created.
2022-12-28 19:03:07,204 [main] DEBUG o.apache.drill.jdbc.impl.DrillCursor - Setting timeout as 0
2022-12-28 19:03:07,206 [UserServer-1] DEBUG o.a.d.e.r.u.UserServerRequestHandler - Received query to run. Returning query handle.
2022-12-28 19:03:07,215 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.w.f.QueryStateProcessor - 1c53dd94-4277-9ab0-effe-18b1ab8989ac: State change requested PREPARING --> PLANNING
2022-12-28 19:03:07,215 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] INFO o.a.drill.exec.work.foreman.Foreman - Query text for query with id 1c53dd94-4277-9ab0-effe-18b1ab8989ac issued by anonymous: insert into pg.public.t1 select c1, c2 from mysql.test.t1
2022-12-28 19:03:07,215 [Client-1] DEBUG o.a.d.j.i.DrillCursor$ResultsListener - [#2] Received query ID: 1c53dd94-4277-9ab0-effe-18b1ab8989ac.
2022-12-28 19:03:07,215 [Client-1] DEBUG o.a.d.e.rpc.user.QueryResultHandler - Received QueryId 1c53dd94-4277-9ab0-effe-18b1ab8989ac successfully. Adding results listener org.apache.drill.jdbc.impl.DrillCursor$ResultsListener@29741514.
2022-12-28 19:03:07,222 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE org.apache.calcite.sql.parser - After unconditional rewrite: INSERT INTO pg.public.t1
(SELECT c1, c2
FROM mysql.test.t1)
2022-12-28 19:03:07,308 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE org.apache.calcite.sql.parser - After validation: INSERT INTO pg.public.t1
(SELECT t1.c1, t1.c2
FROM mysql.test.t1 AS t1)
2022-12-28 19:03:07,308 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'INSERT INTO'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'pg'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'public'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '('; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'SELECT'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'c1'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ','; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'c2'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'FROM'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'mysql'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'test'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'AS'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,309 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ')'; result is false
2022-12-28 19:03:07,312 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'INSERT INTO'; result is false
2022-12-28 19:03:07,312 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'pg'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'public'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '('; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'SELECT'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'c1'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ','; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'c2'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'FROM'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'mysql'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'test'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'AS'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ')'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'INSERT INTO'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'pg'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'public'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '('; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'SELECT'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'c1'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ','; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'c2'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'FROM'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'mysql'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'test'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'AS'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,313 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ')'; result is false
2022-12-28 19:03:07,315 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG org.apache.calcite.sql2rel - Plan after converting SqlNode to RelNode
LogicalTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[false])
LogicalProject(c1=[$0], c2=[$1])
JdbcTableScan(table=[[mysql, test, t1]])

2022-12-28 19:03:07,316 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - INITIAL:
LogicalTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {2.0000001E9 rows, 2.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 91
LogicalProject(c1=[$0], c2=[$1]): rowcount = 1.0E9, cumulative cost = {1.0000001E9 rows, 2.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 90
JdbcTableScan(table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

2022-12-28 19:03:07,317 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner -
Breadth-first from root: {
rel#96:HepRelVertex(rel#95:LogicalTableModify.NONE.ANY([]).[](input=HepRelVertex#94,table=[pg, public, t1],operation=INSERT,flattened=true)) = rel#95:LogicalTableModify.NONE.ANY([]).[](input=HepRelVertex#94,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={2.0000001E9 rows, 2.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#94:HepRelVertex(rel#93:LogicalProject.NONE.ANY([]).) = rel#93:LogicalProject.NONE.ANY([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 2.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#92:HepRelVertex(rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])) = rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
}
2022-12-28 19:03:07,318 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [SubQueryRemoveRule:Filter]
2022-12-28 19:03:07,318 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - collecting garbage
2022-12-28 19:03:07,318 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [SubQueryRemoveRule:Project]
2022-12-28 19:03:07,318 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [SubQueryRemoveRule:Join]
2022-12-28 19:03:07,318 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary - Rule Attempts Info for HepPlanner
2022-12-28 19:03:07,318 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary -
Rules Attempts Time (us)

  • Total 0 0

2022-12-28 19:03:07,318 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#95:LogicalTableModify.NONE.ANY([]).[](input=HepRelVertex#94,table=[pg, public, t1],operation=INSERT,flattened=true)
2022-12-28 19:03:07,318 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#93:LogicalProject.NONE.ANY([]).
2022-12-28 19:03:07,318 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])
2022-12-28 19:03:07,318 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - HEP:Sub-queries rewrites (1ms):
LogicalTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {2.0000001E9 rows, 2.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 95
LogicalProject(c1=[$0], c2=[$1]): rowcount = 1.0E9, cumulative cost = {1.0000001E9 rows, 2.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 93
JdbcTableScan(table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

2022-12-28 19:03:07,319 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner -
Breadth-first from root: {
rel#101:HepRelVertex(rel#100:LogicalTableModify.NONE.ANY([]).[](input=HepRelVertex#99,table=[pg, public, t1],operation=INSERT,flattened=true)) = rel#100:LogicalTableModify.NONE.ANY([]).[](input=HepRelVertex#99,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={2.0000001E9 rows, 2.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#99:HepRelVertex(rel#98:LogicalProject.NONE.ANY([]).) = rel#98:LogicalProject.NONE.ANY([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 2.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#97:HepRelVertex(rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])) = rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
}
2022-12-28 19:03:07,319 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [ReduceExpressionsRule(Calc)]
2022-12-28 19:03:07,319 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - collecting garbage
2022-12-28 19:03:07,319 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [ProjectToWindowRule:project]
2022-12-28 19:03:07,319 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary - Rule Attempts Info for HepPlanner
2022-12-28 19:03:07,319 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary -
Rules Attempts Time (us)

  • Total 0 0

2022-12-28 19:03:07,319 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#100:LogicalTableModify.NONE.ANY([]).[](input=HepRelVertex#99,table=[pg, public, t1],operation=INSERT,flattened=true)
2022-12-28 19:03:07,319 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#98:LogicalProject.NONE.ANY([]).
2022-12-28 19:03:07,319 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])
2022-12-28 19:03:07,319 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - HEP:Window Function rewrites (1ms):
LogicalTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {2.0000001E9 rows, 2.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 100
LogicalProject(c1=[$0], c2=[$1]): rowcount = 1.0E9, cumulative cost = {1.0000001E9 rows, 2.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 98
JdbcTableScan(table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

2022-12-28 19:03:07,321 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner -
Breadth-first from root: {
rel#108:HepRelVertex(rel#107:LogicalTableModify.NONE.ANY([]).[](input=HepRelVertex#106,table=[pg, public, t1],operation=INSERT,flattened=true)) = rel#107:LogicalTableModify.NONE.ANY([]).[](input=HepRelVertex#106,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={2.0000001E9 rows, 2.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#106:HepRelVertex(rel#105:LogicalProject.NONE.ANY([]).) = rel#105:LogicalProject.NONE.ANY([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 2.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#104:HepRelVertex(rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])) = rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
}
2022-12-28 19:03:07,321 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Setting match order to BOTTOM_UP
2022-12-28 19:03:07,321 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - collecting garbage
2022-12-28 19:03:07,321 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DrillFilterItemStarReWriterRule.ProjectOnScan]
2022-12-28 19:03:07,321 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DrillFilterItemStarReWriterRule.FilterOnScan]
2022-12-28 19:03:07,321 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DrillFilterItemStarReWriterRule.FilterProjectScan]
2022-12-28 19:03:07,321 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DirPruneScanRule:Filter_On_Project]
2022-12-28 19:03:07,321 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DirPruneScanRule:Filter_On_Scan]
2022-12-28 19:03:07,321 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [PartitionColumnScanPruningRule:Prune_On_Scan]
2022-12-28 19:03:07,321 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [ConvertCountToDirectScanRule:Agg_on_proj_on_scan]
2022-12-28 19:03:07,321 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [ConvertCountToDirectScanRule:Agg_on_scan]
2022-12-28 19:03:07,321 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary - Rule Attempts Info for HepPlanner
2022-12-28 19:03:07,322 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary -
Rules Attempts Time (us)

  • Total 0 0

2022-12-28 19:03:07,322 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#107:LogicalTableModify.NONE.ANY([]).[](input=HepRelVertex#106,table=[pg, public, t1],operation=INSERT,flattened=true)
2022-12-28 19:03:07,322 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#105:LogicalProject.NONE.ANY([]).
2022-12-28 19:03:07,322 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])
2022-12-28 19:03:07,322 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - HEP_BOTTOM_UP:Directory Prune Planning (1ms):
LogicalTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {2.0000001E9 rows, 2.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 107
LogicalProject(c1=[$0], c2=[$1]): rowcount = 1.0E9, cumulative cost = {1.0000001E9 rows, 2.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 105
JdbcTableScan(table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

2022-12-28 19:03:07,323 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]] cost was {inf} now {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,324 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]) in rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]
2022-12-28 19:03:07,324 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#89]
2022-12-28 19:03:07,324 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#110:LogicalProject.NONE.ANY([]). in rel#111:RelSubset#1.NONE.ANY([]).[]
2022-12-28 19:03:07,324 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [ProjectRemoveRule] rels [#110]
2022-12-28 19:03:07,324 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [DrillProjectRule] rels [#110]
2022-12-28 19:03:07,324 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [ReduceAndSimplifyProjectRule] rels [#110]
2022-12-28 19:03:07,324 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [ReduceExpressionsRule(Project)] rels [#110]
2022-12-28 19:03:07,325 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [DrillJdbcProjectRule(in:NONE,out:JDBC.mysql)] rels [#110]
2022-12-28 19:03:07,325 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [DrillJdbcProjectRule(in:NONE,out:JDBC.pg)] rels [#110]
2022-12-28 19:03:07,325 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#111,table=[pg, public, t1],operation=INSERT,flattened=true) in rel#113:RelSubset#2.NONE.ANY([]).[]
2022-12-28 19:03:07,325 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [DrillTableModifyRule] rels [#112]
2022-12-28 19:03:07,325 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)] rels [#112]
2022-12-28 19:03:07,325 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)] rels [#112]
2022-12-28 19:03:07,326 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#115:AbstractConverter.LOGICAL.ANY([]). in rel#114:RelSubset#2.LOGICAL.ANY([]).[]
2022-12-28 19:03:07,326 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [ExpandConversionRule] rels [#115]
2022-12-28 19:03:07,326 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {inf}
2022-12-28 19:03:07,326 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
LogicalTableModify(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E9 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 112
LogicalProject(subset=[rel#111:RelSubset#1.NONE.ANY([]).[]], c1=[$0], c2=[$1]): rowcount = 1.0E9, cumulative cost = {1.0E9 rows, 2.0E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 110
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#1, type: RecordType(INTEGER c1, INTEGER c2)
rel#111:RelSubset#1.NONE.ANY([]).[], best=null
rel#110:LogicalProject.NONE.ANY([])., rowcount=1.0E9, cumulative cost={inf}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#111,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=null
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
}
subgraph cluster1{
label="Set 1 RecordType(INTEGER c1, INTEGER c2)";
rel110 [label="rel#110:LogicalProject\ninput=RelSubset#109,inputs=0..1\nrows=1.0E9, cost={inf}",shape=box]
subset111 [label="rel#111:RelSubset#1.NONE.ANY([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#111,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]",color=red]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset111 -> rel110; rel110 -> subset109;
subset113 -> rel112; rel112 -> subset111;
subset114 -> rel115; rel115 -> subset113;
}
2022-12-28 19:03:07,326 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [ProjectRemoveRule] rels [#110]
rule [ReduceAndSimplifyProjectRule] rels [#110]
rule [ReduceExpressionsRule(Project)] rels [#110]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#89]
rule [DrillProjectRule] rels [#110]
rule [DrillJdbcProjectRule(in:NONE,out:JDBC.mysql)] rels [#110]
rule [DrillJdbcProjectRule(in:NONE,out:JDBC.pg)] rels [#110]
rule [DrillTableModifyRule] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)] rels [#112]
rule [ExpandConversionRule] rels [#115]
2022-12-28 19:03:07,326 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [ProjectRemoveRule] rels [#110]
2022-12-28 19:03:07,326 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#169: Apply rule [ProjectRemoveRule] to [rel#110:LogicalProject]
2022-12-28 19:03:07,326 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#116 via ProjectRemoveRule
2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#169: Full plan for rule input [rel#110:LogicalProject]:
LogicalProject(c1=[$0], c2=[$1])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#169: Rule [ProjectRemoveRule] produced [rel#116:RelSubset]
2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#169: Full plan for [rel#116:RelSubset]:
JdbcTableScan(subset=[rel#116:RelSubset#0.NONE.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Merge set#1 into set#0
2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rename #112 from 'LogicalTableModify.NONE.ANY([]).[](input=RelSubset#111,table=[pg, public, t1],operation=INSERT,flattened=true)' to 'LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true)'
2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#169 generated 1 successors: [rel#116:RelSubset#0.NONE.ANY([]).[]]
2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {inf}
2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
LogicalTableModify(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E9 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 112
JdbcTableScan(subset=[rel#116:RelSubset#0.NONE.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=null
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]",color=red]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
}
2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [ReduceAndSimplifyProjectRule] rels [#110]
rule [ReduceExpressionsRule(Project)] rels [#110]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#89]
rule [DrillProjectRule] rels [#110]
rule [DrillJdbcProjectRule(in:NONE,out:JDBC.mysql)] rels [#110]
rule [DrillJdbcProjectRule(in:NONE,out:JDBC.pg)] rels [#110]
rule [DrillTableModifyRule] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)] rels [#112]
rule [ExpandConversionRule] rels [#115]
2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Skip match: rule [ReduceAndSimplifyProjectRule] rels [#110]
2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [ReduceExpressionsRule(Project)] rels [#110]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#89]
rule [DrillProjectRule] rels [#110]
rule [DrillJdbcProjectRule(in:NONE,out:JDBC.mysql)] rels [#110]
rule [DrillJdbcProjectRule(in:NONE,out:JDBC.pg)] rels [#110]
rule [DrillTableModifyRule] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)] rels [#112]
rule [ExpandConversionRule] rels [#115]
2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Skip match: rule [ReduceExpressionsRule(Project)] rels [#110]
2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#89]
rule [DrillProjectRule] rels [#110]
rule [DrillJdbcProjectRule(in:NONE,out:JDBC.mysql)] rels [#110]
rule [DrillJdbcProjectRule(in:NONE,out:JDBC.pg)] rels [#110]
rule [DrillTableModifyRule] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)] rels [#112]
rule [ExpandConversionRule] rels [#115]
2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#89]
2022-12-28 19:03:07,327 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#165: Apply rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] to [rel#89:JdbcTableScan]
2022-12-28 19:03:07,328 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#117 via VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)
2022-12-28 19:03:07,328 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#165: Full plan for rule input [rel#89:JdbcTableScan]:
JdbcTableScan(table=[[mysql, test, t1]])

2022-12-28 19:03:07,328 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#165: Rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] produced [rel#117:VertexDrel]
2022-12-28 19:03:07,328 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#165: Full plan for [rel#117:VertexDrel]:
VertexDrel
JdbcTableScan(table=[[mysql, test, t1]])

2022-12-28 19:03:07,328 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#119:RelSubset#0.LOGICAL.ANY([]).[]] cost was {inf} now {1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,328 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#118:VertexDrel.LOGICAL.ANY([]). in rel#119:RelSubset#0.LOGICAL.ANY([]).[]
2022-12-28 19:03:07,328 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#89]
2022-12-28 19:03:07,328 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#165 generated 1 successors: [rel#117:VertexDrel.LOGICAL.ANY([]).]
2022-12-28 19:03:07,328 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {inf}
2022-12-28 19:03:07,329 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
LogicalTableModify(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E9 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 112
JdbcTableScan(subset=[rel#116:RelSubset#0.NONE.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=null
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]",color=red]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
}
2022-12-28 19:03:07,329 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [DrillProjectRule] rels [#110]
rule [DrillJdbcProjectRule(in:NONE,out:JDBC.mysql)] rels [#110]
rule [DrillJdbcProjectRule(in:NONE,out:JDBC.pg)] rels [#110]
rule [DrillTableModifyRule] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)] rels [#112]
rule [ExpandConversionRule] rels [#115]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#89]
2022-12-28 19:03:07,329 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Skip match: rule [DrillProjectRule] rels [#110]
2022-12-28 19:03:07,329 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [DrillJdbcProjectRule(in:NONE,out:JDBC.mysql)] rels [#110]
rule [DrillJdbcProjectRule(in:NONE,out:JDBC.pg)] rels [#110]
rule [DrillTableModifyRule] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)] rels [#112]
rule [ExpandConversionRule] rels [#115]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#89]
2022-12-28 19:03:07,329 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Skip match: rule [DrillJdbcProjectRule(in:NONE,out:JDBC.mysql)] rels [#110]
2022-12-28 19:03:07,329 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [DrillJdbcProjectRule(in:NONE,out:JDBC.pg)] rels [#110]
rule [DrillTableModifyRule] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)] rels [#112]
rule [ExpandConversionRule] rels [#115]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#89]
2022-12-28 19:03:07,329 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Skip match: rule [DrillJdbcProjectRule(in:NONE,out:JDBC.pg)] rels [#110]
2022-12-28 19:03:07,329 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [DrillTableModifyRule] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)] rels [#112]
rule [ExpandConversionRule] rels [#115]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#89]
2022-12-28 19:03:07,329 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [DrillTableModifyRule] rels [#112]
2022-12-28 19:03:07,329 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#198: Apply rule [DrillTableModifyRule] to [rel#112:LogicalTableModify]
2022-12-28 19:03:07,329 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#120 via DrillTableModifyRule
2022-12-28 19:03:07,329 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#198: Full plan for rule input [rel#112:LogicalTableModify]:
LogicalTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#116:RelSubset#0.NONE.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,329 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#198: Rule [DrillTableModifyRule] produced [rel#120:DrillTableModify]
2022-12-28 19:03:07,329 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#198: Full plan for [rel#120:DrillTableModify]:
DrillTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
VertexDrel(subset=[rel#119:RelSubset#0.LOGICAL.ANY([]).[]])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,330 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#114:RelSubset#2.LOGICAL.ANY([]).[]] cost was {inf} now {1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,330 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true) in rel#114:RelSubset#2.LOGICAL.ANY([]).[]
2022-12-28 19:03:07,330 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:LOGICAL,out:JDBC.mysql)] rels [#120]
2022-12-28 19:03:07,330 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:LOGICAL,out:JDBC.pg)] rels [#120]
2022-12-28 19:03:07,330 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#198 generated 1 successors: [rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true)]
2022-12-28 19:03:07,330 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,330 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
DrillTableModify(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E10 rows, 0.0 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}, id = 120
VertexDrel(subset=[rel#119:RelSubset#0.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 2.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 118
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#120
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120[color=blue]; rel120 -> subset119[color=blue];
}

@weijunlu
Copy link
Author

2022-12-28 19:03:07,330 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)] rels [#112]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)] rels [#112]
rule [ExpandConversionRule] rels [#115]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#89]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:LOGICAL,out:JDBC.mysql)] rels [#120]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:LOGICAL,out:JDBC.pg)] rels [#120]
2022-12-28 19:03:07,330 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)] rels [#112]
2022-12-28 19:03:07,330 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#202: Apply rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)] to [rel#112:LogicalTableModify]
2022-12-28 19:03:07,337 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#121 via JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)
2022-12-28 19:03:07,338 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#202: Full plan for rule input [rel#112:LogicalTableModify]:
LogicalTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#116:RelSubset#0.NONE.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,338 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#202: Rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)] produced [rel#121:JdbcTableModify]
2022-12-28 19:03:07,338 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#202: Full plan for [rel#121:JdbcTableModify]:
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,338 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]] cost was {inf} now {101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,338 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true) in rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]
2022-12-28 19:03:07,338 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#121]
2022-12-28 19:03:07,338 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#202 generated 1 successors: [rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true)]
2022-12-28 19:03:07,338 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,339 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
DrillTableModify(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E10 rows, 0.0 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}, id = 120
VertexDrel(subset=[rel#119:RelSubset#0.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 2.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 118
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#120
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120[color=blue]; rel120 -> subset119[color=blue];
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
}
2022-12-28 19:03:07,339 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)] rels [#112]
rule [ExpandConversionRule] rels [#115]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#89]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:LOGICAL,out:JDBC.mysql)] rels [#120]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:LOGICAL,out:JDBC.pg)] rels [#120]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#121]
2022-12-28 19:03:07,339 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)] rels [#112]
2022-12-28 19:03:07,339 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#204: Apply rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)] to [rel#112:LogicalTableModify]
2022-12-28 19:03:07,339 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#124 via JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)
2022-12-28 19:03:07,339 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#204: Full plan for rule input [rel#112:LogicalTableModify]:
LogicalTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#116:RelSubset#0.NONE.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,339 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#204: Rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg)] produced [rel#124:JdbcTableModify]
2022-12-28 19:03:07,339 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#204: Full plan for [rel#124:JdbcTableModify]:
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#123:RelSubset#0.JDBC.pg.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,339 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true) in rel#125:RelSubset#2.JDBC.pg.ANY([]).[]
2022-12-28 19:03:07,339 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#124]
2022-12-28 19:03:07,339 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#204 generated 1 successors: [rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true)]
2022-12-28 19:03:07,339 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,340 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
DrillTableModify(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E10 rows, 0.0 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}, id = 120
VertexDrel(subset=[rel#119:RelSubset#0.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 2.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 118
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#120
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120[color=blue]; rel120 -> subset119[color=blue];
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
}
2022-12-28 19:03:07,340 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [ExpandConversionRule] rels [#115]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#89]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:LOGICAL,out:JDBC.mysql)] rels [#120]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:LOGICAL,out:JDBC.pg)] rels [#120]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#121]
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#124]
2022-12-28 19:03:07,340 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [ExpandConversionRule] rels [#115]
2022-12-28 19:03:07,340 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#206: Apply rule [ExpandConversionRule] to [rel#115:AbstractConverter]
2022-12-28 19:03:07,340 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#206 generated 0 successors.
2022-12-28 19:03:07,340 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
DrillTableModify(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E10 rows, 0.0 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}, id = 120
VertexDrel(subset=[rel#119:RelSubset#0.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 2.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 118
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#120
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120[color=blue]; rel120 -> subset119[color=blue];
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
}
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#89]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:LOGICAL,out:JDBC.mysql)] rels [#120]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:LOGICAL,out:JDBC.pg)] rels [#120]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#121]
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#124]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#89]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#223: Apply rule [JDBC_PREL_ConverterJDBC.mysql] to [rel#118:VertexDrel,rel#89:JdbcTableScan]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#126 via JDBC_PREL_ConverterJDBC.mysql
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#223: Full plan for rule input [rel#118:VertexDrel]:
VertexDrel
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#223: Full plan for rule input [rel#89:JdbcTableScan]:
JdbcTableScan(table=[[mysql, test, t1]])

2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#223: Rule [JDBC_PREL_ConverterJDBC.mysql] produced [rel#126:JdbcIntermediatePrel]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#223: Full plan for [rel#126:JdbcIntermediatePrel]:
JdbcIntermediatePrel
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#128:AbstractConverter.JDBC.mysql.ANY([]). in rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [ExpandConversionRule] rels [#128]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#128]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#128]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#129:AbstractConverter.LOGICAL.ANY([]). in rel#119:RelSubset#0.LOGICAL.ANY([]).[]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [ExpandConversionRule] rels [#129]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#130:AbstractConverter.JDBC.pg.ANY([]). in rel#123:RelSubset#0.JDBC.pg.ANY([]).[]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [ExpandConversionRule] rels [#130]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#130]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]] cost was {inf} now {1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]). in rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#223 generated 1 successors: [rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).]
2022-12-28 19:03:07,341 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,342 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
DrillTableModify(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E10 rows, 0.0 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}, id = 120
VertexDrel(subset=[rel#119:RelSubset#0.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 2.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 118
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#120
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120[color=blue]; rel120 -> subset119[color=blue];
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
}
2022-12-28 19:03:07,342 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:LOGICAL,out:JDBC.mysql)] rels [#120]
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:LOGICAL,out:JDBC.pg)] rels [#120]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#121]
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#124]
rule [ExpandConversionRule] rels [#128]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#128]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#128]
rule [ExpandConversionRule] rels [#129]
rule [ExpandConversionRule] rels [#130]
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#130]
2022-12-28 19:03:07,342 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:LOGICAL,out:JDBC.mysql)] rels [#120]
2022-12-28 19:03:07,342 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#230: Apply rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:LOGICAL,out:JDBC.mysql)] to [rel#120:DrillTableModify]
2022-12-28 19:03:07,342 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#131 via JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:LOGICAL,out:JDBC.mysql)
2022-12-28 19:03:07,342 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#230: Full plan for rule input [rel#120:DrillTableModify]:
DrillTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
VertexDrel(subset=[rel#119:RelSubset#0.LOGICAL.ANY([]).[]])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,342 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#230: Rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:LOGICAL,out:JDBC.mysql)] produced [rel#131:JdbcTableModify]
2022-12-28 19:03:07,342 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#230: Full plan for [rel#131:JdbcTableModify]:
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,342 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register: rel#131 is equivalent to rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true)
2022-12-28 19:03:07,342 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#230 generated 1 successors: [rel#131:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true)]
2022-12-28 19:03:07,342 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,343 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
DrillTableModify(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E10 rows, 0.0 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}, id = 120
VertexDrel(subset=[rel#119:RelSubset#0.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 2.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 118
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#120
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120[color=blue]; rel120 -> subset119[color=blue];
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
}
2022-12-28 19:03:07,343 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:LOGICAL,out:JDBC.pg)] rels [#120]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#121]
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#124]
rule [ExpandConversionRule] rels [#128]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#128]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#128]
rule [ExpandConversionRule] rels [#129]
rule [ExpandConversionRule] rels [#130]
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#130]
2022-12-28 19:03:07,343 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:LOGICAL,out:JDBC.pg)] rels [#120]
2022-12-28 19:03:07,343 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#232: Apply rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:LOGICAL,out:JDBC.pg)] to [rel#120:DrillTableModify]
2022-12-28 19:03:07,343 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#132 via JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:LOGICAL,out:JDBC.pg)
2022-12-28 19:03:07,343 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#232: Full plan for rule input [rel#120:DrillTableModify]:
DrillTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
VertexDrel(subset=[rel#119:RelSubset#0.LOGICAL.ANY([]).[]])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,343 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#232: Rule [JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:LOGICAL,out:JDBC.pg)] produced [rel#132:JdbcTableModify]
2022-12-28 19:03:07,343 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#232: Full plan for [rel#132:JdbcTableModify]:
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#123:RelSubset#0.JDBC.pg.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,343 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register: rel#132 is equivalent to rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true)
2022-12-28 19:03:07,343 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#232 generated 1 successors: [rel#132:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true)]
2022-12-28 19:03:07,343 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,345 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
DrillTableModify(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E10 rows, 0.0 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}, id = 120
VertexDrel(subset=[rel#119:RelSubset#0.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 2.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 118
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#120
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120[color=blue]; rel120 -> subset119[color=blue];
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
}
2022-12-28 19:03:07,345 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#121]
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#124]
rule [ExpandConversionRule] rels [#128]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#128]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#128]
rule [ExpandConversionRule] rels [#129]
rule [ExpandConversionRule] rels [#130]
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#130]
2022-12-28 19:03:07,345 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#121]
2022-12-28 19:03:07,345 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#239: Apply rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] to [rel#121:JdbcTableModify]
2022-12-28 19:03:07,345 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#133 via VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)
2022-12-28 19:03:07,345 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#239: Full plan for rule input [rel#121:JdbcTableModify]:
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,345 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#239: Rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] produced [rel#133:VertexDrel]
2022-12-28 19:03:07,345 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#239: Full plan for [rel#133:VertexDrel]:
VertexDrel
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,345 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#114:RelSubset#2.LOGICAL.ANY([]).[]] cost was {1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory} now {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,345 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#134:VertexDrel.LOGICAL.ANY([]). in rel#114:RelSubset#2.LOGICAL.ANY([]).[]
2022-12-28 19:03:07,345 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [JDBC_PREL_ConverterJDBC.mysql] rels [#134,#121]
2022-12-28 19:03:07,345 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#239 generated 1 successors: [rel#133:VertexDrel.LOGICAL.ANY([]).]
2022-12-28 19:03:07,345 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,345 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#134
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#134:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel134 [label="rel#134:VertexDrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120; rel120 -> subset119;
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
subset114 -> rel134[color=blue]; rel134 -> subset122[color=blue];
}
2022-12-28 19:03:07,346 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#124]
rule [ExpandConversionRule] rels [#128]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#128]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#128]
rule [ExpandConversionRule] rels [#129]
rule [ExpandConversionRule] rels [#130]
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#130]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#134,#121]
2022-12-28 19:03:07,346 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#124]
2022-12-28 19:03:07,346 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#246: Apply rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] to [rel#124:JdbcTableModify]
2022-12-28 19:03:07,346 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#135 via VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)
2022-12-28 19:03:07,346 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#246: Full plan for rule input [rel#124:JdbcTableModify]:
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#123:RelSubset#0.JDBC.pg.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,346 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#246: Rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] produced [rel#135:VertexDrel]
2022-12-28 19:03:07,346 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#246: Full plan for [rel#135:VertexDrel]:
VertexDrel
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#123:RelSubset#0.JDBC.pg.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,346 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#136:VertexDrel.LOGICAL.ANY([]). in rel#114:RelSubset#2.LOGICAL.ANY([]).[]
2022-12-28 19:03:07,346 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [JDBC_PREL_ConverterJDBC.pg] rels [#136,#124]
2022-12-28 19:03:07,346 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#246 generated 1 successors: [rel#135:VertexDrel.LOGICAL.ANY([]).]
2022-12-28 19:03:07,346 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,346 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#134
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#134:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#136:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel134 [label="rel#134:VertexDrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel136 [label="rel#136:VertexDrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120; rel120 -> subset119;
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
subset114 -> rel134[color=blue]; rel134 -> subset122[color=blue];
subset114 -> rel136; rel136 -> subset125;
}
2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [ExpandConversionRule] rels [#128]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#128]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#128]
rule [ExpandConversionRule] rels [#129]
rule [ExpandConversionRule] rels [#130]
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#130]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#134,#121]
rule [JDBC_PREL_ConverterJDBC.pg] rels [#136,#124]
2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [ExpandConversionRule] rels [#128]
2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#248: Apply rule [ExpandConversionRule] to [rel#128:AbstractConverter]
2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#248 generated 0 successors.
2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#134
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#134:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#136:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel134 [label="rel#134:VertexDrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel136 [label="rel#136:VertexDrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120; rel120 -> subset119;
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
subset114 -> rel134[color=blue]; rel134 -> subset122[color=blue];
subset114 -> rel136; rel136 -> subset125;
}
2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#128]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#128]
rule [ExpandConversionRule] rels [#129]
rule [ExpandConversionRule] rels [#130]
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#130]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#134,#121]
rule [JDBC_PREL_ConverterJDBC.pg] rels [#136,#124]
2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [JDBC_PREL_ConverterJDBC.mysql] rels [#118,#128]
2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#254: Apply rule [JDBC_PREL_ConverterJDBC.mysql] to [rel#118:VertexDrel,rel#128:AbstractConverter]
2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#137 via JDBC_PREL_ConverterJDBC.mysql
2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#254: Full plan for rule input [rel#118:VertexDrel]:
VertexDrel
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#254: Full plan for rule input [rel#128:AbstractConverter]:
AbstractConverter(convention=[JDBC.mysql], DrillDistributionTraitDef=[ANY([])], sort=[[]])
JdbcIntermediatePrel(subset=[rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#254: Rule [JDBC_PREL_ConverterJDBC.mysql] produced [rel#137:JdbcIntermediatePrel]
2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#254: Full plan for [rel#137:JdbcIntermediatePrel]:
JdbcIntermediatePrel
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register: rel#137 is equivalent to rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).
2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#254 generated 1 successors: [rel#137:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).]
2022-12-28 19:03:07,347 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,348 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#134
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#134:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#136:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel134 [label="rel#134:VertexDrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel136 [label="rel#136:VertexDrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120; rel120 -> subset119;
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
subset114 -> rel134[color=blue]; rel134 -> subset122[color=blue];
subset114 -> rel136; rel136 -> subset125;
}
2022-12-28 19:03:07,348 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#128]
rule [ExpandConversionRule] rels [#129]
rule [ExpandConversionRule] rels [#130]
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#130]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#134,#121]
rule [JDBC_PREL_ConverterJDBC.pg] rels [#136,#124]
2022-12-28 19:03:07,348 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#128]
2022-12-28 19:03:07,348 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#256: Apply rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] to [rel#128:AbstractConverter]
2022-12-28 19:03:07,348 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#138 via VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)
2022-12-28 19:03:07,348 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#256: Full plan for rule input [rel#128:AbstractConverter]:
AbstractConverter(convention=[JDBC.mysql], DrillDistributionTraitDef=[ANY([])], sort=[[]])
JdbcIntermediatePrel(subset=[rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,348 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#256: Rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] produced [rel#138:VertexDrel]
2022-12-28 19:03:07,348 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#256: Full plan for [rel#138:VertexDrel]:
VertexDrel
AbstractConverter(convention=[JDBC.mysql], DrillDistributionTraitDef=[ANY([])], sort=[[]])
JdbcIntermediatePrel(subset=[rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,348 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register: rel#139 is equivalent to rel#118:VertexDrel.LOGICAL.ANY([]).
2022-12-28 19:03:07,348 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#256 generated 1 successors: [rel#138:VertexDrel.LOGICAL.ANY([]).]
2022-12-28 19:03:07,348 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,349 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#134
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#134:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#136:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel134 [label="rel#134:VertexDrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel136 [label="rel#136:VertexDrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120; rel120 -> subset119;
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
subset114 -> rel134[color=blue]; rel134 -> subset122[color=blue];
subset114 -> rel136; rel136 -> subset125;
}
2022-12-28 19:03:07,349 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [ExpandConversionRule] rels [#129]
rule [ExpandConversionRule] rels [#130]
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#130]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#134,#121]
rule [JDBC_PREL_ConverterJDBC.pg] rels [#136,#124]
2022-12-28 19:03:07,349 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [ExpandConversionRule] rels [#129]
2022-12-28 19:03:07,349 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#258: Apply rule [ExpandConversionRule] to [rel#129:AbstractConverter]
2022-12-28 19:03:07,349 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#258 generated 0 successors.
2022-12-28 19:03:07,349 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,350 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#134
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#134:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#136:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel134 [label="rel#134:VertexDrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel136 [label="rel#136:VertexDrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120; rel120 -> subset119;
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
subset114 -> rel134[color=blue]; rel134 -> subset122[color=blue];
subset114 -> rel136; rel136 -> subset125;
}

@weijunlu
Copy link
Author

2022-12-28 19:03:07,350 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [ExpandConversionRule] rels [#130]
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#130]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#134,#121]
rule [JDBC_PREL_ConverterJDBC.pg] rels [#136,#124]
2022-12-28 19:03:07,350 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [ExpandConversionRule] rels [#130]
2022-12-28 19:03:07,350 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#264: Apply rule [ExpandConversionRule] to [rel#130:AbstractConverter]
2022-12-28 19:03:07,350 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#264 generated 0 successors.
2022-12-28 19:03:07,350 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,350 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#134
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#134:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#136:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel134 [label="rel#134:VertexDrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel136 [label="rel#136:VertexDrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120; rel120 -> subset119;
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
subset114 -> rel134[color=blue]; rel134 -> subset122[color=blue];
subset114 -> rel136; rel136 -> subset125;
}
2022-12-28 19:03:07,350 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#130]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#134,#121]
rule [JDBC_PREL_ConverterJDBC.pg] rels [#136,#124]
2022-12-28 19:03:07,350 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] rels [#130]
2022-12-28 19:03:07,350 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#271: Apply rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] to [rel#130:AbstractConverter]
2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#140 via VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)
2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#271: Full plan for rule input [rel#130:AbstractConverter]:
AbstractConverter(convention=[JDBC.pg], DrillDistributionTraitDef=[ANY([])], sort=[[]])
JdbcIntermediatePrel(subset=[rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#271: Rule [VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL)] produced [rel#140:VertexDrel]
2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#271: Full plan for [rel#140:VertexDrel]:
VertexDrel
AbstractConverter(convention=[JDBC.pg], DrillDistributionTraitDef=[ANY([])], sort=[[]])
JdbcIntermediatePrel(subset=[rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#141:VertexDrel.LOGICAL.ANY([]). in rel#119:RelSubset#0.LOGICAL.ANY([]).[]
2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [JDBC_PREL_ConverterJDBC.pg] rels [#141,#130]
2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#271 generated 1 successors: [rel#140:VertexDrel.LOGICAL.ANY([]).]
2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#141:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#134
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#134:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#136:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel141 [label="rel#141:VertexDrel\ninput=RelSubset#123\nrows=1.0E9, cost={inf}",shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel134 [label="rel#134:VertexDrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel136 [label="rel#136:VertexDrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset119 -> rel141; rel141 -> subset123;
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120; rel120 -> subset119;
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
subset114 -> rel134[color=blue]; rel134 -> subset122[color=blue];
subset114 -> rel136; rel136 -> subset125;
}
2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#134,#121]
rule [JDBC_PREL_ConverterJDBC.pg] rels [#136,#124]
rule [JDBC_PREL_ConverterJDBC.pg] rels [#141,#130]
2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [JDBC_PREL_ConverterJDBC.mysql] rels [#134,#121]
2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#281: Apply rule [JDBC_PREL_ConverterJDBC.mysql] to [rel#134:VertexDrel,rel#121:JdbcTableModify]
2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#142 via JDBC_PREL_ConverterJDBC.mysql
2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#281: Full plan for rule input [rel#134:VertexDrel]:
VertexDrel
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#281: Full plan for rule input [rel#121:JdbcTableModify]:
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#281: Rule [JDBC_PREL_ConverterJDBC.mysql] produced [rel#142:JdbcIntermediatePrel]
2022-12-28 19:03:07,351 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#281: Full plan for [rel#142:JdbcIntermediatePrel]:
JdbcIntermediatePrel
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,352 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#144:AbstractConverter.LOGICAL.ANY([]). in rel#114:RelSubset#2.LOGICAL.ANY([]).[]
2022-12-28 19:03:07,352 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [ExpandConversionRule] rels [#144]
2022-12-28 19:03:07,352 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#143:RelSubset#2.PHYSICAL.SINGLETON([]).[]] cost was {inf} now {1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,352 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#142:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]). in rel#143:RelSubset#2.PHYSICAL.SINGLETON([]).[]
2022-12-28 19:03:07,352 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#281 generated 1 successors: [rel#142:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).]
2022-12-28 19:03:07,352 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,352 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#141:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#134
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#134:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#136:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#144:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#143:RelSubset#2.PHYSICAL.SINGLETON([]).[], best=rel#142
rel#142:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel141 [label="rel#141:VertexDrel\ninput=RelSubset#123\nrows=1.0E9, cost={inf}",shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel134 [label="rel#134:VertexDrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel136 [label="rel#136:VertexDrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
rel144 [label="rel#144:AbstractConverter\ninput=RelSubset#143,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel142 [label="rel#142:JdbcIntermediatePrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
subset143 [label="rel#143:RelSubset#2.PHYSICAL.SINGLETON([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset119 -> rel141; rel141 -> subset123;
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120; rel120 -> subset119;
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
subset114 -> rel134[color=blue]; rel134 -> subset122[color=blue];
subset114 -> rel136; rel136 -> subset125;
subset114 -> rel144; rel144 -> subset143;
subset143 -> rel142[color=blue]; rel142 -> subset122[color=blue];
}
2022-12-28 19:03:07,352 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [JDBC_PREL_ConverterJDBC.pg] rels [#136,#124]
rule [JDBC_PREL_ConverterJDBC.pg] rels [#141,#130]
rule [ExpandConversionRule] rels [#144]
2022-12-28 19:03:07,352 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [JDBC_PREL_ConverterJDBC.pg] rels [#136,#124]
2022-12-28 19:03:07,352 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#289: Apply rule [JDBC_PREL_ConverterJDBC.pg] to [rel#136:VertexDrel,rel#124:JdbcTableModify]
2022-12-28 19:03:07,352 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#145 via JDBC_PREL_ConverterJDBC.pg
2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#289: Full plan for rule input [rel#136:VertexDrel]:
VertexDrel
LogicalTableModify(subset=[rel#125:RelSubset#2.JDBC.pg.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#116:RelSubset#0.NONE.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#289: Full plan for rule input [rel#124:JdbcTableModify]:
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#123:RelSubset#0.JDBC.pg.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#289: Rule [JDBC_PREL_ConverterJDBC.pg] produced [rel#145:JdbcIntermediatePrel]
2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#289: Full plan for [rel#145:JdbcIntermediatePrel]:
JdbcIntermediatePrel
LogicalTableModify(subset=[rel#125:RelSubset#2.JDBC.pg.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#116:RelSubset#0.NONE.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#145:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]). in rel#143:RelSubset#2.PHYSICAL.SINGLETON([]).[]
2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#289 generated 1 successors: [rel#145:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).]
2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#141:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#134
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#134:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#136:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#144:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#143:RelSubset#2.PHYSICAL.SINGLETON([]).[], best=rel#142
rel#142:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#145:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel141 [label="rel#141:VertexDrel\ninput=RelSubset#123\nrows=1.0E9, cost={inf}",shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel134 [label="rel#134:VertexDrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel136 [label="rel#136:VertexDrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
rel144 [label="rel#144:AbstractConverter\ninput=RelSubset#143,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel142 [label="rel#142:JdbcIntermediatePrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel145 [label="rel#145:JdbcIntermediatePrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
subset143 [label="rel#143:RelSubset#2.PHYSICAL.SINGLETON([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset119 -> rel141; rel141 -> subset123;
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120; rel120 -> subset119;
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
subset114 -> rel134[color=blue]; rel134 -> subset122[color=blue];
subset114 -> rel136; rel136 -> subset125;
subset114 -> rel144; rel144 -> subset143;
subset143 -> rel142[color=blue]; rel142 -> subset122[color=blue];
subset143 -> rel145; rel145 -> subset125;
}
2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [JDBC_PREL_ConverterJDBC.pg] rels [#141,#130]
rule [ExpandConversionRule] rels [#144]
2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [JDBC_PREL_ConverterJDBC.pg] rels [#141,#130]
2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#296: Apply rule [JDBC_PREL_ConverterJDBC.pg] to [rel#141:VertexDrel,rel#130:AbstractConverter]
2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#146 via JDBC_PREL_ConverterJDBC.pg
2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#296: Full plan for rule input [rel#141:VertexDrel]:
VertexDrel
JdbcTableScan(subset=[rel#123:RelSubset#0.JDBC.pg.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#296: Full plan for rule input [rel#130:AbstractConverter]:
AbstractConverter(convention=[JDBC.pg], DrillDistributionTraitDef=[ANY([])], sort=[[]])
JdbcIntermediatePrel(subset=[rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]])
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,353 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#296: Rule [JDBC_PREL_ConverterJDBC.pg] produced [rel#146:JdbcIntermediatePrel]
2022-12-28 19:03:07,354 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#296: Full plan for [rel#146:JdbcIntermediatePrel]:
JdbcIntermediatePrel
JdbcTableScan(subset=[rel#123:RelSubset#0.JDBC.pg.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,354 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#146:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]). in rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]
2022-12-28 19:03:07,354 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#296 generated 1 successors: [rel#146:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).]
2022-12-28 19:03:07,354 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,354 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#141:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#146:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={inf}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#134
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#134:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#136:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#144:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#143:RelSubset#2.PHYSICAL.SINGLETON([]).[], best=rel#142
rel#142:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#145:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel141 [label="rel#141:VertexDrel\ninput=RelSubset#123\nrows=1.0E9, cost={inf}",shape=box]
rel146 [label="rel#146:JdbcIntermediatePrel\ninput=RelSubset#123\nrows=1.0E9, cost={inf}",shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel134 [label="rel#134:VertexDrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel136 [label="rel#136:VertexDrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
rel144 [label="rel#144:AbstractConverter\ninput=RelSubset#143,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel142 [label="rel#142:JdbcIntermediatePrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel145 [label="rel#145:JdbcIntermediatePrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
subset143 [label="rel#143:RelSubset#2.PHYSICAL.SINGLETON([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset119 -> rel141; rel141 -> subset123;
subset127 -> rel146; rel146 -> subset123;
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120; rel120 -> subset119;
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
subset114 -> rel134[color=blue]; rel134 -> subset122[color=blue];
subset114 -> rel136; rel136 -> subset125;
subset114 -> rel144; rel144 -> subset143;
subset143 -> rel142[color=blue]; rel142 -> subset122[color=blue];
subset143 -> rel145; rel145 -> subset125;
}
2022-12-28 19:03:07,354 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [ExpandConversionRule] rels [#144]
2022-12-28 19:03:07,354 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [ExpandConversionRule] rels [#144]
2022-12-28 19:03:07,354 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#298: Apply rule [ExpandConversionRule] to [rel#144:AbstractConverter]
2022-12-28 19:03:07,354 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#298 generated 0 successors.
2022-12-28 19:03:07,354 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,355 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#141:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#146:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={inf}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#134
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#134:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#136:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#144:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#143:RelSubset#2.PHYSICAL.SINGLETON([]).[], best=rel#142
rel#142:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#145:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel141 [label="rel#141:VertexDrel\ninput=RelSubset#123\nrows=1.0E9, cost={inf}",shape=box]
rel146 [label="rel#146:JdbcIntermediatePrel\ninput=RelSubset#123\nrows=1.0E9, cost={inf}",shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel134 [label="rel#134:VertexDrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel136 [label="rel#136:VertexDrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
rel144 [label="rel#144:AbstractConverter\ninput=RelSubset#143,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel142 [label="rel#142:JdbcIntermediatePrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel145 [label="rel#145:JdbcIntermediatePrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
subset143 [label="rel#143:RelSubset#2.PHYSICAL.SINGLETON([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset119 -> rel141; rel141 -> subset123;
subset127 -> rel146; rel146 -> subset123;
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120; rel120 -> subset119;
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
subset114 -> rel134[color=blue]; rel134 -> subset122[color=blue];
subset114 -> rel136; rel136 -> subset125;
subset114 -> rel144; rel144 -> subset143;
subset143 -> rel142[color=blue]; rel142 -> subset122[color=blue];
subset143 -> rel145; rel145 -> subset125;
}
2022-12-28 19:03:07,355 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] INFO o.apache.calcite.plan.RelOptPlanner - Root: rel#114:RelSubset#2.LOGICAL.ANY([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#0, type: RecordType(INTEGER c1, INTEGER c2)
rel#109:RelSubset#0.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#128:AbstractConverter.JDBC.mysql.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#116:RelSubset#0.NONE.ANY([]).[], best=null
rel#119:RelSubset#0.LOGICAL.ANY([]).[], best=rel#118
rel#118:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#129:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#141:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
rel#130:AbstractConverter.JDBC.pg.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#146:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={inf}
Set#2, type: RecordType(BIGINT ROWCOUNT)
rel#113:RelSubset#2.NONE.ANY([]).[], best=null
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#114:RelSubset#2.LOGICAL.ANY([]).[], best=rel#134
rel#115:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#120:DrillTableModify.LOGICAL.ANY([]).[](input=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}
rel#134:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#136:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#144:AbstractConverter.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={inf}
rel#122:RelSubset#2.JDBC.mysql.ANY([]).[], best=rel#121
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#125:RelSubset#2.JDBC.pg.ANY([]).[], best=null
rel#124:JdbcTableModify.JDBC.pg.ANY([]).[](input=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={inf}
rel#143:RelSubset#2.PHYSICAL.SINGLETON([]).[], best=rel#142
rel#142:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#145:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={inf}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster0{
label="Set 0 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel118 [label="rel#118:VertexDrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel128 [label="rel#128:AbstractConverter\ninput=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel129 [label="rel#129:AbstractConverter\ninput=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel130 [label="rel#130:AbstractConverter\ninput=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel126 [label="rel#126:JdbcIntermediatePrel\ninput=RelSubset#109\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel141 [label="rel#141:VertexDrel\ninput=RelSubset#123\nrows=1.0E9, cost={inf}",shape=box]
rel146 [label="rel#146:JdbcIntermediatePrel\ninput=RelSubset#123\nrows=1.0E9, cost={inf}",shape=box]
subset109 [label="rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]"]
subset116 [label="rel#116:RelSubset#0.NONE.ANY([]).[]",color=red]
subset119 [label="rel#119:RelSubset#0.LOGICAL.ANY([]).[]"]
subset123 [label="rel#123:RelSubset#0.JDBC.pg.ANY([]).[]",color=red]
subset127 [label="rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster2{
label="Set 2 RecordType(BIGINT ROWCOUNT)";
rel112 [label="rel#112:LogicalTableModify\ninput=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel115 [label="rel#115:AbstractConverter\ninput=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel120 [label="rel#120:DrillTableModify\ninput=RelSubset#119,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={1.01000001E10 rows, 2.00000101E8 cpu, 1.000000001E10 io, 0.0 network, 0.0 memory}",shape=box]
rel121 [label="rel#121:JdbcTableModify\ninput=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel124 [label="rel#124:JdbcTableModify\ninput=RelSubset#123,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={inf}",shape=box]
rel134 [label="rel#134:VertexDrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel136 [label="rel#136:VertexDrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
rel144 [label="rel#144:AbstractConverter\ninput=RelSubset#143,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]\nrows=1.0E9, cost={inf}",shape=box]
rel142 [label="rel#142:JdbcIntermediatePrel\ninput=RelSubset#122\nrows=1.0E9, cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel145 [label="rel#145:JdbcIntermediatePrel\ninput=RelSubset#125\nrows=1.0E9, cost={inf}",shape=box]
subset113 [label="rel#113:RelSubset#2.NONE.ANY([]).[]"]
subset114 [label="rel#114:RelSubset#2.LOGICAL.ANY([]).[]"]
subset122 [label="rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]"]
subset125 [label="rel#125:RelSubset#2.JDBC.pg.ANY([]).[]"]
subset143 [label="rel#143:RelSubset#2.PHYSICAL.SINGLETON([]).[]"]
}
root -> subset114;
subset109 -> rel89[color=blue];
subset119 -> rel118[color=blue]; rel118 -> subset109[color=blue];
subset109 -> rel128; rel128 -> subset127;
subset119 -> rel129; rel129 -> subset127;
subset123 -> rel130; rel130 -> subset127;
subset127 -> rel126[color=blue]; rel126 -> subset109[color=blue];
subset119 -> rel141; rel141 -> subset123;
subset127 -> rel146; rel146 -> subset123;
subset113 -> rel112; rel112 -> subset116;
subset114 -> rel115; rel115 -> subset113;
subset114 -> rel120; rel120 -> subset119;
subset122 -> rel121[color=blue]; rel121 -> subset109[color=blue];
subset125 -> rel124; rel124 -> subset123;
subset114 -> rel134[color=blue]; rel134 -> subset122[color=blue];
subset114 -> rel136; rel136 -> subset125;
subset114 -> rel144; rel144 -> subset143;
subset143 -> rel142[color=blue]; rel142 -> subset122[color=blue];
subset143 -> rel145; rel145 -> subset125;
}
2022-12-28 19:03:07,355 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary - Rule Attempts Info for VolcanoPlanner
2022-12-28 19:03:07,356 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary -
Rules Attempts Time (us)
ExpandConversionRule 5 256
JDBC_PREL_ConverterJDBC.mysql 3 1,987
VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL) 3 1,496
VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL) 2 722
JDBC_PREL_ConverterJDBC.pg 2 658
JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql) 1 7,641
DrillTableModifyRule 1 643
JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg) 1 566
ProjectRemoveRule 1 493
JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:LOGICAL,out:JDBC.mysql) 1 257
JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:LOGICAL,out:JDBC.pg) 1 228

  • Total 21 14,947

2022-12-28 19:03:07,356 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Cheapest plan:
VertexDrel: rowcount = 1.0E9, cumulative cost = {2.000001E8 rows, 1.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 148
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.000001E8 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 147
JdbcTableScan(table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

2022-12-28 19:03:07,356 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Provenance:
rel#148:VertexDrel.LOGICAL.ANY([]).
direct
rel#134:VertexDrel.LOGICAL.ANY([]).
call#239 rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)]
rel#121:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#109,table=[pg, public, t1],operation=INSERT,flattened=true)
call#202 rule [JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql)]
rel#112:LogicalTableModify.NONE.ANY([]).[](input=RelSubset#116,table=[pg, public, t1],operation=INSERT,flattened=true)
no parent
rel#147:JdbcTableModify.JDBC.mysql.ANY([]).[](input=JdbcTableScan#89,table=[pg, public, t1],operation=INSERT,flattened=true)
direct
rel#121 (see above)
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])
no parent

2022-12-28 19:03:07,356 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - VOLCANO:Logical Planning (no pruning or join). (34ms):
VertexDrel: rowcount = 1.0E9, cumulative cost = {2.000001E8 rows, 1.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 148
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.000001E8 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 147
JdbcTableScan(table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

2022-12-28 19:03:07,357 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner -
Breadth-first from root: {
rel#153:HepRelVertex(rel#152:VertexDrel.LOGICAL.ANY([]).) = rel#152:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={2.000001E8 rows, 1.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#151:HepRelVertex(rel#150:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#149,table=[pg, public, t1],operation=INSERT,flattened=true)) = rel#150:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#149,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.000001E8 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#149:HepRelVertex(rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])) = rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
}
2022-12-28 19:03:07,357 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [JoinPushTransitivePredicatesRule]
2022-12-28 19:03:07,357 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - collecting garbage
2022-12-28 19:03:07,357 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [FilterIntoJoinRule]
2022-12-28 19:03:07,357 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [FilterRemoveIsNotDistinctFromRule]
2022-12-28 19:03:07,357 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DrillFilterAggregateTransposeRule]
2022-12-28 19:03:07,357 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [FilterMergeRule]
2022-12-28 19:03:07,357 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary - Rule Attempts Info for HepPlanner
2022-12-28 19:03:07,357 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary -
Rules Attempts Time (us)

  • Total 0 0

2022-12-28 19:03:07,357 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#152:VertexDrel.LOGICAL.ANY([]).
2022-12-28 19:03:07,358 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#150:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#149,table=[pg, public, t1],operation=INSERT,flattened=true)
2022-12-28 19:03:07,358 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])
2022-12-28 19:03:07,358 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - HEP:Transitive closure (1ms):
VertexDrel: rowcount = 1.0E9, cumulative cost = {2.000001E8 rows, 1.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 152
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.000001E8 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 150
JdbcTableScan(table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner -
Breadth-first from root: {
rel#158:HepRelVertex(rel#157:VertexDrel.LOGICAL.ANY([]).) = rel#157:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={2.000001E8 rows, 1.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#156:HepRelVertex(rel#155:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#154,table=[pg, public, t1],operation=INSERT,flattened=true)) = rel#155:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#154,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.000001E8 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#154:HepRelVertex(rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])) = rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
}
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Setting match order to BOTTOM_UP
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - collecting garbage
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DrillFilterItemStarReWriterRule.ProjectOnScan]
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DrillFilterItemStarReWriterRule.FilterOnScan]
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DrillFilterItemStarReWriterRule.FilterProjectScan]
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DirPruneScanRule:Filter_On_Project]
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DirPruneScanRule:Filter_On_Scan]
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [PruneScanRule:Filter_On_Project_Parquet]
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [PruneScanRule:Filter_On_Scan_Parquet]
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DrillPushLimitToScanRule_LimitOnProject]
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DrillPushLimitToScanRule_LimitOnScan]
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [PartitionColumnScanPruningRule:Prune_On_Scan]
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary - Rule Attempts Info for HepPlanner
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary -
Rules Attempts Time (us)

  • Total 0 0

2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#157:VertexDrel.LOGICAL.ANY([]).
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#155:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#154,table=[pg, public, t1],operation=INSERT,flattened=true)
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])
2022-12-28 19:03:07,360 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - HEP_BOTTOM_UP:Partition Prune Planning (1ms):
VertexDrel: rowcount = 1.0E9, cumulative cost = {2.000001E8 rows, 1.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 157
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.000001E8 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 155
JdbcTableScan(table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

2022-12-28 19:03:07,362 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner -
Breadth-first from root: {
rel#163:HepRelVertex(rel#162:VertexDrel.LOGICAL.ANY([]).) = rel#162:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={2.000001E8 rows, 1.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#161:HepRelVertex(rel#160:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#159,table=[pg, public, t1],operation=INSERT,flattened=true)) = rel#160:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#159,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.000001E8 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#159:HepRelVertex(rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])) = rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
}
2022-12-28 19:03:07,362 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Setting match order to BOTTOM_UP
2022-12-28 19:03:07,362 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - collecting garbage
2022-12-28 19:03:07,362 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [JoinToMultiJoinRule]
2022-12-28 19:03:07,362 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [LoptOptimizeJoinRule]
2022-12-28 19:03:07,362 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [ProjectRemoveRule]
2022-12-28 19:03:07,362 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary - Rule Attempts Info for HepPlanner
2022-12-28 19:03:07,362 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary -
Rules Attempts Time (us)

  • Total 0 0

2022-12-28 19:03:07,362 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#162:VertexDrel.LOGICAL.ANY([]).
2022-12-28 19:03:07,362 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#160:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#159,table=[pg, public, t1],operation=INSERT,flattened=true)
2022-12-28 19:03:07,362 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])
2022-12-28 19:03:07,362 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - HEP_BOTTOM_UP:LOPT Join Planning (1ms):
VertexDrel: rowcount = 1.0E9, cumulative cost = {2.000001E8 rows, 1.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 162
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.000001E8 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 160
JdbcTableScan(table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

2022-12-28 19:03:07,364 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner -
Breadth-first from root: {
rel#168:HepRelVertex(rel#167:VertexDrel.LOGICAL.ANY([]).) = rel#167:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={2.000001E8 rows, 1.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#166:HepRelVertex(rel#165:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#164,table=[pg, public, t1],operation=INSERT,flattened=true)) = rel#165:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#164,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.000001E8 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#164:HepRelVertex(rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])) = rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
}
2022-12-28 19:03:07,364 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Setting match order to BOTTOM_UP
2022-12-28 19:03:07,364 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - collecting garbage
2022-12-28 19:03:07,364 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DrillPushRowKeyJoinToScanRule_Join]
2022-12-28 19:03:07,364 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary - Rule Attempts Info for HepPlanner
2022-12-28 19:03:07,364 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary -
Rules Attempts Time (us)

  • Total 0 0

2022-12-28 19:03:07,364 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#167:VertexDrel.LOGICAL.ANY([]).
2022-12-28 19:03:07,364 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#165:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#164,table=[pg, public, t1],operation=INSERT,flattened=true)
2022-12-28 19:03:07,364 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])
2022-12-28 19:03:07,364 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - HEP_BOTTOM_UP:Convert Join to RowKeyJoin (1ms):
VertexDrel: rowcount = 1.0E9, cumulative cost = {2.000001E8 rows, 1.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 167
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.000001E8 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 165
JdbcTableScan(table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

2022-12-28 19:03:07,366 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner -
Breadth-first from root: {
rel#173:HepRelVertex(rel#172:VertexDrel.LOGICAL.ANY([]).) = rel#172:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={2.000001E8 rows, 1.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#171:HepRelVertex(rel#170:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#169,table=[pg, public, t1],operation=INSERT,flattened=true)) = rel#170:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#169,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={1.000001E8 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#169:HepRelVertex(rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])) = rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
}
2022-12-28 19:03:07,366 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Setting match order to BOTTOM_UP
2022-12-28 19:03:07,366 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - collecting garbage
2022-12-28 19:03:07,366 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DrillConvertSumToSumZero]
2022-12-28 19:03:07,366 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DrillConvertWindowSumToSumZero]
2022-12-28 19:03:07,366 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary - Rule Attempts Info for HepPlanner
2022-12-28 19:03:07,366 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary -
Rules Attempts Time (us)

  • Total 0 0

2022-12-28 19:03:07,366 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#172:VertexDrel.LOGICAL.ANY([]).
2022-12-28 19:03:07,366 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#170:JdbcTableModify.JDBC.mysql.ANY([]).[](input=HepRelVertex#169,table=[pg, public, t1],operation=INSERT,flattened=true)
2022-12-28 19:03:07,366 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1])
2022-12-28 19:03:07,366 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - HEP_BOTTOM_UP:Convert SUM to $SUM0 (2ms):
VertexDrel: rowcount = 1.0E9, cumulative cost = {2.000001E8 rows, 1.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 172
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.000001E8 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 170
JdbcTableScan(table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

2022-12-28 19:03:07,368 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]] cost was {inf} now {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,368 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]) in rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]
2022-12-28 19:03:07,368 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#89]
2022-12-28 19:03:07,368 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]] cost was {inf} now {101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,368 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#176:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true) in rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]
2022-12-28 19:03:07,368 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#176]
2022-12-28 19:03:07,368 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#179:RelSubset#5.LOGICAL.ANY([]).[]] cost was {inf} now {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,368 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#178:VertexDrel.LOGICAL.ANY([]). in rel#179:RelSubset#5.LOGICAL.ANY([]).[]
2022-12-28 19:03:07,369 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [JDBC_PREL_ConverterJDBC.mysql] rels [#178,#176]
2022-12-28 19:03:07,369 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#181:RelSubset#6.LOGICAL.ANY([]).[]] cost was {inf} now {2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,369 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#180:DrillScreenRel.LOGICAL.ANY([]). in rel#181:RelSubset#6.LOGICAL.ANY([]).[]
2022-12-28 19:03:07,369 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [Prel.ScreenPrule] rels [#180,#178]
2022-12-28 19:03:07,369 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {inf}
2022-12-28 19:03:07,369 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#3, type: RecordType(INTEGER c1, INTEGER c2)
rel#175:RelSubset#3.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#4, type: RecordType(BIGINT ROWCOUNT)
rel#177:RelSubset#4.JDBC.mysql.ANY([]).[], best=rel#176
rel#176:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#5, type: RecordType(BIGINT ROWCOUNT)
rel#179:RelSubset#5.LOGICAL.ANY([]).[], best=rel#178
rel#178:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#6, type: RecordType(BIGINT ROWCOUNT)
rel#181:RelSubset#6.LOGICAL.ANY([]).[], best=rel#180
rel#180:DrillScreenRel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[], best=null

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster3{
label="Set 3 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset175 [label="rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]"]
}
subgraph cluster4{
label="Set 4 RecordType(BIGINT ROWCOUNT)";
rel176 [label="rel#176:JdbcTableModify\ninput=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset177 [label="rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]"]
}
subgraph cluster5{
label="Set 5 RecordType(BIGINT ROWCOUNT)";
rel178 [label="rel#178:VertexDrel\ninput=RelSubset#177\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset179 [label="rel#179:RelSubset#5.LOGICAL.ANY([]).[]"]
}
subgraph cluster6{
label="Set 6 RecordType(BIGINT ROWCOUNT)";
rel180 [label="rel#180:DrillScreenRel\ninput=RelSubset#179\nrows=1.0E9, cost={2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset181 [label="rel#181:RelSubset#6.LOGICAL.ANY([]).[]"]
subset182 [label="rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]",color=red]
}
root -> subset182;
subset175 -> rel89[color=blue];
subset177 -> rel176[color=blue]; rel176 -> subset175[color=blue];
subset179 -> rel178[color=blue]; rel178 -> subset177[color=blue];
subset181 -> rel180[color=blue]; rel180 -> subset179[color=blue];
}
2022-12-28 19:03:07,369 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#89]
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#176]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#178,#176]
rule [Prel.ScreenPrule] rels [#180,#178]
2022-12-28 19:03:07,369 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#89]
2022-12-28 19:03:07,369 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#327: Apply rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] to [rel#89:JdbcTableScan]
2022-12-28 19:03:07,369 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#183 via VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)
2022-12-28 19:03:07,370 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#327: Full plan for rule input [rel#89:JdbcTableScan]:
JdbcTableScan(table=[[mysql, test, t1]])

2022-12-28 19:03:07,370 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#327: Rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] produced [rel#183:VertexDrel]
2022-12-28 19:03:07,370 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#327: Full plan for [rel#183:VertexDrel]:
VertexDrel
JdbcTableScan(table=[[mysql, test, t1]])

2022-12-28 19:03:07,370 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#185:RelSubset#3.LOGICAL.ANY([]).[]] cost was {inf} now {1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,370 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#184:VertexDrel.LOGICAL.ANY([]). in rel#185:RelSubset#3.LOGICAL.ANY([]).[]
2022-12-28 19:03:07,370 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule-match queued: rule [JDBC_PREL_ConverterJDBC.mysql] rels [#184,#89]
2022-12-28 19:03:07,370 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#327 generated 1 successors: [rel#183:VertexDrel.LOGICAL.ANY([]).]
2022-12-28 19:03:07,370 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {inf}
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#3, type: RecordType(INTEGER c1, INTEGER c2)
rel#175:RelSubset#3.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#185:RelSubset#3.LOGICAL.ANY([]).[], best=rel#184
rel#184:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#4, type: RecordType(BIGINT ROWCOUNT)
rel#177:RelSubset#4.JDBC.mysql.ANY([]).[], best=rel#176
rel#176:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#5, type: RecordType(BIGINT ROWCOUNT)
rel#179:RelSubset#5.LOGICAL.ANY([]).[], best=rel#178
rel#178:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#6, type: RecordType(BIGINT ROWCOUNT)
rel#181:RelSubset#6.LOGICAL.ANY([]).[], best=rel#180
rel#180:DrillScreenRel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[], best=null

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster3{
label="Set 3 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel184 [label="rel#184:VertexDrel\ninput=RelSubset#175\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset175 [label="rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]"]
subset185 [label="rel#185:RelSubset#3.LOGICAL.ANY([]).[]"]
}
subgraph cluster4{
label="Set 4 RecordType(BIGINT ROWCOUNT)";
rel176 [label="rel#176:JdbcTableModify\ninput=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset177 [label="rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]"]
}
subgraph cluster5{
label="Set 5 RecordType(BIGINT ROWCOUNT)";
rel178 [label="rel#178:VertexDrel\ninput=RelSubset#177\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset179 [label="rel#179:RelSubset#5.LOGICAL.ANY([]).[]"]
}
subgraph cluster6{
label="Set 6 RecordType(BIGINT ROWCOUNT)";
rel180 [label="rel#180:DrillScreenRel\ninput=RelSubset#179\nrows=1.0E9, cost={2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset181 [label="rel#181:RelSubset#6.LOGICAL.ANY([]).[]"]
subset182 [label="rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]",color=red]
}
root -> subset182;
subset175 -> rel89[color=blue];
subset185 -> rel184[color=blue]; rel184 -> subset175[color=blue];
subset177 -> rel176[color=blue]; rel176 -> subset175[color=blue];
subset179 -> rel178[color=blue]; rel178 -> subset177[color=blue];
subset181 -> rel180[color=blue]; rel180 -> subset179[color=blue];
}
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#176]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#178,#176]
rule [Prel.ScreenPrule] rels [#180,#178]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#184,#89]
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] rels [#176]
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#340: Apply rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] to [rel#176:JdbcTableModify]
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#186 via VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#340: Full plan for rule input [rel#176:JdbcTableModify]:
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#340: Rule [VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL)] produced [rel#186:VertexDrel]
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#340: Full plan for [rel#186:VertexDrel]:
VertexDrel
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register: rel#187 is equivalent to rel#178:VertexDrel.LOGICAL.ANY([]).
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register #179 rel#179:RelSubset#5.LOGICAL.ANY([]).[], and merge sets
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Merge set#5 into set#4
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#188:RelSubset#4.LOGICAL.ANY([]).[]] cost was {inf} now {1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rename #180 from 'DrillScreenRel.LOGICAL.ANY([]).' to 'DrillScreenRel.LOGICAL.ANY([]).'
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#340 generated 1 successors: [rel#186:VertexDrel.LOGICAL.ANY([]).]
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {inf}
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#3, type: RecordType(INTEGER c1, INTEGER c2)
rel#175:RelSubset#3.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#185:RelSubset#3.LOGICAL.ANY([]).[], best=rel#184
rel#184:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#4, type: RecordType(BIGINT ROWCOUNT)
rel#177:RelSubset#4.JDBC.mysql.ANY([]).[], best=rel#176
rel#176:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#188:RelSubset#4.LOGICAL.ANY([]).[], best=rel#178
rel#178:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#6, type: RecordType(BIGINT ROWCOUNT)
rel#181:RelSubset#6.LOGICAL.ANY([]).[], best=rel#180
rel#180:DrillScreenRel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[], best=null

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster3{
label="Set 3 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel184 [label="rel#184:VertexDrel\ninput=RelSubset#175\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset175 [label="rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]"]
subset185 [label="rel#185:RelSubset#3.LOGICAL.ANY([]).[]"]
}
subgraph cluster4{
label="Set 4 RecordType(BIGINT ROWCOUNT)";
rel176 [label="rel#176:JdbcTableModify\ninput=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel178 [label="rel#178:VertexDrel\ninput=RelSubset#177\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset177 [label="rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]"]
subset188 [label="rel#188:RelSubset#4.LOGICAL.ANY([]).[]"]
}
subgraph cluster6{
label="Set 6 RecordType(BIGINT ROWCOUNT)";
rel180 [label="rel#180:DrillScreenRel\ninput=RelSubset#188\nrows=1.0E9, cost={2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset181 [label="rel#181:RelSubset#6.LOGICAL.ANY([]).[]"]
subset182 [label="rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]",color=red]
}
root -> subset182;
subset175 -> rel89[color=blue];
subset185 -> rel184[color=blue]; rel184 -> subset175[color=blue];
subset177 -> rel176[color=blue]; rel176 -> subset175[color=blue];
subset188 -> rel178[color=blue]; rel178 -> subset177[color=blue];
subset181 -> rel180[color=blue]; rel180 -> subset188[color=blue];
}
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#178,#176]
rule [Prel.ScreenPrule] rels [#180,#178]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#184,#89]
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [JDBC_PREL_ConverterJDBC.mysql] rels [#178,#176]
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#353: Apply rule [JDBC_PREL_ConverterJDBC.mysql] to [rel#178:VertexDrel,rel#176:JdbcTableModify]
2022-12-28 19:03:07,371 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#189 via JDBC_PREL_ConverterJDBC.mysql
2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#353: Full plan for rule input [rel#178:VertexDrel]:
VertexDrel
JdbcTableModify(subset=[rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#353: Full plan for rule input [rel#176:JdbcTableModify]:
JdbcTableModify(table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#353: Rule [JDBC_PREL_ConverterJDBC.mysql] produced [rel#189:JdbcIntermediatePrel]
2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#353: Full plan for [rel#189:JdbcIntermediatePrel]:
JdbcIntermediatePrel
JdbcTableModify(subset=[rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#190:RelSubset#4.PHYSICAL.SINGLETON([]).[]] cost was {inf} now {1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#189:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]). in rel#190:RelSubset#4.PHYSICAL.SINGLETON([]).[]
2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#353 generated 1 successors: [rel#189:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).]
2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {inf}
2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#3, type: RecordType(INTEGER c1, INTEGER c2)
rel#175:RelSubset#3.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#185:RelSubset#3.LOGICAL.ANY([]).[], best=rel#184
rel#184:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#4, type: RecordType(BIGINT ROWCOUNT)
rel#177:RelSubset#4.JDBC.mysql.ANY([]).[], best=rel#176
rel#176:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#188:RelSubset#4.LOGICAL.ANY([]).[], best=rel#178
rel#178:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#190:RelSubset#4.PHYSICAL.SINGLETON([]).[], best=rel#189
rel#189:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#6, type: RecordType(BIGINT ROWCOUNT)
rel#181:RelSubset#6.LOGICAL.ANY([]).[], best=rel#180
rel#180:DrillScreenRel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[], best=null

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster3{
label="Set 3 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel184 [label="rel#184:VertexDrel\ninput=RelSubset#175\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset175 [label="rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]"]
subset185 [label="rel#185:RelSubset#3.LOGICAL.ANY([]).[]"]
}
subgraph cluster4{
label="Set 4 RecordType(BIGINT ROWCOUNT)";
rel176 [label="rel#176:JdbcTableModify\ninput=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel178 [label="rel#178:VertexDrel\ninput=RelSubset#177\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel189 [label="rel#189:JdbcIntermediatePrel\ninput=RelSubset#177\nrows=1.0E9, cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset177 [label="rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]"]
subset188 [label="rel#188:RelSubset#4.LOGICAL.ANY([]).[]"]
subset190 [label="rel#190:RelSubset#4.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster6{
label="Set 6 RecordType(BIGINT ROWCOUNT)";
rel180 [label="rel#180:DrillScreenRel\ninput=RelSubset#188\nrows=1.0E9, cost={2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset181 [label="rel#181:RelSubset#6.LOGICAL.ANY([]).[]"]
subset182 [label="rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]",color=red]
}
root -> subset182;
subset175 -> rel89[color=blue];
subset185 -> rel184[color=blue]; rel184 -> subset175[color=blue];
subset177 -> rel176[color=blue]; rel176 -> subset175[color=blue];
subset188 -> rel178[color=blue]; rel178 -> subset177[color=blue];
subset190 -> rel189[color=blue]; rel189 -> subset177[color=blue];
subset181 -> rel180[color=blue]; rel180 -> subset188[color=blue];
}
2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [Prel.ScreenPrule] rels [#180,#178]
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#184,#89]
2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [Prel.ScreenPrule] rels [#180,#178]
2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#357: Apply rule [Prel.ScreenPrule] to [rel#180:DrillScreenRel,rel#178:VertexDrel]
2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#191 via Prel.ScreenPrule
2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#357: Full plan for rule input [rel#180:DrillScreenRel]:
DrillScreenRel
VertexDrel(subset=[rel#188:RelSubset#4.LOGICAL.ANY([]).[]])
JdbcTableModify(subset=[rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#357: Full plan for rule input [rel#178:VertexDrel]:
VertexDrel
JdbcTableModify(subset=[rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#357: Rule [Prel.ScreenPrule] produced [rel#191:ScreenPrel]
2022-12-28 19:03:07,372 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#357: Full plan for [rel#191:ScreenPrel]:
ScreenPrel
JdbcIntermediatePrel(subset=[rel#190:RelSubset#4.PHYSICAL.SINGLETON([]).[]])
JdbcTableModify(subset=[rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true])
JdbcTableScan(subset=[rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]] cost was {inf} now {1.100000101E9 rows, 1.100000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#191:ScreenPrel.PHYSICAL.SINGLETON([]). in rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]
2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#357 generated 1 successors: [rel#191:ScreenPrel.PHYSICAL.SINGLETON([]).]
2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.100000101E9 rows, 1.100000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#3, type: RecordType(INTEGER c1, INTEGER c2)
rel#175:RelSubset#3.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#185:RelSubset#3.LOGICAL.ANY([]).[], best=rel#184
rel#184:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#4, type: RecordType(BIGINT ROWCOUNT)
rel#177:RelSubset#4.JDBC.mysql.ANY([]).[], best=rel#176
rel#176:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#188:RelSubset#4.LOGICAL.ANY([]).[], best=rel#178
rel#178:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#190:RelSubset#4.PHYSICAL.SINGLETON([]).[], best=rel#189
rel#189:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#6, type: RecordType(BIGINT ROWCOUNT)
rel#181:RelSubset#6.LOGICAL.ANY([]).[], best=rel#180
rel#180:DrillScreenRel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[], best=rel#191
rel#191:ScreenPrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.100000101E9 rows, 1.100000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster3{
label="Set 3 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel184 [label="rel#184:VertexDrel\ninput=RelSubset#175\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset175 [label="rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]"]
subset185 [label="rel#185:RelSubset#3.LOGICAL.ANY([]).[]"]
}
subgraph cluster4{
label="Set 4 RecordType(BIGINT ROWCOUNT)";
rel176 [label="rel#176:JdbcTableModify\ninput=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel178 [label="rel#178:VertexDrel\ninput=RelSubset#177\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel189 [label="rel#189:JdbcIntermediatePrel\ninput=RelSubset#177\nrows=1.0E9, cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset177 [label="rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]"]
subset188 [label="rel#188:RelSubset#4.LOGICAL.ANY([]).[]"]
subset190 [label="rel#190:RelSubset#4.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster6{
label="Set 6 RecordType(BIGINT ROWCOUNT)";
rel180 [label="rel#180:DrillScreenRel\ninput=RelSubset#188\nrows=1.0E9, cost={2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel191 [label="rel#191:ScreenPrel\ninput=RelSubset#190\nrows=1.0E9, cost={1.100000101E9 rows, 1.100000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset181 [label="rel#181:RelSubset#6.LOGICAL.ANY([]).[]"]
subset182 [label="rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]"]
}
root -> subset182;
subset175 -> rel89[color=blue];
subset185 -> rel184[color=blue]; rel184 -> subset175[color=blue];
subset177 -> rel176[color=blue]; rel176 -> subset175[color=blue];
subset188 -> rel178[color=blue]; rel178 -> subset177[color=blue];
subset190 -> rel189[color=blue]; rel189 -> subset177[color=blue];
subset181 -> rel180[color=blue]; rel180 -> subset188[color=blue];
subset182 -> rel191[color=blue]; rel191 -> subset190[color=blue];
}
2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Rule queue:
rule [JDBC_PREL_ConverterJDBC.mysql] rels [#184,#89]
2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Pop match: rule [JDBC_PREL_ConverterJDBC.mysql] rels [#184,#89]
2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#380: Apply rule [JDBC_PREL_ConverterJDBC.mysql] to [rel#184:VertexDrel,rel#89:JdbcTableScan]
2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Transform to: rel#192 via JDBC_PREL_ConverterJDBC.mysql
2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#380: Full plan for rule input [rel#184:VertexDrel]:
VertexDrel
JdbcTableScan(subset=[rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#380: Full plan for rule input [rel#89:JdbcTableScan]:
JdbcTableScan(table=[[mysql, test, t1]])

2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#380: Rule [JDBC_PREL_ConverterJDBC.mysql] produced [rel#192:JdbcIntermediatePrel]
2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#380: Full plan for [rel#192:JdbcIntermediatePrel]:
JdbcIntermediatePrel
JdbcTableScan(subset=[rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]])

2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Subset cost changed: subset [rel#193:RelSubset#3.PHYSICAL.SINGLETON([]).[]] cost was {inf} now {1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Register rel#192:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]). in rel#193:RelSubset#3.PHYSICAL.SINGLETON([]).[]
2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - call#380 generated 1 successors: [rel#192:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).]
2022-12-28 19:03:07,373 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Best cost before rule match: {1.100000101E9 rows, 1.100000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
2022-12-28 19:03:07,374 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Root: rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#3, type: RecordType(INTEGER c1, INTEGER c2)
rel#175:RelSubset#3.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#185:RelSubset#3.LOGICAL.ANY([]).[], best=rel#184
rel#184:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#193:RelSubset#3.PHYSICAL.SINGLETON([]).[], best=rel#192
rel#192:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#4, type: RecordType(BIGINT ROWCOUNT)
rel#177:RelSubset#4.JDBC.mysql.ANY([]).[], best=rel#176
rel#176:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#188:RelSubset#4.LOGICAL.ANY([]).[], best=rel#178
rel#178:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#190:RelSubset#4.PHYSICAL.SINGLETON([]).[], best=rel#189
rel#189:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#6, type: RecordType(BIGINT ROWCOUNT)
rel#181:RelSubset#6.LOGICAL.ANY([]).[], best=rel#180
rel#180:DrillScreenRel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[], best=rel#191
rel#191:ScreenPrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.100000101E9 rows, 1.100000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster3{
label="Set 3 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel184 [label="rel#184:VertexDrel\ninput=RelSubset#175\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel192 [label="rel#192:JdbcIntermediatePrel\ninput=RelSubset#175\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset175 [label="rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]"]
subset185 [label="rel#185:RelSubset#3.LOGICAL.ANY([]).[]"]
subset193 [label="rel#193:RelSubset#3.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster4{
label="Set 4 RecordType(BIGINT ROWCOUNT)";
rel176 [label="rel#176:JdbcTableModify\ninput=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel178 [label="rel#178:VertexDrel\ninput=RelSubset#177\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel189 [label="rel#189:JdbcIntermediatePrel\ninput=RelSubset#177\nrows=1.0E9, cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset177 [label="rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]"]
subset188 [label="rel#188:RelSubset#4.LOGICAL.ANY([]).[]"]
subset190 [label="rel#190:RelSubset#4.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster6{
label="Set 6 RecordType(BIGINT ROWCOUNT)";
rel180 [label="rel#180:DrillScreenRel\ninput=RelSubset#188\nrows=1.0E9, cost={2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel191 [label="rel#191:ScreenPrel\ninput=RelSubset#190\nrows=1.0E9, cost={1.100000101E9 rows, 1.100000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset181 [label="rel#181:RelSubset#6.LOGICAL.ANY([]).[]"]
subset182 [label="rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]"]
}
root -> subset182;
subset175 -> rel89[color=blue];
subset185 -> rel184[color=blue]; rel184 -> subset175[color=blue];
subset193 -> rel192[color=blue]; rel192 -> subset175[color=blue];
subset177 -> rel176[color=blue]; rel176 -> subset175[color=blue];
subset188 -> rel178[color=blue]; rel178 -> subset177[color=blue];
subset190 -> rel189[color=blue]; rel189 -> subset177[color=blue];
subset181 -> rel180[color=blue]; rel180 -> subset188[color=blue];
subset182 -> rel191[color=blue]; rel191 -> subset190[color=blue];
}
2022-12-28 19:03:07,374 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] INFO o.apache.calcite.plan.RelOptPlanner - Root: rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]
Original rel:
VertexDrel(subset=[rel#114:RelSubset#2.LOGICAL.ANY([]).[]]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 1.0E8 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 134
JdbcTableModify(subset=[rel#122:RelSubset#2.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 121
JdbcTableScan(subset=[rel#109:RelSubset#0.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

Sets:
Set#3, type: RecordType(INTEGER c1, INTEGER c2)
rel#175:RelSubset#3.JDBC.mysql.ANY([]).[], best=rel#89
rel#89:JdbcTableScan.JDBC.mysql.ANY([]).[](table=[mysql, test, t1]), rowcount=1.0E9, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#185:RelSubset#3.LOGICAL.ANY([]).[], best=rel#184
rel#184:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#193:RelSubset#3.PHYSICAL.SINGLETON([]).[], best=rel#192
rel#192:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#4, type: RecordType(BIGINT ROWCOUNT)
rel#177:RelSubset#4.JDBC.mysql.ANY([]).[], best=rel#176
rel#176:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true), rowcount=1.0E9, cumulative cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#188:RelSubset#4.LOGICAL.ANY([]).[], best=rel#178
rel#178:VertexDrel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#190:RelSubset#4.PHYSICAL.SINGLETON([]).[], best=rel#189
rel#189:JdbcIntermediatePrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
Set#6, type: RecordType(BIGINT ROWCOUNT)
rel#181:RelSubset#6.LOGICAL.ANY([]).[], best=rel#180
rel#180:DrillScreenRel.LOGICAL.ANY([])., rowcount=1.0E9, cumulative cost={2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[], best=rel#191
rel#191:ScreenPrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.100000101E9 rows, 1.100000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}

Graphviz:
digraph G {
root [style=filled,label="Root"];
subgraph cluster3{
label="Set 3 RecordType(INTEGER c1, INTEGER c2)";
rel89 [label="rel#89:JdbcTableScan\ntable=[mysql, test, t1]\nrows=1.0E9, cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel184 [label="rel#184:VertexDrel\ninput=RelSubset#175\nrows=1.0E9, cost={1.000001E8 rows, 2.00000101E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel192 [label="rel#192:JdbcIntermediatePrel\ninput=RelSubset#175\nrows=1.0E9, cost={1.0000001E9 rows, 1.000000101E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset175 [label="rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]"]
subset185 [label="rel#185:RelSubset#3.LOGICAL.ANY([]).[]"]
subset193 [label="rel#193:RelSubset#3.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster4{
label="Set 4 RecordType(BIGINT ROWCOUNT)";
rel176 [label="rel#176:JdbcTableModify\ninput=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true\nrows=1.0E9, cost={101.0 rows, 102.0 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel178 [label="rel#178:VertexDrel\ninput=RelSubset#177\nrows=1.0E9, cost={1.00000101E8 rows, 1.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel189 [label="rel#189:JdbcIntermediatePrel\ninput=RelSubset#177\nrows=1.0E9, cost={1.000000101E9 rows, 1.000000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset177 [label="rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]"]
subset188 [label="rel#188:RelSubset#4.LOGICAL.ANY([]).[]"]
subset190 [label="rel#190:RelSubset#4.PHYSICAL.SINGLETON([]).[]"]
}
subgraph cluster6{
label="Set 6 RecordType(BIGINT ROWCOUNT)";
rel180 [label="rel#180:DrillScreenRel\ninput=RelSubset#188\nrows=1.0E9, cost={2.00000101E8 rows, 2.00000102E8 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
rel191 [label="rel#191:ScreenPrel\ninput=RelSubset#190\nrows=1.0E9, cost={1.100000101E9 rows, 1.100000102E9 cpu, 0.0 io, 0.0 network, 0.0 memory}",color=blue,shape=box]
subset181 [label="rel#181:RelSubset#6.LOGICAL.ANY([]).[]"]
subset182 [label="rel#182:RelSubset#6.PHYSICAL.SINGLETON([]).[]"]
}
root -> subset182;
subset175 -> rel89[color=blue];
subset185 -> rel184[color=blue]; rel184 -> subset175[color=blue];
subset193 -> rel192[color=blue]; rel192 -> subset175[color=blue];
subset177 -> rel176[color=blue]; rel176 -> subset175[color=blue];
subset188 -> rel178[color=blue]; rel178 -> subset177[color=blue];
subset190 -> rel189[color=blue]; rel189 -> subset177[color=blue];
subset181 -> rel180[color=blue]; rel180 -> subset188[color=blue];
subset182 -> rel191[color=blue]; rel191 -> subset190[color=blue];
}
2022-12-28 19:03:07,374 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary - Rule Attempts Info for VolcanoPlanner
2022-12-28 19:03:07,374 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary -
Rules Attempts Time (us)
JDBC_PREL_ConverterJDBC.mysql 5 2,691
VertexDrelConverterRuleJDBC.mysql(in:JDBC.mysql,out:LOGICAL) 5 2,468
ExpandConversionRule 5 256
VertexDrelConverterRuleJDBC.pg(in:JDBC.pg,out:LOGICAL) 2 722
JDBC_PREL_ConverterJDBC.pg 2 658
JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:NONE,out:JDBC.mysql) 1 7,641
DrillTableModifyRule 1 643
JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:NONE,out:JDBC.pg) 1 566
ProjectRemoveRule 1 493
Prel.ScreenPrule 1 486
JdbcTableModificationRule(in:NONE,out:JDBC.mysql)(in:LOGICAL,out:JDBC.mysql) 1 257
JdbcTableModificationRule(in:NONE,out:JDBC.pg)(in:LOGICAL,out:JDBC.pg) 1 228

  • Total 26 17,109

2022-12-28 19:03:07,375 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Cheapest plan:
ScreenPrel: rowcount = 1.0E9, cumulative cost = {1.1E9 rows, 1.1E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 196
JdbcIntermediatePrel: rowcount = 1.0E9, cumulative cost = {1.0E9 rows, 1.0E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 195
JdbcTableModify(subset=[rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]], table=[[pg, public, t1]], operation=[INSERT], flattened=[true]): rowcount = 1.0E9, cumulative cost = {1.0E8 rows, 0.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 176
JdbcTableScan(subset=[rel#175:RelSubset#3.JDBC.mysql.ANY([]).[]], table=[[mysql, test, t1]]): rowcount = 1.0E9, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 89

2022-12-28 19:03:07,375 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - Provenance:
rel#196:ScreenPrel.PHYSICAL.SINGLETON([]).
direct
rel#191:ScreenPrel.PHYSICAL.SINGLETON([]).
call#357 rule [Prel.ScreenPrule]
rel#180:DrillScreenRel.LOGICAL.ANY([]).
no parent
rel#178:VertexDrel.LOGICAL.ANY([]).
no parent
rel#195:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).
direct
rel#189:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).
call#353 rule [JDBC_PREL_ConverterJDBC.mysql]
rel#178 (see above)
rel#176:JdbcTableModify.JDBC.mysql.ANY([]).[](input=RelSubset#175,table=[pg, public, t1],operation=INSERT,flattened=true)
no parent
rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]
subset rel#177:RelSubset#4.JDBC.mysql.ANY([]).[]
rel#176 (see above)

2022-12-28 19:03:07,391 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'INSERT INTO'; result is false
2022-12-28 19:03:07,392 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'public'; result is false
2022-12-28 19:03:07,392 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,392 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,392 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,392 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '('; result is false
2022-12-28 19:03:07,392 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'c1'; result is false
2022-12-28 19:03:07,392 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,392 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ','; result is false
2022-12-28 19:03:07,392 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'c2'; result is false
2022-12-28 19:03:07,392 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,392 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ')'; result is false
2022-12-28 19:03:07,392 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '('; result is false
2022-12-28 19:03:07,393 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'SELECT'; result is false
2022-12-28 19:03:07,393 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '*'; result is false
2022-12-28 19:03:07,393 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,393 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,393 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'FROM'; result is false
2022-12-28 19:03:07,393 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 'test'; result is false
2022-12-28 19:03:07,393 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is '.'; result is false
2022-12-28 19:03:07,393 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is 't1'; result is false
2022-12-28 19:03:07,393 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,393 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,393 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ''; result is false
2022-12-28 19:03:07,393 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.c.sql.pretty.SqlPrettyWriter - Token is ')'; result is false
2022-12-28 19:03:07,393 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - VOLCANO:Physical Planning (27ms):
ScreenPrel: rowcount = 1.0E9, cumulative cost = {1.1E9 rows, 1.1E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 200
JdbcPrel(sql=[INSERT INTO public.t1 (c1, c2)
(SELECT *
FROM test.t1) ]): rowcount = 1.0E9, cumulative cost = {1.0E9 rows, 1.0E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 197

2022-12-28 19:03:07,393 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - Physical RelNode after Top and Rename Project inserting: :
ScreenPrel: rowcount = 1.0E9, cumulative cost = {1.1E9 rows, 1.1E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 201
JdbcPrel(sql=[INSERT INTO public.t1 (c1, c2)
(SELECT *
FROM test.t1) ]): rowcount = 1.0E9, cumulative cost = {1.0E9 rows, 1.0E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 197

2022-12-28 19:03:07,394 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner -
Breadth-first from root: {
rel#206:HepRelVertex(rel#205:ScreenPrel.PHYSICAL.SINGLETON([]).) = rel#205:ScreenPrel.PHYSICAL.SINGLETON([])., rowcount=1.0E9, cumulative cost={1.1E9 rows, 1.1E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
rel#204:HepRelVertex(rel#197:JdbcPrel.PHYSICAL.SINGLETON([]).[](sql=INSERT INTO public.t1 (c1, c2)
(SELECT *
FROM test.t1) )) = rel#197:JdbcPrel.PHYSICAL.SINGLETON([]).[](sql=INSERT INTO public.t1 (c1, c2)
(SELECT *
FROM test.t1) ), rowcount=1.0E9, cumulative cost={1.0E9 rows, 1.0E9 cpu, 0.0 io, 0.0 network, 0.0 memory}
}
2022-12-28 19:03:07,394 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Setting match order to BOTTOM_UP
2022-12-28 19:03:07,394 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - collecting garbage
2022-12-28 19:03:07,394 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [FilePushDownFilter:Filter_On_Project]
2022-12-28 19:03:07,394 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [FilePushDownFilter:Filter_On_Scan]
2022-12-28 19:03:07,394 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.apache.calcite.plan.RelOptPlanner - Applying rule set [DrillPushProjectIntoScanRule:physical]
2022-12-28 19:03:07,394 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary - Rule Attempts Info for HepPlanner
2022-12-28 19:03:07,394 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.c.p.A.rule_execution_summary -
Rules Attempts Time (us)

  • Total 0 0

2022-12-28 19:03:07,394 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#205:ScreenPrel.PHYSICAL.SINGLETON([]).
2022-12-28 19:03:07,394 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.apache.calcite.plan.RelOptPlanner - For final plan, using rel#197:JdbcPrel.PHYSICAL.SINGLETON([]).[](sql=INSERT INTO public.t1 (c1, c2)
(SELECT *
FROM test.t1) )
2022-12-28 19:03:07,394 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - HEP_BOTTOM_UP:Physical Partition Prune Planning (0ms):
ScreenPrel: rowcount = 1.0E9, cumulative cost = {1.1E9 rows, 1.1E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 205
JdbcPrel(sql=[INSERT INTO public.t1 (c1, c2)
(SELECT *
FROM test.t1) ]): rowcount = 1.0E9, cumulative cost = {1.0E9 rows, 1.0E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 197

2022-12-28 19:03:07,394 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - Drill Physical:
00-00 Screen : rowType = RecordType(BIGINT ROWCOUNT): rowcount = 1.0E9, cumulative cost = {1.1E9 rows, 1.1E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 207
00-01 Jdbc(sql=[INSERT INTO public.t1 (c1, c2)
(SELECT *
FROM test.t1) ]) : rowType = RecordType(BIGINT ROWCOUNT): rowcount = 1.0E9, cumulative cost = {1.0E9 rows, 1.0E9 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 197

@weijunlu
Copy link
Author

2022-12-28 19:03:07,401 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.s.h.DefaultSqlHandler - Drill Plan :
{
"head" : {
"version" : 1,
"generator" : {
"type" : "InsertHandler",
"info" : ""
},
"type" : "APACHE_DRILL_PHYSICAL",
"options" : [ ],
"queue" : 0,
"hasResourcePlan" : false,
"scannedPluginNames" : [ "mysql", "pg" ],
"resultMode" : "EXEC"
},
"graph" : [ {
"pop" : "jdbc-scan",
"@id" : 1,
"sql" : "INSERT INTO public.t1 (c1, c2)\r\n(SELECT *\r\nFROM test.t1)",
"columns" : [ "ROWCOUNT" ],
"config" : {
"type" : "jdbc",
"driver" : "com.mysql.jdbc.Driver",
"url" : "jdbc:mysql://localhost:3316",
"username" : "root",
"caseInsensitiveTableNames" : true,
"writable" : true,
"authMode" : "SHARED_USER",
"writerBatchSize" : 10000,
"enabled" : true
},
"userName" : "anonymous",
"cost" : {
"memoryCost" : 1.6777216E7,
"outputRowCount" : 1.0E9
}
}, {
"pop" : "screen",
"@id" : 0,
"child" : 1,
"initialAllocation" : 1000000,
"maxAllocation" : 10000000000,
"cost" : {
"memoryCost" : 1.6777216E7,
"outputRowCount" : 1.0E9
}
} ]
}
2022-12-28 19:03:07,402 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.p.f.SimpleParallelizer - Root fragment:
handle {
query_id {
part1: 2041218684968999600
part2: -1153457303194072660
}
major_fragment_id: 0
minor_fragment_id: 0
}
leaf_fragment: true
assignment {
address: "DESKTOP-PHHB7LC"
user_port: 31010
control_port: 31011
data_port: 31012
version: "2.0.0-SNAPSHOT"
state: STARTUP
}
foreman {
address: "DESKTOP-PHHB7LC"
user_port: 31010
control_port: 31011
data_port: 31012
version: "2.0.0-SNAPSHOT"
state: STARTUP
}
mem_initial: 1000000
mem_max: 10000000000
credentials {
user_name: "anonymous"
}
context {
query_start_time: 1672225387214
time_zone: 299
default_schema_name: ""
session_id: "0b3af775-337f-4db3-8ce4-52e20d5c50ee"
}

2022-12-28 19:03:07,403 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] TRACE o.a.drill.exec.work.foreman.Foreman - PlanFragments for query part1: 2041218684968999600
part2: -1153457303194072660

2022-12-28 19:03:07,403 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.w.f.QueryStateProcessor - 1c53dd94-4277-9ab0-effe-18b1ab8989ac: State change requested PLANNING --> ENQUEUED
2022-12-28 19:03:07,403 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.w.f.QueryStateProcessor - 1c53dd94-4277-9ab0-effe-18b1ab8989ac: State change requested ENQUEUED --> STARTING
2022-12-28 19:03:07,403 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.exec.rpc.control.WorkEventBus - Adding fragment status listener for queryId 1c53dd94-4277-9ab0-effe-18b1ab8989ac.
2022-12-28 19:03:07,403 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.work.foreman.FragmentsRunner - Submitting fragments to run.
2022-12-28 19:03:07,403 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.exec.ops.FragmentContextImpl - Getting initial memory allocation of 1000000
2022-12-28 19:03:07,403 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.exec.ops.FragmentContextImpl - Fragment max allocation: 10000000000
2022-12-28 19:03:07,403 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.work.batch.IncomingBuffers - Came up with a list of 0 required fragments. Fragments {}
2022-12-28 19:03:07,403 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.work.foreman.FragmentsRunner - Fragments running.
2022-12-28 19:03:07,403 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:foreman] DEBUG o.a.d.e.w.f.QueryStateProcessor - 1c53dd94-4277-9ab0-effe-18b1ab8989ac: State change requested STARTING --> RUNNING
2022-12-28 19:03:07,421 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] DEBUG o.a.d.e.physical.impl.BaseRootExec - BaseRootExec(60762332) operators: org.apache.drill.exec.physical.impl.protocol.OperatorRecordBatch 654876346
2022-12-28 19:03:07,421 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] DEBUG o.a.d.exec.physical.impl.ImplCreator - Took 17 ms to create RecordBatch tree
2022-12-28 19:03:07,421 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] INFO o.a.d.e.w.fragment.FragmentExecutor - 1c53dd94-4277-9ab0-effe-18b1ab8989ac:0:0: State change requested AWAITING_ALLOCATION --> RUNNING
2022-12-28 19:03:07,421 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] INFO o.a.d.e.w.f.FragmentStatusReporter - 1c53dd94-4277-9ab0-effe-18b1ab8989ac:0:0: State to report: RUNNING
2022-12-28 19:03:07,421 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] DEBUG o.a.d.exec.work.foreman.QueryManager - New fragment status was provided to QueryManager of profile {
state: RUNNING
minor_fragment_id: 0
operator_profile {
input_profile {
records: 0
batches: 0
schemas: 0
}
operator_id: 1
operator_type: 44
setup_nanos: 0
process_nanos: 9931000
peak_local_memory_allocated: 0
wait_nanos: 0
operator_type_name: "JDBC_SCAN"
}
operator_profile {
input_profile {
records: 0
batches: 0
schemas: 0
}
operator_id: 0
operator_type: 13
setup_nanos: 0
process_nanos: 0
peak_local_memory_allocated: 0
wait_nanos: 0
operator_type_name: "SCREEN"
}
start_time: 1672225387403
end_time: 1672225387421
memory_used: 2000000
max_memory_used: 2000000
endpoint {
address: "DESKTOP-PHHB7LC"
user_port: 31010
control_port: 31011
data_port: 31012
version: "2.0.0-SNAPSHOT"
state: STARTUP
}
}
handle {
query_id {
part1: 2041218684968999600
part2: -1153457303194072660
}
major_fragment_id: 0
minor_fragment_id: 0
}

2022-12-28 19:03:07,421 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] DEBUG o.a.d.e.w.fragment.FragmentExecutor - Starting fragment 0:0 on DESKTOP-PHHB7LC:31010
2022-12-28 19:03:07,456 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] INFO o.a.d.e.store.jdbc.JdbcBatchReader - User Error Occurred: The JDBC storage plugin failed while trying setup the SQL query. (Table 'public.t1' doesn't exist)
org.apache.drill.common.exceptions.UserException: DATA_READ ERROR: The JDBC storage plugin failed while trying setup the SQL query.

Sql: INSERT INTO public.t1 (c1, c2)
(SELECT *
FROM test.t1)

[Error Id: 160a04a4-caff-42ae-ac68-06669b926853 ]
at org.apache.drill.common.exceptions.UserException$Builder.build(UserException.java:675)
at org.apache.drill.exec.store.jdbc.JdbcBatchReader.open(JdbcBatchReader.java:155)
at org.apache.drill.exec.physical.impl.scan.framework.ManagedScanFramework.open(ManagedScanFramework.java:211)
at org.apache.drill.exec.physical.impl.scan.framework.ShimBatchReader.open(ShimBatchReader.java:76)
at org.apache.drill.exec.physical.impl.scan.ReaderState.open(ReaderState.java:224)
at org.apache.drill.exec.physical.impl.scan.ScanOperatorExec.nextAction(ScanOperatorExec.java:286)
at org.apache.drill.exec.physical.impl.scan.ScanOperatorExec.next(ScanOperatorExec.java:242)
at org.apache.drill.exec.physical.impl.protocol.OperatorDriver.doNext(OperatorDriver.java:201)
at org.apache.drill.exec.physical.impl.protocol.OperatorDriver.start(OperatorDriver.java:179)
at org.apache.drill.exec.physical.impl.protocol.OperatorDriver.next(OperatorDriver.java:129)
at org.apache.drill.exec.physical.impl.protocol.OperatorRecordBatch.next(OperatorRecordBatch.java:149)
at org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:103)
at org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext(ScreenCreator.java:81)
at org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:93)
at org.apache.drill.exec.work.fragment.FragmentExecutor.lambda$run$0(FragmentExecutor.java:321)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1762)
at org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:310)
at org.apache.drill.common.SelfCleaningRunnable.run(SelfCleaningRunnable.java:38)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:750)
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'public.t1' doesn't exist
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:403)
at com.mysql.jdbc.Util.getInstance(Util.java:386)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:944)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3933)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3869)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2524)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2675)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2465)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1915)
at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1254)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java)
at org.apache.drill.exec.store.jdbc.JdbcBatchReader.open(JdbcBatchReader.java:136)
... 21 common frames omitted
2022-12-28 19:03:07,457 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] ERROR o.a.d.e.physical.impl.BaseRootExec - Batch dump started: dumping last 1 failed batches
2022-12-28 19:03:07,457 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] ERROR o.a.d.e.p.i.p.OperatorRecordBatch - OperatorRecordBatch[batchAccessor=org.apache.drill.exec.physical.impl.protocol.VectorContainerAccessor@16ed85d5, lastOutcome=null]
2022-12-28 19:03:07,457 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] ERROR o.a.d.e.physical.impl.BaseRootExec - Batch dump completed.
2022-12-28 19:03:07,457 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] INFO o.a.d.e.w.fragment.FragmentExecutor - 1c53dd94-4277-9ab0-effe-18b1ab8989ac:0:0: State change requested RUNNING --> FAILED
2022-12-28 19:03:07,457 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] DEBUG o.a.d.exec.ops.OperatorContextImpl - Closing context for org.apache.drill.exec.store.jdbc.JdbcSubScan
2022-12-28 19:03:07,457 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] DEBUG o.a.d.e.physical.impl.BaseRootExec - closed operator 654876346
2022-12-28 19:03:07,457 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] DEBUG o.a.d.exec.ops.OperatorContextImpl - Attempted to close Operator context for org.apache.drill.exec.store.jdbc.JdbcSubScan, but context is already closed
2022-12-28 19:03:07,457 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] DEBUG o.a.d.exec.ops.OperatorContextImpl - Closing context for org.apache.drill.exec.physical.config.Screen
2022-12-28 19:03:07,457 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] INFO o.a.d.e.w.fragment.FragmentExecutor - 1c53dd94-4277-9ab0-effe-18b1ab8989ac:0:0: State change requested FAILED --> FINISHED
2022-12-28 19:03:07,463 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] DEBUG o.a.d.exec.work.foreman.QueryManager - New fragment status was provided to QueryManager of profile {
state: FAILED
error {
error_id: "160a04a4-caff-42ae-ac68-06669b926853"
endpoint {
address: "DESKTOP-PHHB7LC"
user_port: 31010
control_port: 31011
data_port: 31012
version: "2.0.0-SNAPSHOT"
state: STARTUP
}
error_type: DATA_READ
message: "DATA_READ ERROR: The JDBC storage plugin failed while trying setup the SQL query. \n\nSql: INSERT INTO public.t1 (c1, c2)\r\n(SELECT *\r\nFROM test.t1)\r\nFragment: 0:0\r\n\r\n[Error Id: 160a04a4-caff-42ae-ac68-06669b926853 on DESKTOP-PHHB7LC:31010]"
exception {
exception_class: "com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException"
message: "Table 'public.t1' doesn't exist"
stack_trace {
class_name: "..."
line_number: 0
method_name: "..."
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.Util"
file_name: "Util.java"
line_number: 403
method_name: "handleNewInstance"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.Util"
file_name: "Util.java"
line_number: 386
method_name: "getInstance"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.SQLError"
file_name: "SQLError.java"
line_number: 944
method_name: "createSQLException"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.MysqlIO"
file_name: "MysqlIO.java"
line_number: 3933
method_name: "checkErrorPacket"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.MysqlIO"
file_name: "MysqlIO.java"
line_number: 3869
method_name: "checkErrorPacket"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.MysqlIO"
file_name: "MysqlIO.java"
line_number: 2524
method_name: "sendCommand"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.MysqlIO"
file_name: "MysqlIO.java"
line_number: 2675
method_name: "sqlQueryDirect"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.ConnectionImpl"
file_name: "ConnectionImpl.java"
line_number: 2465
method_name: "execSQL"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.PreparedStatement"
file_name: "PreparedStatement.java"
line_number: 1915
method_name: "executeInternal"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.PreparedStatement"
file_name: "PreparedStatement.java"
line_number: 1254
method_name: "execute"
is_native_method: false
}
stack_trace {
class_name: "com.zaxxer.hikari.pool.ProxyPreparedStatement"
file_name: "ProxyPreparedStatement.java"
line_number: 44
method_name: "execute"
is_native_method: false
}
stack_trace {
class_name: "com.zaxxer.hikari.pool.HikariProxyPreparedStatement"
file_name: "HikariProxyPreparedStatement.java"
line_number: -1
method_name: "execute"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.store.jdbc.JdbcBatchReader"
file_name: "JdbcBatchReader.java"
line_number: 136
method_name: "open"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.scan.framework.ManagedScanFramework"
file_name: "ManagedScanFramework.java"
line_number: 211
method_name: "open"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.scan.framework.ShimBatchReader"
file_name: "ShimBatchReader.java"
line_number: 76
method_name: "open"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.scan.ReaderState"
file_name: "ReaderState.java"
line_number: 224
method_name: "open"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.scan.ScanOperatorExec"
file_name: "ScanOperatorExec.java"
line_number: 286
method_name: "nextAction"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.scan.ScanOperatorExec"
file_name: "ScanOperatorExec.java"
line_number: 242
method_name: "next"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.protocol.OperatorDriver"
file_name: "OperatorDriver.java"
line_number: 201
method_name: "doNext"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.protocol.OperatorDriver"
file_name: "OperatorDriver.java"
line_number: 179
method_name: "start"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.protocol.OperatorDriver"
file_name: "OperatorDriver.java"
line_number: 129
method_name: "next"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.protocol.OperatorRecordBatch"
file_name: "OperatorRecordBatch.java"
line_number: 149
method_name: "next"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.BaseRootExec"
file_name: "BaseRootExec.java"
line_number: 103
method_name: "next"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot"
file_name: "ScreenCreator.java"
line_number: 81
method_name: "innerNext"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.BaseRootExec"
file_name: "BaseRootExec.java"
line_number: 93
method_name: "next"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.work.fragment.FragmentExecutor"
file_name: "FragmentExecutor.java"
line_number: 321
method_name: "lambda$run$0"
is_native_method: false
}
stack_trace {
class_name: "..."
line_number: 0
method_name: "..."
is_native_method: false
}
stack_trace {
class_name: "org.apache.hadoop.security.UserGroupInformation"
file_name: "UserGroupInformation.java"
line_number: 1762
method_name: "doAs"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.work.fragment.FragmentExecutor"
file_name: "FragmentExecutor.java"
line_number: 310
method_name: "run"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.common.SelfCleaningRunnable"
file_name: "SelfCleaningRunnable.java"
line_number: 38
method_name: "run"
is_native_method: false
}
stack_trace {
class_name: "..."
line_number: 0
method_name: "..."
is_native_method: false
}
}
}
minor_fragment_id: 0
operator_profile {
input_profile {
records: 0
batches: 0
schemas: 0
}
operator_id: 1
operator_type: 44
setup_nanos: 0
process_nanos: 45495300
peak_local_memory_allocated: 0
wait_nanos: 0
operator_type_name: "JDBC_SCAN"
}
operator_profile {
input_profile {
records: 0
batches: 0
schemas: 0
}
operator_id: 0
operator_type: 13
setup_nanos: 0
process_nanos: 2097
peak_local_memory_allocated: 0
wait_nanos: 1501
operator_type_name: "SCREEN"
}
start_time: 1672225387403
end_time: 1672225387457
memory_used: 0
max_memory_used: 2000000
endpoint {
address: "DESKTOP-PHHB7LC"
user_port: 31010
control_port: 31011
data_port: 31012
version: "2.0.0-SNAPSHOT"
state: STARTUP
}
}
handle {
query_id {
part1: 2041218684968999600
part2: -1153457303194072660
}
major_fragment_id: 0
minor_fragment_id: 0
}

2022-12-28 19:03:07,469 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] DEBUG o.a.d.e.w.f.QueryStateProcessor - 1c53dd94-4277-9ab0-effe-18b1ab8989ac: State change requested RUNNING --> FAILED
2022-12-28 19:03:07,471 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] WARN o.a.d.exec.rpc.control.WorkEventBus - Fragment 1c53dd94-4277-9ab0-effe-18b1ab8989ac:0:0 manager is not found in the work bus.
2022-12-28 19:03:07,472 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] DEBUG o.a.drill.exec.work.foreman.Foreman - 1c53dd94-4277-9ab0-effe-18b1ab8989ac: cleaning up.
2022-12-28 19:03:07,472 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] DEBUG o.a.d.exec.rpc.control.WorkEventBus - Removing fragment status listener for queryId 1c53dd94-4277-9ab0-effe-18b1ab8989ac.
2022-12-28 19:03:07,473 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] TRACE o.a.drill.exec.rpc.user.UserServer - Sending result to client with query_state: FAILED
query_id {
part1: 2041218684968999600
part2: -1153457303194072660
}
error {
error_id: "160a04a4-caff-42ae-ac68-06669b926853"
endpoint {
address: "DESKTOP-PHHB7LC"
user_port: 31010
control_port: 31011
data_port: 31012
version: "2.0.0-SNAPSHOT"
state: STARTUP
}
error_type: DATA_READ
message: "DATA_READ ERROR: The JDBC storage plugin failed while trying setup the SQL query. \n\nSql: INSERT INTO public.t1 (c1, c2)\r\n(SELECT *\r\nFROM test.t1)\r\nFragment: 0:0\r\n\r\n[Error Id: 160a04a4-caff-42ae-ac68-06669b926853 on DESKTOP-PHHB7LC:31010]"
exception {
exception_class: "com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException"
message: "Table 'public.t1' doesn't exist"
stack_trace {
class_name: "..."
line_number: 0
method_name: "..."
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.Util"
file_name: "Util.java"
line_number: 403
method_name: "handleNewInstance"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.Util"
file_name: "Util.java"
line_number: 386
method_name: "getInstance"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.SQLError"
file_name: "SQLError.java"
line_number: 944
method_name: "createSQLException"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.MysqlIO"
file_name: "MysqlIO.java"
line_number: 3933
method_name: "checkErrorPacket"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.MysqlIO"
file_name: "MysqlIO.java"
line_number: 3869
method_name: "checkErrorPacket"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.MysqlIO"
file_name: "MysqlIO.java"
line_number: 2524
method_name: "sendCommand"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.MysqlIO"
file_name: "MysqlIO.java"
line_number: 2675
method_name: "sqlQueryDirect"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.ConnectionImpl"
file_name: "ConnectionImpl.java"
line_number: 2465
method_name: "execSQL"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.PreparedStatement"
file_name: "PreparedStatement.java"
line_number: 1915
method_name: "executeInternal"
is_native_method: false
}
stack_trace {
class_name: "com.mysql.jdbc.PreparedStatement"
file_name: "PreparedStatement.java"
line_number: 1254
method_name: "execute"
is_native_method: false
}
stack_trace {
class_name: "com.zaxxer.hikari.pool.ProxyPreparedStatement"
file_name: "ProxyPreparedStatement.java"
line_number: 44
method_name: "execute"
is_native_method: false
}
stack_trace {
class_name: "com.zaxxer.hikari.pool.HikariProxyPreparedStatement"
file_name: "HikariProxyPreparedStatement.java"
line_number: -1
method_name: "execute"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.store.jdbc.JdbcBatchReader"
file_name: "JdbcBatchReader.java"
line_number: 136
method_name: "open"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.scan.framework.ManagedScanFramework"
file_name: "ManagedScanFramework.java"
line_number: 211
method_name: "open"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.scan.framework.ShimBatchReader"
file_name: "ShimBatchReader.java"
line_number: 76
method_name: "open"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.scan.ReaderState"
file_name: "ReaderState.java"
line_number: 224
method_name: "open"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.scan.ScanOperatorExec"
file_name: "ScanOperatorExec.java"
line_number: 286
method_name: "nextAction"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.scan.ScanOperatorExec"
file_name: "ScanOperatorExec.java"
line_number: 242
method_name: "next"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.protocol.OperatorDriver"
file_name: "OperatorDriver.java"
line_number: 201
method_name: "doNext"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.protocol.OperatorDriver"
file_name: "OperatorDriver.java"
line_number: 179
method_name: "start"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.protocol.OperatorDriver"
file_name: "OperatorDriver.java"
line_number: 129
method_name: "next"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.protocol.OperatorRecordBatch"
file_name: "OperatorRecordBatch.java"
line_number: 149
method_name: "next"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.BaseRootExec"
file_name: "BaseRootExec.java"
line_number: 103
method_name: "next"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot"
file_name: "ScreenCreator.java"
line_number: 81
method_name: "innerNext"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.physical.impl.BaseRootExec"
file_name: "BaseRootExec.java"
line_number: 93
method_name: "next"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.work.fragment.FragmentExecutor"
file_name: "FragmentExecutor.java"
line_number: 321
method_name: "lambda$run$0"
is_native_method: false
}
stack_trace {
class_name: "..."
line_number: 0
method_name: "..."
is_native_method: false
}
stack_trace {
class_name: "org.apache.hadoop.security.UserGroupInformation"
file_name: "UserGroupInformation.java"
line_number: 1762
method_name: "doAs"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.exec.work.fragment.FragmentExecutor"
file_name: "FragmentExecutor.java"
line_number: 310
method_name: "run"
is_native_method: false
}
stack_trace {
class_name: "org.apache.drill.common.SelfCleaningRunnable"
file_name: "SelfCleaningRunnable.java"
line_number: 38
method_name: "run"
is_native_method: false
}
stack_trace {
class_name: "..."
line_number: 0
method_name: "..."
is_native_method: false
}
}
}

2022-12-28 19:03:07,476 [Client-1] DEBUG o.a.d.e.rpc.user.QueryResultHandler - resultArrived: queryState: FAILED, queryId = 1c53dd94-4277-9ab0-effe-18b1ab8989ac
2022-12-28 19:03:07,476 [Client-1] TRACE o.a.d.e.rpc.user.QueryResultHandler - For QueryId [part1: 2041218684968999600
part2: -1153457303194072660
], retrieved results listener org.apache.drill.jdbc.impl.DrillCursor$ResultsListener@29741514
2022-12-28 19:03:07,476 [Client-1] DEBUG o.a.d.j.i.DrillCursor$ResultsListener - Received query failure: 2 {}
org.apache.drill.common.exceptions.UserRemoteException: DATA_READ ERROR: The JDBC storage plugin failed while trying setup the SQL query.

Sql: INSERT INTO public.t1 (c1, c2)
(SELECT *
FROM test.t1)
Fragment: 0:0

[Error Id: 160a04a4-caff-42ae-ac68-06669b926853 on DESKTOP-PHHB7LC:31010]
at org.apache.drill.exec.rpc.user.QueryResultHandler.resultArrived(QueryResultHandler.java:125)
at org.apache.drill.exec.rpc.user.UserClient.handle(UserClient.java:422)
at org.apache.drill.exec.rpc.user.UserClient.handle(UserClient.java:96)
at org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:271)
at org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:241)
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:88)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:327)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:299)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:722)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:658)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:584)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:496)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at java.lang.Thread.run(Thread.java:750)
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'public.t1' doesn't exist
at .......(:0)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:403)
at com.mysql.jdbc.Util.getInstance(Util.java:386)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:944)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3933)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3869)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2524)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2675)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2465)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1915)
at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1254)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java)
at org.apache.drill.exec.store.jdbc.JdbcBatchReader.open(JdbcBatchReader.java:136)
at org.apache.drill.exec.physical.impl.scan.framework.ManagedScanFramework.open(ManagedScanFramework.java:211)
at org.apache.drill.exec.physical.impl.scan.framework.ShimBatchReader.open(ShimBatchReader.java:76)
at org.apache.drill.exec.physical.impl.scan.ReaderState.open(ReaderState.java:224)
at org.apache.drill.exec.physical.impl.scan.ScanOperatorExec.nextAction(ScanOperatorExec.java:286)
at org.apache.drill.exec.physical.impl.scan.ScanOperatorExec.next(ScanOperatorExec.java:242)
at org.apache.drill.exec.physical.impl.protocol.OperatorDriver.doNext(OperatorDriver.java:201)
at org.apache.drill.exec.physical.impl.protocol.OperatorDriver.start(OperatorDriver.java:179)
at org.apache.drill.exec.physical.impl.protocol.OperatorDriver.next(OperatorDriver.java:129)
at org.apache.drill.exec.physical.impl.protocol.OperatorRecordBatch.next(OperatorRecordBatch.java:149)
at org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:103)
at org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext(ScreenCreator.java:81)
at org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:93)
at org.apache.drill.exec.work.fragment.FragmentExecutor.lambda$run$0(FragmentExecutor.java:321)
at .......(:0)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1762)
at org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:310)
at org.apache.drill.common.SelfCleaningRunnable.run(SelfCleaningRunnable.java:38)
at .......(:0)
2022-12-28 19:03:07,476 [Client-1] DEBUG o.a.d.j.i.DrillCursor$ResultsListener - [#2] Query listener closing.
2022-12-28 19:03:07,477 [Client-1] INFO o.a.d.j.i.DrillCursor$ResultsListener - [#2] Query failed:
org.apache.drill.common.exceptions.UserRemoteException: DATA_READ ERROR: The JDBC storage plugin failed while trying setup the SQL query.

Sql: INSERT INTO public.t1 (c1, c2)
(SELECT *
FROM test.t1)
Fragment: 0:0

[Error Id: 160a04a4-caff-42ae-ac68-06669b926853 on DESKTOP-PHHB7LC:31010]
at org.apache.drill.exec.rpc.user.QueryResultHandler.resultArrived(QueryResultHandler.java:125)
at org.apache.drill.exec.rpc.user.UserClient.handle(UserClient.java:422)
at org.apache.drill.exec.rpc.user.UserClient.handle(UserClient.java:96)
at org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:271)
at org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:241)
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:88)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:327)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:299)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:722)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:658)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:584)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:496)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at java.lang.Thread.run(Thread.java:750)
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'public.t1' doesn't exist
at .......(:0)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:403)
at com.mysql.jdbc.Util.getInstance(Util.java:386)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:944)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3933)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3869)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2524)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2675)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2465)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1915)
at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1254)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java)
at org.apache.drill.exec.store.jdbc.JdbcBatchReader.open(JdbcBatchReader.java:136)
at org.apache.drill.exec.physical.impl.scan.framework.ManagedScanFramework.open(ManagedScanFramework.java:211)
at org.apache.drill.exec.physical.impl.scan.framework.ShimBatchReader.open(ShimBatchReader.java:76)
at org.apache.drill.exec.physical.impl.scan.ReaderState.open(ReaderState.java:224)
at org.apache.drill.exec.physical.impl.scan.ScanOperatorExec.nextAction(ScanOperatorExec.java:286)
at org.apache.drill.exec.physical.impl.scan.ScanOperatorExec.next(ScanOperatorExec.java:242)
at org.apache.drill.exec.physical.impl.protocol.OperatorDriver.doNext(OperatorDriver.java:201)
at org.apache.drill.exec.physical.impl.protocol.OperatorDriver.start(OperatorDriver.java:179)
at org.apache.drill.exec.physical.impl.protocol.OperatorDriver.next(OperatorDriver.java:129)
at org.apache.drill.exec.physical.impl.protocol.OperatorRecordBatch.next(OperatorRecordBatch.java:149)
at org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:103)
at org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext(ScreenCreator.java:81)
at org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:93)
at org.apache.drill.exec.work.fragment.FragmentExecutor.lambda$run$0(FragmentExecutor.java:321)
at .......(:0)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1762)
at org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:310)
at org.apache.drill.common.SelfCleaningRunnable.run(SelfCleaningRunnable.java:38)
at .......(:0)
2022-12-28 19:03:07,477 [main] DEBUG o.a.d.j.i.DrillCursor$ResultsListener - [#2] Dequeued query failure exception: {}.
org.apache.drill.common.exceptions.UserRemoteException: DATA_READ ERROR: The JDBC storage plugin failed while trying setup the SQL query.

Sql: INSERT INTO public.t1 (c1, c2)
(SELECT *
FROM test.t1)
Fragment: 0:0

[Error Id: 160a04a4-caff-42ae-ac68-06669b926853 on DESKTOP-PHHB7LC:31010]
at org.apache.drill.exec.rpc.user.QueryResultHandler.resultArrived(QueryResultHandler.java:125)
at org.apache.drill.exec.rpc.user.UserClient.handle(UserClient.java:422)
at org.apache.drill.exec.rpc.user.UserClient.handle(UserClient.java:96)
at org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:271)
at org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:241)
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:88)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:327)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:299)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:722)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:658)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:584)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:496)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at java.lang.Thread.run(Thread.java:750)
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'public.t1' doesn't exist
at .......(:0)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:403)
at com.mysql.jdbc.Util.getInstance(Util.java:386)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:944)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3933)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3869)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2524)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2675)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2465)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1915)
at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1254)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java)
at org.apache.drill.exec.store.jdbc.JdbcBatchReader.open(JdbcBatchReader.java:136)
at org.apache.drill.exec.physical.impl.scan.framework.ManagedScanFramework.open(ManagedScanFramework.java:211)
at org.apache.drill.exec.physical.impl.scan.framework.ShimBatchReader.open(ShimBatchReader.java:76)
at org.apache.drill.exec.physical.impl.scan.ReaderState.open(ReaderState.java:224)
at org.apache.drill.exec.physical.impl.scan.ScanOperatorExec.nextAction(ScanOperatorExec.java:286)
at org.apache.drill.exec.physical.impl.scan.ScanOperatorExec.next(ScanOperatorExec.java:242)
at org.apache.drill.exec.physical.impl.protocol.OperatorDriver.doNext(OperatorDriver.java:201)
at org.apache.drill.exec.physical.impl.protocol.OperatorDriver.start(OperatorDriver.java:179)
at org.apache.drill.exec.physical.impl.protocol.OperatorDriver.next(OperatorDriver.java:129)
at org.apache.drill.exec.physical.impl.protocol.OperatorRecordBatch.next(OperatorRecordBatch.java:149)
at org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:103)
at org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext(ScreenCreator.java:81)
at org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:93)
at org.apache.drill.exec.work.fragment.FragmentExecutor.lambda$run$0(FragmentExecutor.java:321)
at .......(:0)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1762)
at org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:310)
at org.apache.drill.common.SelfCleaningRunnable.run(SelfCleaningRunnable.java:38)
at .......(:0)
2022-12-28 19:03:07,478 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] DEBUG o.a.d.e.w.f.QueryStateProcessor - 1c53dd94-4277-9ab0-effe-18b1ab8989ac: State change requested FAILED --> COMPLETED
2022-12-28 19:03:07,478 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] WARN o.a.d.e.w.f.QueryStateProcessor - Dropping request to move to COMPLETED state as query is already at FAILED state (which is terminal).
2022-12-28 19:03:07,478 [1c53dd94-4277-9ab0-effe-18b1ab8989ac:frag:0:0] DEBUG o.a.d.e.w.f.FragmentStatusReporter - Closing org.apache.drill.exec.work.fragment.FragmentStatusReporter@26ac4f8b
2022-12-28 19:03:07,480 [main] DEBUG o.a.d.j.i.DrillCursor$ResultsListener - [#2] Query listener closing.
2022-12-28 19:03:07,480 [main] DEBUG o.a.d.j.impl.DrillStatementRegistry - Removing from open-statements registry: org.apache.drill.jdbc.impl.DrillStatementImpl@71df3d2b

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants