incubator-giraph-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Avery Ching" <avery.ch...@gmail.com>
Subject Re: Review Request: Make EdgeListVertex the default vertex implementation, fix bugs related to EdgeListVertex.
Date Mon, 02 Jan 2012 18:34:19 GMT


> On 2012-01-02 11:04:25, Sebastian Schelter wrote:
> > Had a quick look over your changes and everything looked good. I think it's right
to assume that most implementations will use static graphs and to offer EdgeListVertex as
the default extension point for this. The only thing I don't like is the name change from
MutableVertex to BasicVertex, I liked the former better because it sounds much more expressive
to me.

Sebastian, I didn't change the name from MutableVertex to BasicVertex, sorry for the mixup.
 I think MutableVertex is useful as well.  The only thing I did chance for for the addVertex()
and addVertexReq() methods to take a BasicVertex rather than a MutableVertex to be a tad safer.
 We still have the BasicVertex -> MutableVertex -> User vertex class hierarchy.


> On 2012-01-02 11:04:25, Sebastian Schelter wrote:
> > http://svn.apache.org/repos/asf/incubator/giraph/trunk/src/main/java/org/apache/giraph/graph/BasicVertex.java,
line 61
> > <https://reviews.apache.org/r/3349/diff/2/?file=66112#file66112line61>
> >
> >     good thing to have the Iterable<> abstraction here

=)


- Avery


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/3349/#review4168
-----------------------------------------------------------


On 2012-01-02 02:35:50, Avery Ching wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/3349/
> -----------------------------------------------------------
> 
> (Updated 2012-01-02 02:35:50)
> 
> 
> 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
> 
>


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message