[
https://issues.apache.org/jira/browse/FLINK-41051?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18131241#comment-18131241
]
yongfu.gao commented on FLINK-41051:
------------------------------------
Hi, I'd like to work on this.
JdbcRowDataLookupFunction and JdbcDynamicTableSource both already have
options.getTableName(), but getLineageVertex() still parses SQL.
Plan (following FLINK-40743 / 911d9ef): store the configured table name on
JdbcRowDataLookupFunction and JdbcSource, prefer it in getLineageVertex(),
and keep the existing parser fallback when it is unset (DataStream source
built from a query). Add plan-time tests like
testLineageDatasetNameIsKnownAtPlanTime.
This adds an optional setter to the @PublicEvolving JdbcSourceBuilder - is that
ok, or should it stay internal?
> JDBC Table source and lookup function derive the lineage dataset name by
> parsing SQL
> ------------------------------------------------------------------------------------
>
> Key: FLINK-41051
> URL: https://issues.apache.org/jira/browse/FLINK-41051
> Project: Flink
> Issue Type: Technical Debt
> Components: Connectors / JDBC
> Reporter: Martijn Visser
> Priority: Major
>
> JdbcSource.getLineageVertex() and
> JdbcRowDataLookupFunction.getLineageVertex() take the dataset name from
> OpenLineage's SQL parser at plan time, while since FLINK-40743 the Table sink
> reports the configured table-name. The Table source and the lookup function
> know table-name and can pass it the same way. A DataStream JdbcSource built
> from a query keeps the parser.
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)