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 <[email protected]>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 > <[email protected]>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 < >> [email protected]> 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 >>> >> >> >
