[ 
https://issues.apache.org/jira/browse/TINKERPOP-1862?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16376154#comment-16376154
 ] 

ASF GitHub Bot commented on TINKERPOP-1862:
-------------------------------------------

Github user PBGraff commented on the issue:

    https://github.com/apache/tinkerpop/pull/801
  
    Hi @spmallette, I'm trying to add to the kitchen sink graph for my message 
passing test and I want to make sure I'm doing it right. I'm doing this in Java 
and calling a custom `main()`:
    
    ```
    Graph g1 = TinkerGraph.open();
    Graph g2 = TinkerGraph.open();
    Graph g3 = TinkerGraph.open();
        
    try {
      // GraphSON v1.0
      
g1.io(GraphSONIo.build(GraphSONVersion.V1_0)).readGraph("../tinkerpop/data/tinkerpop-sink.json");
      addData(g1);
      
g1.io(GraphSONIo.build(GraphSONVersion.V1_0)).writeGraph("tinkerpop-sink.json");
      // GraphSON v2.0
      
g2.io(GraphSONIo.build(GraphSONVersion.V2_0)).readGraph("../tinkerpop/data/tinkerpop-sink-v2d0.json");
      addData(g2);
      
g2.io(GraphSONIo.build(GraphSONVersion.V2_0)).writeGraph("tinkerpop-sink-v2d0.json");
      // Gryo
      g3.io(GryoIo.build()).readGraph("../tinkerpop/data/tinkerpop-sink.kryo");
      addData(g3);
      g3.io(GryoIo.build()).writeGraph("tinkerpop-sink.kryo");
    } catch (IOException e) {
      e.printStackTrace();
    }
    ```
    
    where 
    
    ```
    private static void addData(Graph g) {
      Vertex a = g.addVertex(T.id, 1L, T.label, LABEL, PROPERTYIN, VTX_A);
      Vertex b = g.addVertex(T.id, 2L, T.label, LABEL, PROPERTYIN, VTX_B);
      a.addEdge(EDGE_LABEL, b);
      a.addEdge(EDGE_LABEL, a);
    }
    ```
    
    `V1_0` appears to be coming out right, but `V2_0` looks to be typed when 
the original isn't. Plus, I can't see how to read/write typed versions as 
opposed to un-typed. Gryo appears to be straightforward. Should I add a GraphML 
version?


> TinkerGraph VertexProgram message passing doesn't work properly when using 
> Direction.BOTH
> -----------------------------------------------------------------------------------------
>
>                 Key: TINKERPOP-1862
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1862
>             Project: TinkerPop
>          Issue Type: Bug
>          Components: process, tinkergraph
>    Affects Versions: 3.2.7
>            Reporter: Philip Graff
>            Priority: Major
>
> I think the messages are being sent properly in TinkerMessenger, but when I 
> call messenger.receiveMessages(), the vertex is getting messages from the 
> outVertex of their edges regardless of the edge direction. This is due to 
> line 71 of TinkerMessenger (linked below) which calls 
> Edge.vertices(direction).next(), thus getting the first result out of the 
> Vertex iterator. For IN or OUT, this isn't a problem. But for BOTH, following 
> line 124 of TinkerEdge (linked below), the outVertex is always returned 
> first. TinkerMessenger needs to be modified to return the correct vertex (I 
> think it's the one that != this.vertex).
> https://github.com/apache/tinkerpop/blob/master/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/process/computer/TinkerMessenger.java#L71
> https://github.com/apache/tinkerpop/blob/master/tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/structure/TinkerEdge.java#L124



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to