[
https://issues.apache.org/jira/browse/CASSANDRA-2654?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jonathan Ellis updated CASSANDRA-2654:
--------------------------------------
Attachment: 2654-v4.txt
v4 changes v2 for loop condition to "offset < size - remainder".
As you note, doing a readFully with size of zero is harmless.
> Work around native heap leak in sun.nio.ch.Util affecting
> IncomingTcpConnection
> -------------------------------------------------------------------------------
>
> Key: CASSANDRA-2654
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2654
> Project: Cassandra
> Issue Type: Improvement
> Components: Core
> Affects Versions: 0.6.13, 0.7.5, 0.8.0 beta 2
> Environment: OpenJDK Runtime Environment (IcedTea6 1.9.7)
> (6b20-1.9.7-0ubuntu1~10.04.1)
> OpenJDK 64-Bit Server VM (build 19.0-b09, mixed mode)
> Also observed on Sun/Oracle JDK. Probably platform- and os-independent.
> Reporter: Hannes Schmidt
> Fix For: 0.6.12
>
> Attachments: 2654-v2.txt, 2654-v3.txt, 2654-v4.txt, chunking.diff
>
>
> NIO's leaky, per-thread caching of direct buffers in combination with
> IncomingTcpConnection's eager buffering of messages leads to leakage of large
> amounts of native heap. Details in [1]. More on the root cause in [2]. Even
> though it doesn't fix the leak, attached patch has been found to alleviate
> the problem by keeping the size of each direct buffer modest.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira