weijunlu commented on issue #2723:
URL: https://github.com/apache/drill/issues/2723#issuecomment-1366576817

   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([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[])
 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([]).[](input=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[])
 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([]).[](input=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[])
 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([]).[](input=RelSubset#109) 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([]).[](input=RelSubset#109)]
   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([]).[](input=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
                
rel#130:AbstractConverter.JDBC.pg.ANY([]).[](input=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
                
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
                
rel#130:AbstractConverter.JDBC.pg.ANY([]).[](input=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
                
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
                
rel#130:AbstractConverter.JDBC.pg.ANY([]).[](input=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
                
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#122) 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([]).[](input=JdbcTableModify#121)]
   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([]).[](input=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
                
rel#130:AbstractConverter.JDBC.pg.ANY([]).[](input=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
                
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#122), 
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([]).[](input=RelSubset#125) 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([]).[](input=JdbcTableModify#124)]
   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([]).[](input=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
                
rel#130:AbstractConverter.JDBC.pg.ANY([]).[](input=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
                
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#122), 
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([]).[](input=RelSubset#125), 
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([]).[](input=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
                
rel#130:AbstractConverter.JDBC.pg.ANY([]).[](input=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
                
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#122), 
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([]).[](input=RelSubset#125), 
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([]).[](input=RelSubset#109)
   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([]).[](input=RelSubset#109)]
   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([]).[](input=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
                
rel#130:AbstractConverter.JDBC.pg.ANY([]).[](input=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
                
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#122), 
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([]).[](input=RelSubset#125), 
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([]).[](input=RelSubset#109)
   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([]).[](input=AbstractConverter#128)]
   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([]).[](input=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
                
rel#130:AbstractConverter.JDBC.pg.ANY([]).[](input=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
                
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#122), 
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([]).[](input=RelSubset#125), 
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([]).[](input=RelSubset#127,convention=JDBC.mysql,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#127,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#123:RelSubset#0.JDBC.pg.ANY([]).[], best=null
                
rel#130:AbstractConverter.JDBC.pg.ANY([]).[](input=RelSubset#127,convention=JDBC.pg,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.0E9, cumulative cost={inf}
        rel#127:RelSubset#0.PHYSICAL.SINGLETON([]).[], best=rel#126
                
rel#126:JdbcIntermediatePrel.PHYSICAL.SINGLETON([]).[](input=RelSubset#109), 
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([]).[](input=RelSubset#113,convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 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([]).[](input=RelSubset#122), 
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([]).[](input=RelSubset#125), 
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;
   }


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@drill.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to