Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果在Cassandra中写入记录时磁盘已满,会发生什么情况?_Cassandra - Fatal编程技术网

如果在Cassandra中写入记录时磁盘已满,会发生什么情况?

如果在Cassandra中写入记录时磁盘已满,会发生什么情况?,cassandra,Cassandra,在cassandra中存储记录(存储的记录的一半)时,如果我的磁盘已满且没有空间,会发生什么?如果抛出任何异常,该异常是什么 第二种情况是,如果在磁盘已满的情况下创建一个新的键空间怎么办?如果抛出任何异常,该异常是什么?我想您将得到一个超时异常。我只是在尝试将数据加载到磁盘空间不足的主机时遇到了这种情况。这取决于您正在写入的密钥空间是否是使用持久写入=true或false(默认值为true)创建的 如果是前者,并且您的commitlog磁盘已满,则在写入commitlog时将抛出IOExcept

在cassandra中存储记录(存储的记录的一半)时,如果我的磁盘已满且没有空间,会发生什么?如果抛出任何异常,该异常是什么


第二种情况是,如果在磁盘已满的情况下创建一个新的键空间怎么办?如果抛出任何异常,该异常是什么?

我想您将得到一个超时异常。我只是在尝试将数据加载到磁盘空间不足的主机时遇到了这种情况。

这取决于您正在写入的密钥空间是否是使用持久写入=true或false(默认值为true)创建的

如果是前者,并且您的commitlog磁盘已满,则在写入commitlog时将抛出IOException(但不会作为响应的一部分返回),请求将超时

如果是后者,并且您的数据磁盘已满,您将获得成功的响应。但是memtable无法刷新到磁盘,它的大小将不断增长,直到整个节点耗尽RAM并终止

在第二种情况下,尝试写入commitlog或尝试将新架构刷新到磁盘时将引发异常,具体取决于哪个驱动器已满。在这两种情况下,请求都将超时


即将推出的Cassandra 1.2(目前处于测试阶段)改进了对此类情况的处理—请阅读详细信息。

如果磁盘已满,则意味着它将停止执行。我试了很多次,每次它都停止执行。所以您的客户端api抛出连接拒绝异常