[ https://issues.apache.org/jira/browse/FLINK-3589?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15302673#comment-15302673 ]
ASF GitHub Bot commented on FLINK-3589: --------------------------------------- Github user StephanEwen commented on the pull request: https://github.com/apache/flink/pull/1778#issuecomment-221960487 Couldn't that be equally well checked in the program that calls `setParallelism(...)`? Just asking because this is handled only in very few parts of the DataSet API anyways (not at all handled in streaming) and seems a bit of a special case. You may notice, I am starting to ask this question about "what needs to be part of the API, what can be part of the user program" quite a bit lately ;-) Trying to be conscious about complexity and commitment to maintaining all the API contructs. > Allow setting Operator parallelism to default value > --------------------------------------------------- > > Key: FLINK-3589 > URL: https://issues.apache.org/jira/browse/FLINK-3589 > Project: Flink > Issue Type: Improvement > Components: Java API > Affects Versions: 1.1.0 > Reporter: Greg Hogan > Assignee: Greg Hogan > Priority: Minor > Fix For: 1.1.0 > > > User's can override the parallelism for a single operator by calling > {{Operator.setParallelism}}, which accepts a positive value. {{Operator}} > uses {{-1}} to indicate default parallelism. It would be nice to name and > accept this default value. > This would enable user algorithms to allow configurable parallelism while > still chaining operator methods. > For example, currently: > {code} > private int parallelism; > ... > public void setParallelism(int parallelism) { > this.parallelism = parallelism; > } > ... > MapOperator<Edge<K,LongValue>, Edge<K,IntValue>> newEdges = > edges > .map(new MyMapFunction<K>()) > .name("My map function"); > if (parallelism > 0) { > newEdges.setParallelism(parallelism); > } > {code} > Could be simplified to: > {code} > private int parallelism = Operator.DEFAULT_PARALLELISM; > ... > public void setParallelism(int parallelism) { > this.parallelism = parallelism; > } > ... > DataSet<Edge<K,IntValue>> newEdges = edges > .map(new MyMapFunction<K>()) > .setParallelism(parallelism) > .name("My map function"); > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)