janusGraph с использованием удаленного подключения для обновления и удаления: отчет DefaultGraphTraversal.none ()

используя janusGraph пример кода git: example-remotegraph

Он хорошо работает, когда я собираюсь создавать элементы и выполнять некоторые запросы.
Но он сообщает об исключении при обновлении и удалении ...

java.util.concurrent.CompletionException: org.apache.tinkerpop.gremlin.driver.exception.ResponseException: Could not locate method: DefaultGraphTraversal.none()
    at java.util.concurrent.CompletableFuture.reportJoin(CompletableFuture.java:375)
    at java.util.concurrent.CompletableFuture.join(CompletableFuture.java:1934)
    at org.apache.tinkerpop.gremlin.driver.ResultSet.one(ResultSet.java:107)
    at org.apache.tinkerpop.gremlin.driver.ResultSet$1.hasNext(ResultSet.java:159)
    at org.apache.tinkerpop.gremlin.driver.ResultSet$1.next(ResultSet.java:166)
    at org.apache.tinkerpop.gremlin.driver.ResultSet$1.next(ResultSet.java:153)
    at org.apache.tinkerpop.gremlin.driver.remote.DriverRemoteTraversal$TraverserIterator.next(DriverRemoteTraversal.java:142)
    at org.apache.tinkerpop.gremlin.driver.remote.DriverRemoteTraversal$TraverserIterator.next(DriverRemoteTraversal.java:127)
    at org.apache.tinkerpop.gremlin.driver.remote.DriverRemoteTraversal.nextTraverser(DriverRemoteTraversal.java:108)
    at org.apache.tinkerpop.gremlin.process.remote.traversal.step.map.RemoteStep.processNextStart(RemoteStep.java:80)
    at org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.next(AbstractStep.java:128)
    at org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.next(AbstractStep.java:38)
    at org.apache.tinkerpop.gremlin.process.traversal.Traversal.iterate(Traversal.java:203)
    at org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal.iterate(GraphTraversal.java:2694)
    at org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal$Admin.iterate(GraphTraversal.java:178)
    at org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.DefaultGraphTraversal.iterate(DefaultGraphTraversal.java:48)
    at org.janusgraph.example.GraphApp.deleteElements(GraphApp.java:301)
    at org.janusgraph.example.GraphApp.runApp(GraphApp.java:350)
    at org.janusgraph.example.RemoteGraphApp.main(RemoteGraphApp.java:227)

вот код:

    public void deleteElements() {
    try {
        if (g == null) {
            return;
        }
        LOGGER.info("deleting elements");
        // note that this will succeed whether or not pluto exists
        g.V().has("name", "pluto").drop().iterate();
        if (supportsTransactions) {
            g.tx().commit();
        }
    } catch (Exception e) {
        LOGGER.error(e.getMessage(), e);
        if (supportsTransactions) {
            g.tx().rollback();
        }
    }
}

person user10543451    schedule 23.10.2018    source источник


Ответы (2)


эммм ..... я думал, что решил эту проблему .....

единственная причина, по которой, возможно, используемая версия библиотеки не соответствует версии gremlin-server;

Я попытался превратить библиотеку драйверов gremlin в версию 3.2.9, и она работает хорошо.

person user10543451    schedule 23.10.2018
comment
Молодцы, вы сами решили свою проблему .. Так держать! +1 - person dwir182; 23.10.2018

Вам необходимо использовать ту же версию Tinkerpop, которую использует JanusGraph, поскольку это несовместимое изменение, которое было введено в Tinkerpop.

person Wolfgang Colsman    schedule 04.12.2018