giraph-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Pushparaj Motamari <pushpara...@gmail.com>
Subject Re: addEdgeRequest() - Already has missing vertex on this worker for X
Date Tue, 31 Dec 2013 09:27:25 GMT
By the time vertex.compute() on vertex A did adding A-> and A->C
other worker incharge of vertex B also could have executed vertex.compute
on B leading to formation of B->C. Now if you try to add B->C from A, it
might be giving error.


On Tue, Dec 31, 2013 at 3:37 AM, Larry Compton
<lawrence.compton@gmail.com>wrote:

> All of what I described previously is happening in the Vertex.compute()
> method for vertex A. It needs to...
>
>    - Add edges A->B and A->C to its own adjacency list - I have this
>    working
>    - Add edge B->C to B's adjacency list - this is failing stating that
>    "Already has missing vertex on this worker for B"
>
> The Vertex.addEdgeRequest() method looks like the right call to be making,
> but it's failing.
>
> Larry
>
>
>
> On Mon, Dec 30, 2013 at 4:51 PM, Ameya Vilankar <ameya.vilankar@gmail.com>wrote:
>
>> I don't get what you are trying to solve here. If vertex A already has
>> edges to B and C, what edges are your trying to add? Could you explain in
>> detail what you are trying to do?
>>
>> You can call vertex.getEdges() to get an iterable list of edges where you
>> know the the value on the edge and the vertex id of the vertex to which the
>> edge connects.
>>
>>
>>
>>
>> On Mon, Dec 30, 2013 at 4:29 PM, Larry Compton <
>> lawrence.compton@gmail.com> wrote:
>>
>>> Giraph 1.0.0 - Hadoop 0.20.2 (CDH3U5)
>>>
>>> The Giraph algorithm I'm developing dynamically retrieves adjacent
>>> vertices from within the Vertex.compute() method. The retrieval returns
>>> immediate neighbors and also relationships between the neighbors. For
>>> instance, for vertex A, the following edges could be retrieved...
>>> A->B
>>> A->C
>>> B->C
>>>
>>> I'm trying to use the Vertex API to dynamically add vertices B and C and
>>> all three edges. I've managed to successfully add B and C, along with edges
>>> A->B and A->C (using Vertex.setEdges()). However, I'm having problems
>>> adding B->C using Vertex.addEdgeRequest(). It's saying...
>>>
>>> Already has missing vertex on this worker for B
>>>
>>> ...presumably because the addition of B to A's adjacency list also
>>> causes the vertex for B to be created.
>>>
>>> What's the proper way to update the graph?
>>>
>>> Larry
>>>
>>
>>
>

Mime
View raw message