You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2018/11/16 15:48:00 UTC

[jira] [Commented] (FLINK-7636) Introduce Flink RelOptTable, and remove tableSource from all TableSourceScan node constructor

    [ https://issues.apache.org/jira/browse/FLINK-7636?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16689578#comment-16689578 ] 

ASF GitHub Bot commented on FLINK-7636:
---------------------------------------

twalthr commented on issue #4681: [FLINK-7636] [table] Introduce Flink RelOptTable, and remove tableSource from all TableSourceScan node constructor
URL: https://github.com/apache/flink/pull/4681#issuecomment-439435170
 
 
   @fhueske what is your opinion on this PR? The contributor @beyond1920 has not responded to your question. Can we close this PR for now?

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


> Introduce Flink RelOptTable,  and remove tableSource from all TableSourceScan node constructor
> ----------------------------------------------------------------------------------------------
>
>                 Key: FLINK-7636
>                 URL: https://issues.apache.org/jira/browse/FLINK-7636
>             Project: Flink
>          Issue Type: Improvement
>          Components: Table API &amp; SQL
>            Reporter: jingzhang
>            Assignee: jingzhang
>            Priority: Major
>              Labels: pull-request-available
>
> At present, there are two ways to fetch TableSource of a TableSourceScan node (e.g LogicalTableSourceScan, PhysicalTableSourceScan ...):
> 1. 
> {code}
> val relOptTable: RelOptTable = getTable()
> val tableSourceTable = relOptTable.unwrap(classOf[TableSourceTable[_]])
> val tableSouce = tableSourceTable.tableSource
> {code}
> the result of getTable() is instance of RelOptTableImpl now, and it will not change after RelNode tree is built.
> 2. now all TableSourceScan contains a tablesource as constructor parameter, so we could fetch the tablesource directly later.
>  
> The result tableSource is different with each other by above two ways after apply project push(PPD) down or filter push down(FPD).  It is very confusing. 
> we hope to fix the problem by introducing FlinkRelOptTable to replace RelOptTableImpl, and remove tableSource parameter from TableSourceScan's constructor. After PPD or FPD,  a new FlinkRelOptTable instance which contains a new TableSourceTable will be passed to TableSourceScan constructor. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)