]
William Burns updated ISPN-5523:
--------------------------------
Status: Resolved (was: Pull Request Sent)
Fix Version/s: (was: 8.0.0.Final)
Resolution: Done
Enabling eager caching can lead to sever throwing
"OutOfMemoryError: Direct buffer memory"
-------------------------------------------------------------------------------------------
Key: ISPN-5523
URL:
https://issues.jboss.org/browse/ISPN-5523
Project: Infinispan
Issue Type: Bug
Components: Remote Protocols
Affects Versions: 7.2.2.Final, 8.0.0.Alpha1
Reporter: Galder ZamarreƱo
Assignee: Galder ZamarreƱo
Fix For: 7.2.4.Final, 8.0.0.CR1
Some near caching tests are throwing:
{code}
[0m[31m04:11:24,499 ERROR [org.infinispan.server.hotrod.CacheDecodeContext]
(HotRodServerWorker-43) ISPN005009: Unexpected error before any request parameters read:
java.lang.OutOfMemoryError: Direct buffer memory
at java.nio.Bits.reserveMemory(Bits.java:658) [rt.jar:1.7.0_75]
at java.nio.DirectByteBuffer.<init>(DirectByteBuffer.java:123) [rt.jar:1.7.0_75]
at java.nio.ByteBuffer.allocateDirect(ByteBuffer.java:306) [rt.jar:1.7.0_75]
at io.netty.buffer.PoolArena$DirectArena.newChunk(PoolArena.java:433)
[netty-all-4.0.18.Final-redhat-1.jar:4.0.18.Final-redhat-1]
at io.netty.buffer.PoolArena.allocateNormal(PoolArena.java:179)
[netty-all-4.0.18.Final-redhat-1.jar:4.0.18.Final-redhat-1]
at io.netty.buffer.PoolArena.allocate(PoolArena.java:168)
[netty-all-4.0.18.Final-redhat-1.jar:4.0.18.Final-redhat-1]
at io.netty.buffer.PoolArena.allocate(PoolArena.java:98)
[netty-all-4.0.18.Final-redhat-1.jar:4.0.18.Final-redhat-1]
at
io.netty.buffer.PooledByteBufAllocator.newDirectBuffer(PooledByteBufAllocator.java:241)
[netty-all-4.0.18.Final-redhat-1.jar:4.0.18.Final-redhat-1]
at
io.netty.buffer.AbstractByteBufAllocator.directBuffer(AbstractByteBufAllocator.java:155)
[netty-all-4.0.18.Final-redhat-1.jar:4.0.18.Final-redhat-1]
at
io.netty.buffer.AbstractByteBufAllocator.directBuffer(AbstractByteBufAllocator.java:146)
[netty-all-4.0.18.Final-redhat-1.jar:4.0.18.Final-redhat-1]
at io.netty.buffer.AbstractByteBufAllocator.ioBuffer(AbstractByteBufAllocator.java:107)
[netty-all-4.0.18.Final-redhat-1.jar:4.0.18.Final-redhat-1]
at
io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:106)
[netty-all-4.0.18.Final-redhat-1.jar:4.0.18.Final-redhat-1]
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:494)
[netty-all-4.0.18.Final-redhat-1.jar:4.0.18.Final-redhat-1]
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:461)
[netty-all-4.0.18.Final-redhat-1.jar:4.0.18.Final-redhat-1]
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:378)
[netty-all-4.0.18.Final-redhat-1.jar:4.0.18.Final-redhat-1]
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:350)
[netty-all-4.0.18.Final-redhat-1.jar:4.0.18.Final-redhat-1]
at
io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
[netty-all-4.0.18.Final-redhat-1.jar:4.0.18.Final-redhat-1]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_75]
{code}
KeyValueVersionConverter allocates a byte buffer but does not release it. It could be the
cause...