[
https://issues.apache.org/jira/browse/GIRAPH-116?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13178262#comment-13178262
]
[email protected] commented on GIRAPH-116:
------------------------------------------------------
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/3349/
-----------------------------------------------------------
Review request for giraph.
Summary
-------
* Changed Vertex.java to HashMapVertex.java. This makes it less likely folks
will use it as a default. I have included comments that suggest EdgeListVertex
for static graphs (most cases).
* Found and fixed bugs in EdgeListVertex with the way that binarySearch was
being used. Added unittests to check for adding/getting/removing edges.
* Changed classes that extend Vertex to extending EdgeListVertex instead.
* Changed MutableVertex to BasicVertex for addVertex, addVertexReq to be a
little safer
* Tried to make sure that when a class that extends MutableVertex is
instantiated that it also will call readFields() or initialize(). This fixed
several bugs.
* Changed the interface of BasicVertex#initialize from public abstract void
initialize(I vertexId, V vertexValue, Map<I, E> edges, List<M> messages) to
initialize(I vertexId, V vertexValue, Map<I, E> edges, Iterable<M> messages) to
better fit the recent changes to BasicVertex getting/setting messages with an
Iterable.
* Found and removed duplicated code from several MutableVertex extended classes
for addVertexRequest, removeVertexRequest, addEdgeRequest and removeEdgeRequest.
* Changed Vertex cast to BasicVertex cast in Partition and MockUtils.
* There are some tabs --> spaces conversions done automatically from my Ecipse
settings for the files I touched.
This addresses bug GIRAPH-116.
https://issues.apache.org/jira/browse/GIRAPH-116
Diffs
-----
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/benchmark/PageRankBenchmark.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/benchmark/PseudoRandomVertexInputFormat.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/comm/BasicRPCCommunications.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/comm/CommunicationsInterface.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/comm/WorkerCommunications.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/examples/SimpleCheckpointVertex.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/examples/SimpleCombinerVertex.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/examples/SimpleFailVertex.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/examples/SimpleMsgVertex.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/examples/SimpleMutateGraphVertex.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/examples/SimpleShortestPathsVertex.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/examples/SimpleSuperstepVertex.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/examples/SimpleVertexWithWorkerContext.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/examples/VerifyMessage.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/graph/BasicVertex.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/graph/BasicVertexResolver.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/graph/BspUtils.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/graph/EdgeListVertex.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/graph/HashMapVertex.java
PRE-CREATION
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/graph/IntIntNullIntVertex.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/graph/LongDoubleFloatDoubleVertex.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/graph/MutableVertex.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/graph/VertexResolver.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/graph/partition/Partition.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/test/java/org/apache/giraph/TestBspBasic.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/test/java/org/apache/giraph/TestJsonBase64Format.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/test/java/org/apache/giraph/TestVertexTypes.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/test/java/org/apache/giraph/examples/SimpleShortestPathVertexTest.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/test/java/org/apache/giraph/lib/TestLongDoubleDoubleAdjacencyListVertexInputFormat.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/test/java/org/apache/giraph/lib/TestTextDoubleDoubleAdjacencyListVertexInputFormat.java
1226330
http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/test/java/org/apache/giraph/utils/MockUtils.java
1226330
Diff: https://reviews.apache.org/r/3349/diff
Testing
-------
Passed unittests and pseudo-distributed MR tests. Passed newly added unittests
as well for EdgeListVertex.
Thanks,
Avery
> Make EdgeListVertex the default vertex implementation, fix bugs related to
> EdgeListVertex.
> ------------------------------------------------------------------------------------------
>
> Key: GIRAPH-116
> URL: https://issues.apache.org/jira/browse/GIRAPH-116
> Project: Giraph
> Issue Type: Improvement
> Reporter: Avery Ching
> Assignee: Avery Ching
> Attachments: GIRAPH-116.patch
>
>
> I think this would best for new users as it is much more memory efficient
> than Vertex with respect to edges (list vs hash map). We seem to be mostly
> iterating over the edges (as several others had pointed out in earlier JIRAs
> and emails), so this would provide early users with a more memory efficient
> implementation without performance loss. If anyone disagrees, please voice
> your opinions.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira