[
https://issues.apache.org/jira/browse/FLINK-2527?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14699441#comment-14699441
]
ASF GitHub Bot commented on FLINK-2527:
---------------------------------------
Github user asfgit closed the pull request at:
https://github.com/apache/flink/pull/1027
> If a VertexUpdateFunction calls setNewVertexValue more than once, the
> MessagingFunction will only see the first value set
> -------------------------------------------------------------------------------------------------------------------------
>
> Key: FLINK-2527
> URL: https://issues.apache.org/jira/browse/FLINK-2527
> Project: Flink
> Issue Type: Bug
> Components: Gelly
> Reporter: Gabor Gevay
> Assignee: Gabor Gevay
> Fix For: 0.10, 0.9.1
>
>
> The problem is that if setNewVertexValue is called more than once, it sends
> each new value to the out Collector, and these all end up in the workset, but
> then the coGroups in the two descendants of MessagingUdfWithEdgeValues use
> only the first value in the state Iterable. I see three ways to resolve this:
> 1. Add it to the documentation that setNewVertexValue should only be called
> once, and optionally add a check for this.
> 2. In setNewVertexValue, do not send the newValue to the out Collector at
> once, but only record it in outVal, and send the last recorded value after
> updateVertex returns.
> 3. Iterate over the entire Iterable in MessagingUdfWithEVsSimpleVV.coGroup
> and MessagingUdfWithEVsVVWithDegrees.coGroup. (This would probably still need
> some documentation addition.)
> I like 2. the best. What are your opinions?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)