JanusGraph drop抛出OperationTimedOutException

时间:2018-03-23 17:54:45

标签: cassandra gremlin titan janusgraph

我们在尝试删除JanusGraph图时在CentOS中始终遵循以下错误。我们使用Janusgraph版本 0.2.0 和3节点 Cassandra集群作为后端。但是,同样的命令在Ubuntu中有效。

  

NAME =“CentOS Linux”VERSION =“7(核心)”ID =“centos”ID_LIKE =“rhel   fedora“VERSION_ID =”7“

     gremlin> JanusGraphFactory.drop(g);
        13:55:59 WARN  com.datastax.driver.core.RequestHandler  - Not retrying statement because it is not idempotent (this message will be logged only once). 
    Note that this version of the driver changes the default retry behavior for non-idempotent statements: they won't be automatically retried anymore.
   The driver marks statements non-idempotent by default, so you should explicitly call setIdempotent(true) if your statements are safe to retry.
            com.datastax.driver.core.exceptions.OperationTimedOutException: [/xxx.xxx.xxx.x:9042] Timed out waiting for server response
                    at com.datastax.driver.core.exceptions.OperationTimedOutException.copy(OperationTimedOutException.java:44)
                    at com.datastax.driver.core.exceptions.OperationTimedOutException.copy(OperationTimedOutException.java:26)
                    at com.datastax.driver.core.DriverThrowables.propagateCause(DriverThrowables.java:37)
                    at com.datastax.driver.core.DefaultResultSetFuture.getUninterruptibly(DefaultResultSetFuture.java:245)
                    at com.datastax.driver.core.AbstractSession.execute(AbstractSession.java:68)
                    at org.janusgraph.diskstorage.cql.CQLStoreManager.clearStorage(CQLStoreManager.java:334)
                    at org.janusgraph.diskstorage.Backend.clearStorage(Backend.java:589)
                    at org.janusgraph.core.JanusGraphFactory.drop(JanusGraphFactory.java:216)
                    at org.janusgraph.core.JanusGraphFactory$drop$0.call(Unknown Source)

非常感谢任何帮助。

由于

1 个答案:

答案 0 :(得分:2)

  

执行Cassandra操作时(批量执行 - 插入和   使用spark工作更新两个表上的操作我得到了“All   主机尝试查询失败 - com。 datastax。驱动程序。核心。   OperationTimedOutException“错误。

最常见的原因是Spark能够比Cassandra处理它们更快地发出写请求。这可能导致GC问题并建立提示。如果您的应用程序出现这种情况,请尝试使用以下选项降低并发写入次数和当前批次大小。

spark.cassandra.output.batch.size.rows spark.cassandra.output.concurrent.writes

或在大于或等于1.2.0 set

的Spark Cassandra Connector版本中

spark.cassandra.output.throughput_mb_per_sec

这将允许您控制每秒每个Spark核心写入C *的数据量。

  

你不应该使用BATCHES

这并非总是如此,连接器使用本地令牌感知批处理来实现更快的读取和写入,但这在自定义应用程序中是正确的。在许多情况下,异步查询更好或更好。

  

setReadTimeout

这是一个DataStax java驱动程序方法。连接器为您完成此操作,无需更改。