准备法令丢弃导致卡桑德拉写入失败?

时间:2016-11-28 08:53:40

标签: amazon-ec2 cassandra prepared-statement datastax

我们有2个m3.medium cassandra系统。我们正在看到这种警告

  

2016-11-27 00:53:06,097 QueryProcessor.java:123 - 在最后一刻丢弃了1个预准备语句,因为达到了缓存限制(10 MB)WARN [ScheduledTasks:1] 2016-11-27 00:57: 06,097 QueryProcessor.java:123 - 由于达到缓存限制(10 MB),最后一分钟丢弃了1个预准备语句

当发生这种情况时,我们会丢失任何传入的写入数据吗?

2 个答案:

答案 0 :(得分:2)

这没有什么不好的事情发生。如果你试图使用被驱逐的语句,重新创建它,驱动程序将处理它。

但警告是一个很好的说明。特别是,它可能会不断创建或重新创建预准备语句的标志。在这种情况下,你可能比你根本不准备它们的速度慢。您的查询将被等待对协调器上正在准备的语句的确认所阻止,这可能是延迟的2-3倍。

答案 1 :(得分:1)

不,Cassandra不会丢失任何来信。
Cassandra缓存了所有准备好的语句。在你的案例准备语句中超出了Cache限制。它将逐出一些预备语句并准备新语句