You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@giraph.apache.org by "Claudio Martella (JIRA)" <ji...@apache.org> on 2013/06/04 18:37:20 UTC
[jira] [Commented] (GIRAPH-679) Edge e.getTargetVertexId() returns
same instance
[ https://issues.apache.org/jira/browse/GIRAPH-679?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13674542#comment-13674542 ]
Claudio Martella commented on GIRAPH-679:
-----------------------------------------
this is not a bug, but an expected behavior. see javadoc for Vertex.getEdges():
"Get a read-only view of the out-edges of this vertex. Note: edge objects returned by this iterable may be invalidated as soon as the next element is requested. Thus, keeping a reference to an edge almost always leads to undesired behavior."
> Edge e.getTargetVertexId() returns same instance
> ------------------------------------------------
>
> Key: GIRAPH-679
> URL: https://issues.apache.org/jira/browse/GIRAPH-679
> Project: Giraph
> Issue Type: Bug
> Components: build
> Affects Versions: 1.1.0
> Reporter: Byungnam Lim
>
> I was trying to remove all edges of each vertex in one superstep. Below is my code.
> for (Edge<LongWritable, FloatWritable> e : vertex.getEdges()) {
> removeEdgesRequest(vertex.getId(), e.getTargetVertexId());
> }
> But it just removed only one edge in one superstep.
> I debugged and found e.getTargetVertexId() returns one same instances so that makes the removedEdgeList.add() in VertexMutations class could not add the elements properly.
> By creating new LongWritable instance for targetVertexId parameter, I could remove all edges in one superstep.
> But I'm doubt that I found that the Edge e also gets one same instance during 'for' loop. Maybe the problem exists in vertex.getEdges() not e.getTargetVertexId().
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira