Unfortunately, someone (probably me), needs to make a wiki on this
issue. Currently, we require that your vertices are globally sorted by
vertex id and that the vertices read in each input split are in order by
vertex id. That probably explains the weirdness you are seeing. This
issue is being addressed (albeit slowly because of new job) in
https://issues.apache.org/jira/browse/GIRAPH-11. The issue is also
described a bit more fully there.
On 10/1/11 12:44 PM, Aapo Kyrola wrote:
I have a very difficult problem to debug. Several vertices seem to be
maybe I am not reading the inputs properly? Here is more info:
- I have three input splits and use three workers. I have written my
(part of the zip I sent few days ago). In split one, i have ids mod 3
= 0, then ids mod 3 = 1 etc.
I added some extra debug vertex id 875600:
- I checked that the vertex 875600 is read only once, with 8 edges by
adding a System.out.println debug:
::: READ: 875600 ; 8 : [81066, 271870, 272882, 483962, 621946, 723717,
- in the vertex.compute I will write the hostname of the computer and
how many messsages, and
eedges there are. From here I see that this vertex appear on two
different hosts because I get
two types of outputs:
hostA.ml.cmu.edu <http://hostA.ml.cmu.edu> 875600* => 0.0 / 0.0
hostB.ml.cmu.edu <http://hostB.ml.cmu.edu> 875600* =>
-3.4657359027997265 / -3.4657359027997265 msgs=5/6813839/0
Note that the last string the debug is
In the hostB, this vertex has no edges, but on host A, it has the
correct 8 edges.
Does it matter how I split the vertex-ids?
ps. For next report I will make an Apache account. Too busy now..
Ph.D. student, http://www.cs.cmu.edu/~akyrola