You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Matt Wringe (JIRA)" <ji...@apache.org> on 2017/02/09 20:54:41 UTC

[jira] [Commented] (CASSANDRA-13067) Integer overflows with file system size reported by Amazon Elastic File System (EFS)

    [ https://issues.apache.org/jira/browse/CASSANDRA-13067?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15860191#comment-15860191 ] 

Matt Wringe commented on CASSANDRA-13067:
-----------------------------------------

This also affects the 3.0 branch: https://github.com/apache/cassandra/blob/cassandra-3.0/src/java/org/apache/cassandra/config/DatabaseDescriptor.java#L538

Is anyone looking into this?

> Integer overflows with file system size reported by Amazon Elastic File System (EFS)
> ------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-13067
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13067
>             Project: Cassandra
>          Issue Type: Bug
>         Environment: Cassandra in OpenShift running on Amazon EC2 instance with EFS mounted for data
>            Reporter: Michael Hanselmann
>
> When not explicitly configured Cassandra uses [{{nio.FileStore.getTotalSpace}}|https://docs.oracle.com/javase/7/docs/api/java/nio/file/FileStore.html] to determine the total amount of available space in order to [calculate the preferred commit log size|https://github.com/apache/cassandra/blob/cassandra-3.9/src/java/org/apache/cassandra/config/DatabaseDescriptor.java#L553]. [Amazon EFS|https://aws.amazon.com/efs/] instances report a filesystem size of 8 EiB when empty. [{{getTotalSpace}} causes an integer overflow (JDK-8162520)|https://bugs.openjdk.java.net/browse/JDK-8162520] and returns a negative number, resulting in a negative preferred size and causing the checked integer to throw.
> Overriding {{commitlog_total_space_in_mb}} is not sufficient as [{{DataDirectory.getAvailableSpace}}|https://github.com/apache/cassandra/blob/cassandra-3.9/src/java/org/apache/cassandra/db/Directories.java#L550] makes use of {{nio.FileStore.getUsableSpace}}.
> [AMQ-6441] is a comparable issue in ActiveMQ.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)