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

Davor Bonaci commented on BEAM-1691:
------------------------------------

Indeed -- but there's a tradeoff between validation and functionality here. If 
we were to relax these conditions, the functionality becomes error prone:

#1 -- how would the user know which one got set?
#2 -- we cannot really know that some option might not be used, so its 
annotation doesn't need to be honored.

The current design favors safety, which sounds like a good idea, I think.

> Dynamic properties supported in PipelineOptions
> -----------------------------------------------
>
>                 Key: BEAM-1691
>                 URL: https://issues.apache.org/jira/browse/BEAM-1691
>             Project: Beam
>          Issue Type: Improvement
>          Components: sdk-java-core
>            Reporter: Xu Mingmin
>            Assignee: Davor Bonaci
>
> Usually the two lines to create a new Beam pipeline are:
> {code}
> Options options = 
> PipelineOptionsFactory.fromArgs(args).withValidation().as(Options.class);
> Pipeline pipeline = Pipeline.create(options);
> {code} 
> As each runner has its own PipelineOptions, one piece of code is hardly to 
> run on different runners without code change, --as least Options needs to be 
> updated.
> Dynamic property could be a choice, similar as
> {code}
> -D property1=value1 -D property2=value2 ...
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to