@Override public void process(TitanVertex vertex, ScanMetrics metrics) { PreloadedVertex v = (PreloadedVertex)vertex; long vertexId = v.longId(); VertexMemoryHandler<M> vh = new VertexMemoryHandler(vertexMemory,v); v.setAccessCheck(PreloadedVertex.OPENSTAR_CHECK); if (idManager.isPartitionedVertex(vertexId)) { if (idManager.isCanonicalVertexId(vertexId)) { EntryList results = v.getFromCache(SYSTEM_PROPS_QUERY); if (results == null) results = EntryList.EMPTY_LIST; vertexMemory.setLoadedProperties(vertexId,results); } for (MessageScope scope : vertexMemory.getPreviousScopes()) { if (scope instanceof MessageScope.Local) { M combinedMsg = null; for (Iterator<M> msgIter = vh.receiveMessages(scope).iterator(); msgIter.hasNext(); ) { M msg = msgIter.next(); if (combinedMsg==null) combinedMsg=msg; else combinedMsg = combiner.combine(combinedMsg,msg); } if (combinedMsg!=null) vertexMemory.aggregateMessage(vertexId,combinedMsg,scope); } } } else { v.setPropertyMixing(vh); vertexProgram.execute(v, vh, memory); } }
v.setPropertyMixing(vh); try { vertexProgram.execute(v, vh, memory); } catch (ReadOnlyTransactionException e) {
final Vertex vertex = vertices.next(); if (Thread.interrupted()) throw new TraversalInterruptedException(); vertexProgram.execute( ComputerGraph.vertexProgram(vertex, vertexProgram), new TinkerMessenger<>(vertex, this.messageBoard, vertexProgram.getMessageCombiner()),
workerVertexProgram.execute(ComputerGraph.vertexProgram(vertex, workerVertexProgram), messenger, memory); // execute the vertex program on this vertex for this iteration
@Override public void process(TitanVertex vertex, ScanMetrics metrics) { PreloadedVertex v = (PreloadedVertex)vertex; long vertexId = v.longId(); VertexMemoryHandler<M> vh = new VertexMemoryHandler(vertexMemory,v); v.setAccessCheck(PreloadedVertex.OPENSTAR_CHECK); if (idManager.isPartitionedVertex(vertexId)) { if (idManager.isCanonicalVertexId(vertexId)) { EntryList results = v.getFromCache(SYSTEM_PROPS_QUERY); if (results == null) results = EntryList.EMPTY_LIST; vertexMemory.setLoadedProperties(vertexId,results); } for (MessageScope scope : vertexMemory.getPreviousScopes()) { if (scope instanceof MessageScope.Local) { M combinedMsg = null; for (Iterator<M> msgIter = vh.receiveMessages(scope).iterator(); msgIter.hasNext(); ) { M msg = msgIter.next(); if (combinedMsg==null) combinedMsg=msg; else combinedMsg = combiner.combine(combinedMsg,msg); } if (combinedMsg!=null) vertexMemory.aggregateMessage(vertexId,combinedMsg,scope); } } } else { v.setPropertyMixing(vh); vertexProgram.execute(v, vh, memory); } }
final Vertex vertex = vertices.next(); if (Thread.interrupted()) throw new TraversalInterruptedException(); vertexProgram.execute( ComputerGraph.vertexProgram(vertex, vertexProgram), new TinkerMessenger<>(vertex, this.messageBoard, vertexProgram.getMessageCombiner()),
final Vertex vertex = vertices.next(); if (Thread.interrupted()) throw new TraversalInterruptedException(); vertexProgram.execute( ComputerGraph.vertexProgram(vertex, vertexProgram), new TinkerMessenger<>(vertex, this.messageBoard, vertexProgram.getMessageCombiner()),
workerVertexProgram.execute(ComputerGraph.vertexProgram(vertex, workerVertexProgram), messenger, memory); // execute the vertex program on this vertex for this iteration
workerVertexProgram.execute(ComputerGraph.vertexProgram(vertex, workerVertexProgram), messenger, memory); // execute the vertex program on this vertex for this iteration