[
https://issues.apache.org/jira/browse/CASSANDRA-15118?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
eBugs in Cloud Systems updated CASSANDRA-15118:
-----------------------------------------------
Description:
Dear Cassandra developers, we are developing a tool to detect exception-related
bugs in Java. Our prototype has spotted the following {{throw}} statement whose
exception class and error message seem to indicate different error conditions.
Since we are not very familiar with Cassandra's internal work flow, could you
please help us verify if this is a bug, i.e., will the callers have trouble
handling the exception, and will the users/admins have trouble diagnosing the
failure?
Version: Cassandra-3.11 (commit: 123113f7b887370a248669ee0db6fdf13df0146e)
File: CASSANDRA-ROOT/src/java/org/apache/cassandra/utils/obs/OffHeapBitSet.java
Line: 49
{code:java}
throw new RuntimeException("Out of native memory occured, You can avoid it by
increasing the system ram space or by increasing
bloom_filter_fp_chance.");{code}
Reason: {{RuntimeException}} is usually used to represent errors in the program
logic (think of one of its subclasses, {{NullPointerException}}), while the
error message indicates that {{OffHeapBitSet()}} ran out of memory. Will this
mismatch be a problem? For example, will the callers miss the possibility that
{{OffHeapBitSet()}} can run out of memory? Or, will the callers trying to
handle other {{RuntimeException}} accidentally (and incorrectly) handle the out
of memory scenario?
was:
Dear Cassandra developers, we are developing a tool to detect exception-related
bugs in Java. Our prototype has spotted the following {{throw}} statement whose
exception class and error message seem to indicate different error conditions.
Since we are not very familiar with Cassandra's internal work flow, could you
please help us verify if this is a bug, i.e., will the callers have trouble
handling the exception, and will the users/admins have trouble diagnosing the
failure?
Version: Cassandra-3.11 (commit: 123113f7b887370a248669ee0db6fdf13df0146e)
File: CASSANDRA-ROOT/src/java/org/apache/cassandra/utils/obs/OffHeapBitSet.java
Line: 49
{code:java}
throw new RuntimeException("Out of native memory occured, You can avoid it by
increasing the system ram space or by increasing
bloom_filter_fp_chance.");{code}
Reason: {{RuntimeException}} is usually used to represent errors in the program
logic (think of one of its subclasses, {{NullPointerException}}), while the
error message indicates that {{OffHeapBitSet()}} ran out of memory. Will this
mismatch be a problem? For example, will the callers miss the possibility that
{{OffHeapBitSet()}} can run out of memory? Or, will the callers try to handle
other {{RuntimeException}} accidentally (and incorrectly) handle the out of
memory scenario?
> OffHeapBitSet() throws a RuntimeException when it runs out of memory
> --------------------------------------------------------------------
>
> Key: CASSANDRA-15118
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15118
> Project: Cassandra
> Issue Type: Bug
> Reporter: eBugs in Cloud Systems
> Priority: Normal
>
> Dear Cassandra developers, we are developing a tool to detect
> exception-related bugs in Java. Our prototype has spotted the following
> {{throw}} statement whose exception class and error message seem to indicate
> different error conditions. Since we are not very familiar with Cassandra's
> internal work flow, could you please help us verify if this is a bug, i.e.,
> will the callers have trouble handling the exception, and will the
> users/admins have trouble diagnosing the failure?
>
> Version: Cassandra-3.11 (commit: 123113f7b887370a248669ee0db6fdf13df0146e)
> File:
> CASSANDRA-ROOT/src/java/org/apache/cassandra/utils/obs/OffHeapBitSet.java
> Line: 49
> {code:java}
> throw new RuntimeException("Out of native memory occured, You can avoid it by
> increasing the system ram space or by increasing
> bloom_filter_fp_chance.");{code}
> Reason: {{RuntimeException}} is usually used to represent errors in the
> program logic (think of one of its subclasses, {{NullPointerException}}),
> while the error message indicates that {{OffHeapBitSet()}} ran out of memory.
> Will this mismatch be a problem? For example, will the callers miss the
> possibility that {{OffHeapBitSet()}} can run out of memory? Or, will the
> callers trying to handle other {{RuntimeException}} accidentally (and
> incorrectly) handle the out of memory scenario?
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]