升级到Titan 1.0.0后,我开始在加载时看到以下异常,使用Cassandra(2.2.6)作为存储后端:
Caused by: java.lang.InterruptedException: sleep interrupted
at java.lang.Thread.sleep(Native Method)[:1.8.0_102]
at java.lang.Thread.sleep(Thread.java:340)[:1.8.0_102]
at
java.util.concurrent.TimeUnit.sleep(TimeUnit.java:386)[:1.8.0_102]
at
com.thinkaurelius.titan.diskstorage.util.time.TimestampProviders.sleepPast(TimestampProviders.java:138)
at
com.thinkaurelius.titan.diskstorage.common.DistributedStoreManager.sleepAfterWrite(DistributedStoreManager.java:222)
... 66 more
可以通过配置修复吗? 虽然时间戳周围有几个可用的配置项,但我没有发现任何与时间戳提供者本身相关的信息。
答案 0 :(得分:2)
您应该检查您的Cassandra日志。我发现当Cassandra开始compaction进程时,负载下的Titan会开始抛出这些类型的错误以及Timeout错误。
Grep for the keyword" GC"在/var/log/cassandra/system.log
中使用dstat监视磁盘使用情况。如果你看到" GC"通常情况下,你经常会进行大规模的压缩,这会让泰坦陷入困境。
为了解决这个问题,您可以尝试优化将数据加载到titan中的方式,以免经常造成压缩。
以下是我们尝试过的适用于我们案例的内容: