Skip to content

Commit bbbd160

Browse files
xuyangzhonglsyldliu
authored andcommitted
[FLINK-36277][table] Create a DynamicTableSource instead of registering a legacy TableSource in tests and remove TableEnvironmentInternal#registerTableSourceInternal
1 parent c7b6212 commit bbbd160

File tree

154 files changed

+8285
-8081
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

154 files changed

+8285
-8081
lines changed

flink-table/flink-table-api-java/src/main/java/org/apache/flink/table/api/internal/TableEnvironmentImpl.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -1347,8 +1347,8 @@ protected List<Transformation<?>> translate(List<ModifyOperation> modifyOperatio
13471347
return planner.translate(modifyOperations);
13481348
}
13491349

1350-
@Override
1351-
public void registerTableSourceInternal(String name, TableSource<?> tableSource) {
1350+
/** TODO FLINK-36132 Remove this method later. */
1351+
private void registerTableSourceInternal(String name, TableSource<?> tableSource) {
13521352
validateTableSource(tableSource);
13531353
ObjectIdentifier objectIdentifier =
13541354
catalogManager.qualifyIdentifier(UnresolvedIdentifier.of(name));

flink-table/flink-table-api-java/src/main/java/org/apache/flink/table/api/internal/TableEnvironmentInternal.java

-13
Original file line numberDiff line numberDiff line change
@@ -108,19 +108,6 @@ default String explainInternal(List<Operation> operations, ExplainDetail... extr
108108
String explainInternal(
109109
List<Operation> operations, ExplainFormat format, ExplainDetail... extraDetails);
110110

111-
/**
112-
* Registers an external {@link TableSource} in this {@link TableEnvironment}'s catalog.
113-
* Registered tables can be referenced in SQL queries.
114-
*
115-
* <p>Temporary objects can shadow permanent ones. If a permanent object in a given path exists,
116-
* it will be inaccessible in the current session. To make the permanent object available again
117-
* one can drop the corresponding temporary object.
118-
*
119-
* @param name The name under which the {@link TableSource} is registered.
120-
* @param tableSource The {@link TableSource} to register.
121-
*/
122-
void registerTableSourceInternal(String name, TableSource<?> tableSource);
123-
124111
/**
125112
* Registers an external {@link TableSink} with already configured field names and field types
126113
* in this {@link TableEnvironment}'s catalog. Registered sink tables can be referenced in SQL

flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/plan/nodes/exec/processor/utils/InputPriorityGraphGenerator.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -62,12 +62,12 @@
6262
* : : +- Exchange(distribution=[hash[a]])
6363
* : : +- LocalHashAggregate(groupBy=[a], select=[a, Partial_COUNT(*) AS count1$0])
6464
* : : +- Calc(select=[a])
65-
* : : +- LegacyTableSourceScan(table=[[default_catalog, default_database, x, source: [TestTableSource(a, b, c)]]], fields=[a, b, c])
65+
* : : +- TableSourceScan(table=[[default_catalog, default_database, x]], fields=[a, b, c])
6666
* : +- HashAggregate(isMerge=[true], groupBy=[d], select=[d, Final_COUNT(count1$0) AS cnt2], reuse_id=[1])
6767
* : +- Exchange(distribution=[hash[d]])
6868
* : +- LocalHashAggregate(groupBy=[d], select=[d, Partial_COUNT(*) AS count1$0])
6969
* : +- Calc(select=[d])
70-
* : +- LegacyTableSourceScan(table=[[default_catalog, default_database, y, source: [TestTableSource(d, e, f)]]], fields=[d, e, f])
70+
* : +- TableSourceScan(table=[[default_catalog, default_database, y]], fields=[d, e, f])
7171
* +- Calc(select=[cnt1, CAST(cnt2) AS cnt2])
7272
* +- HashJoin(joinType=[LeftOuterJoin], where=[=(d, a)], select=[d, cnt2, a, cnt1], build=[right])
7373
* :- Reused(reference_id=[1])

flink-table/flink-table-planner/src/main/scala/org/apache/flink/table/planner/plan/rules/logical/FlinkRewriteSubQueryRule.scala

+3-3
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import org.apache.calcite.plan.{RelOptRule, RelOptRuleCall, RelOptRuleOperand}
2121
import org.apache.calcite.plan.RelOptRule.{any, operandJ}
2222
import org.apache.calcite.rel.RelNode
2323
import org.apache.calcite.rel.core.{Aggregate, Filter, RelFactories}
24-
import org.apache.calcite.rex.{RexShuttle, _}
24+
import org.apache.calcite.rex._
2525
import org.apache.calcite.sql.`type`.SqlTypeFamily
2626
import org.apache.calcite.sql.SqlKind
2727
import org.apache.calcite.sql.fun.SqlCountAggFunction
@@ -39,11 +39,11 @@ import scala.collection.JavaConversions._
3939
* {{{
4040
* LogicalProject(a=[$0], b=[$1], c=[$2])
4141
* +- LogicalJoin(condition=[$3], joinType=[semi])
42-
* :- LogicalTableScan(table=[[x, source: [TestTableSource(a, b, c)]]])
42+
* :- LogicalTableScan(table=[[x]])
4343
* +- LogicalProject($f0=[IS NOT NULL($0)])
4444
* +- LogicalAggregate(group=[{}], m=[MIN($0)])
4545
* +- LogicalProject(i=[true])
46-
* +- LogicalTableScan(table=[[y, source: [TestTableSource(d, e, f)]]])
46+
* +- LogicalTableScan(table=[[y]])
4747
* }}}
4848
*/
4949
class FlinkRewriteSubQueryRule(

flink-table/flink-table-planner/src/main/scala/org/apache/flink/table/planner/plan/rules/logical/SplitAggregateRule.scala

+1-2
Original file line numberDiff line numberDiff line change
@@ -81,8 +81,7 @@ import scala.collection.JavaConversions._
8181
* +- FlinkLogicalExpand(projects=[a, b, c, $f3, $f4, $e])
8282
* +- FlinkLogicalCalc(select=[a, b, c, MOD(HASH_CODE(b), 1024) AS $f3,
8383
* MOD(HASH_CODE(c), 1024) AS $f4])
84-
* +- FlinkLogicalTableSourceScan(table=[[MyTable,
85-
* source: [TestTableSource(a, b, c)]]], fields=[a, b, c])
84+
* +- FlinkLogicalTableSourceScan(table=[[MyTable]], fields=[a, b, c])
8685
* }}}
8786
*
8887
* '$e = 1' is equivalent to 'group by a, hash(b) % 1024' '$e = 2' is equivalent to 'group by a,

flink-table/flink-table-planner/src/test/resources/META-INF/services/org.apache.flink.table.factories.Factory

+1
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,4 @@ org.apache.flink.table.planner.plan.stream.sql.TestTableFactory
2121
org.apache.flink.table.planner.factories.TestUpdateDeleteTableFactory
2222
org.apache.flink.table.planner.factories.TestSupportsStagingTableFactory
2323
org.apache.flink.table.planner.factories.TestProcedureCatalogFactory
24+
org.apache.flink.table.planner.utils.TestSimpleDynamicTableSourceFactory

flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/api/batch/ExplainTest.xml

+6-6
Original file line numberDiff line numberDiff line change
@@ -450,27 +450,27 @@ SortLimit(orderBy=[a ASC], offset=[0], fetch=[5], global=[true])
450450
<Resource name="explain">
451451
<![CDATA[== Abstract Syntax Tree ==
452452
LogicalProject(a=[$0], b=[$1], c=[$2])
453-
+- LogicalTableScan(table=[[default_catalog, default_database, MyTable, source: [TestTableSource(a, b, c)]]])
453+
+- LogicalTableScan(table=[[default_catalog, default_database, MyTable]])
454454
455455
== Optimized Physical Plan ==
456-
LegacyTableSourceScan(table=[[default_catalog, default_database, MyTable, source: [TestTableSource(a, b, c)]]], fields=[a, b, c]): rowcount = , cumulative cost = {rows, cpu, io, network, memory}
456+
TableSourceScan(table=[[default_catalog, default_database, MyTable]], fields=[a, b, c]): rowcount = , cumulative cost = {rows, cpu, io, network, memory}
457457
458458
== Optimized Execution Plan ==
459-
LegacyTableSourceScan(table=[[default_catalog, default_database, MyTable, source: [TestTableSource(a, b, c)]]], fields=[a, b, c])
459+
TableSourceScan(table=[[default_catalog, default_database, MyTable]], fields=[a, b, c])
460460
]]>
461461
</Resource>
462462
</TestCase>
463463
<TestCase name="testExplainWithTableSourceScan[extended=false]">
464464
<Resource name="explain">
465465
<![CDATA[== Abstract Syntax Tree ==
466466
LogicalProject(a=[$0], b=[$1], c=[$2])
467-
+- LogicalTableScan(table=[[default_catalog, default_database, MyTable, source: [TestTableSource(a, b, c)]]])
467+
+- LogicalTableScan(table=[[default_catalog, default_database, MyTable]])
468468
469469
== Optimized Physical Plan ==
470-
LegacyTableSourceScan(table=[[default_catalog, default_database, MyTable, source: [TestTableSource(a, b, c)]]], fields=[a, b, c])
470+
TableSourceScan(table=[[default_catalog, default_database, MyTable]], fields=[a, b, c])
471471
472472
== Optimized Execution Plan ==
473-
LegacyTableSourceScan(table=[[default_catalog, default_database, MyTable, source: [TestTableSource(a, b, c)]]], fields=[a, b, c])
473+
TableSourceScan(table=[[default_catalog, default_database, MyTable]], fields=[a, b, c])
474474
]]>
475475
</Resource>
476476
</TestCase>

flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/api/stream/ExplainTest.xml

+6-6
Original file line numberDiff line numberDiff line change
@@ -72,27 +72,27 @@ DataStreamScan(table=[[default_catalog, default_database, MyTable1]], fields=[a,
7272
<Resource name="explain">
7373
<![CDATA[== Abstract Syntax Tree ==
7474
LogicalProject(a=[$0], b=[$1], c=[$2])
75-
+- LogicalTableScan(table=[[default_catalog, default_database, MyTable, source: [TestTableSource(a, b, c)]]])
75+
+- LogicalTableScan(table=[[default_catalog, default_database, MyTable]])
7676
7777
== Optimized Physical Plan ==
78-
LegacyTableSourceScan(table=[[default_catalog, default_database, MyTable, source: [TestTableSource(a, b, c)]]], fields=[a, b, c])
78+
TableSourceScan(table=[[default_catalog, default_database, MyTable]], fields=[a, b, c])
7979
8080
== Optimized Execution Plan ==
81-
LegacyTableSourceScan(table=[[default_catalog, default_database, MyTable, source: [TestTableSource(a, b, c)]]], fields=[a, b, c])
81+
TableSourceScan(table=[[default_catalog, default_database, MyTable]], fields=[a, b, c])
8282
]]>
8383
</Resource>
8484
</TestCase>
8585
<TestCase name="testExplainTableSourceScan[extended=true]">
8686
<Resource name="explain">
8787
<![CDATA[== Abstract Syntax Tree ==
8888
LogicalProject(a=[$0], b=[$1], c=[$2])
89-
+- LogicalTableScan(table=[[default_catalog, default_database, MyTable, source: [TestTableSource(a, b, c)]]])
89+
+- LogicalTableScan(table=[[default_catalog, default_database, MyTable]])
9090
9191
== Optimized Physical Plan ==
92-
LegacyTableSourceScan(table=[[default_catalog, default_database, MyTable, source: [TestTableSource(a, b, c)]]], fields=[a, b, c], changelogMode=[I]): rowcount = , cumulative cost = {rows, cpu, io, network, memory}
92+
TableSourceScan(table=[[default_catalog, default_database, MyTable]], fields=[a, b, c], changelogMode=[I]): rowcount = , cumulative cost = {rows, cpu, io, network, memory}
9393
9494
== Optimized Execution Plan ==
95-
LegacyTableSourceScan(table=[[default_catalog, default_database, MyTable, source: [TestTableSource(a, b, c)]]], fields=[a, b, c])
95+
TableSourceScan(table=[[default_catalog, default_database, MyTable]], fields=[a, b, c])
9696
]]>
9797
</Resource>
9898
</TestCase>

0 commit comments

Comments
 (0)