[ 
https://issues.apache.org/jira/browse/BEAM-7590?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alireza Samadianzakaria updated BEAM-7590:
------------------------------------------
    Description: 
Currently, BeamCalciteTable keeps a map version of PipelineOptions and that map 
version is used in JDBCConnection and RelNodes as well. This map is empty when 
the pipeline is constructed from SQLTransform and it will have the parameters 
passed from JDBC Client when the pipeline is started by JDBC path. 

Since for Row-Count estimation we need to use PipelineOptions (or its 
sub-classes) and we cannot convert a map that is created from a pipelineOptions 
Subclasses back to PipelineOptions, it is better to keep PipelineOptions object 
itself.

Another thing that will be changed as a result is set command. Currently, if in 
JDBC we use Set Command for a pipeline option, it will only change that option 
in the map. This means even if the option is incorrect, it does not throw 
exception until it creates the actual Pipeline Options. However, if we are 
keeping the PipelineOptions class itself, then wee need to actually set the 
passed parameters (using reflection) which will throw exception at the time of 
setting them. 

 

  was:
Currently, BeamCalciteTable keeps a map version of PipelineOptions and that map 
version is used in JDBCConnection and RelNodes as well. This map is empty when 
the pipeline is constructed from SQLTransform and it will have the parameters 
passed from JDBC Client when the pipeline is started by JDBC path. 

Since for Row-Count estimation we need to use PipelineOptions (or its 
sub-classes) and we cannot convert a map that is created from a pipelineOptions 
Subclasses back to PipelineOptions, it is better to keep PipelineOptions object 
itself.

 


> Convert PipelineOptionsMap to PipelineOption
> --------------------------------------------
>
>                 Key: BEAM-7590
>                 URL: https://issues.apache.org/jira/browse/BEAM-7590
>             Project: Beam
>          Issue Type: Improvement
>          Components: dsl-sql
>            Reporter: Alireza Samadianzakaria
>            Assignee: Alireza Samadianzakaria
>            Priority: Minor
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> Currently, BeamCalciteTable keeps a map version of PipelineOptions and that 
> map version is used in JDBCConnection and RelNodes as well. This map is empty 
> when the pipeline is constructed from SQLTransform and it will have the 
> parameters passed from JDBC Client when the pipeline is started by JDBC path. 
> Since for Row-Count estimation we need to use PipelineOptions (or its 
> sub-classes) and we cannot convert a map that is created from a 
> pipelineOptions Subclasses back to PipelineOptions, it is better to keep 
> PipelineOptions object itself.
> Another thing that will be changed as a result is set command. Currently, if 
> in JDBC we use Set Command for a pipeline option, it will only change that 
> option in the map. This means even if the option is incorrect, it does not 
> throw exception until it creates the actual Pipeline Options. However, if we 
> are keeping the PipelineOptions class itself, then wee need to actually set 
> the passed parameters (using reflection) which will throw exception at the 
> time of setting them. 
>  



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

Reply via email to