You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "ZhaoYang (Jira)" <ji...@apache.org> on 2020/06/10 10:18:00 UTC

[jira] [Updated] (CASSANDRA-15869) MemoryOutputStream overflow on large bloom filter

     [ https://issues.apache.org/jira/browse/CASSANDRA-15869?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

ZhaoYang updated CASSANDRA-15869:
---------------------------------
     Bug Category: Parent values: Correctness(12982)Level 1 values: Recoverable Corruption / Loss(12986)
       Complexity: Normal
    Discovered By: Performance Regression Test
    Fix Version/s: 4.0-beta
         Severity: Normal
           Status: Open  (was: Triage Needed)

> MemoryOutputStream overflow on large bloom filter
> -------------------------------------------------
>
>                 Key: CASSANDRA-15869
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-15869
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Local/SSTable
>            Reporter: ZhaoYang
>            Assignee: ZhaoYang
>            Priority: Normal
>             Fix For: 4.0-beta
>
>
> Since CASSANDRA-9067, Cassandra will use {{MemoryOutputStream}} to reconstruct BF Memory without re-ordering bytes, see {{OffsetBitSet#deserialize}}. But {{MemoryOutputStream}} use {{INT}} to track position and will overflow when BF size exceeds 2GB.
> {code:title=stacktrace}
> error: Illegal bounds [-2147483648..-2147483584); size: 4588588016
> -- StackTrace --
> java.lang.AssertionError: Illegal bounds [-2147483648..-2147483584); size: 4588588016
> 	at org.apache.cassandra.io.util.Memory.checkBounds(Memory.java:185)
> 	at org.apache.cassandra.io.util.Memory.setBytes(Memory.java:138)
> 	at org.apache.cassandra.io.util.MemoryOutputStream.write(MemoryOutputStream.java:45)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org