[
https://issues.apache.org/jira/browse/FLINK-1694?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14386854#comment-14386854
]
ASF GitHub Bot commented on FLINK-1694:
---------------------------------------
GitHub user vasia opened a pull request:
https://github.com/apache/flink/pull/547
[FLINK-1694] [gelly] added IterationConfiguration as a way to configure ...
...a VertexCentricIteration and avoid the split between create and run
methods.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/vasia/flink vertex-centric-configuration
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/547.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #547
----
commit a377fba6b9a6b249525fffb0eda876687e7e7c0f
Author: vasia <[email protected]>
Date: 2015-03-29T21:39:08Z
[FLINK-1694] [gelly] added IterationConfiguration as a way to configure a
VertexCentricIteration
----
> Change the split between create/run of a vertex-centric iteration
> -----------------------------------------------------------------
>
> Key: FLINK-1694
> URL: https://issues.apache.org/jira/browse/FLINK-1694
> Project: Flink
> Issue Type: Improvement
> Components: Gelly
> Reporter: Vasia Kalavri
> Assignee: Vasia Kalavri
>
> Currently, the vertex-centric API in Gelly looks like this:
> {code:java}
> Graph inputGaph = ... //create graph
> VertexCentricIteration iteration = inputGraph.createVertexCentricIteration();
> ... // configure the iteration
> Graph newGraph = inputGaph.runVertexCentricIteration(iteration);
> {code}
> We have this create/run split, in order to expose the iteration object and be
> able to call the public methods of VertexCentricIteration.
> However, this is not very nice and might lead to errors, if create and run
> are mistakenly called on different graph objects.
> One suggestion is to change this to the following:
> {code:java}
> VertexCentricIteration iteration = inputGraph.createVertexCentricIteration();
> ... // configure the iteration
> Graph newGraph = iteration.result();
> {code}
> or to go with a single run call, where we add an IterationConfiguration
> object as a parameter and we don't expose the iteration object to the user at
> all:
> {code:java}
> IterationConfiguration parameters = ...
> Graph newGraph = inputGraph.runVertexCentricIteration(parameters);
> {code}
> and we can also have a simplified method where no configuration is passed.
> What do you think?
> Personally, I like the second option a bit more.
> -Vasia.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)