sunshujie1990 opened a new pull request #3001:
URL: https://github.com/apache/bookkeeper/pull/3001


   Set a more reasonable default value to avoid OutOfDirectMemoryError.
   
   Descriptions of the changes in this PR:
   
   
   ### Motivation
   The default value of  allocatorPoolingConcurrency is 2 * 
Runtime.getRuntime().availableProcessors(). It's used to specify the num of 
Arena in PooledByteBufAllocator. 
   
   Assume:
   40 processors
   80 arena (processors*2)
   2 chunk per arena
   16MiB per chunk
   JVM's total direct mem should be larger then 80*2*16=2560MiB, otherwise 
OutOfDirectMemoryError occured.
   
   OutOfDirectMemoryError much more likely to occur in Docker, cause JDK 
versions earlier than Java SE 8U131 does not support Docker CPU limits.
   
   
   ### Changes
   Use Netty default arena num `PooledByteBufAllocator.defaultNumDirectArena()` 
as default allocatorPoolingConcurrency.
   
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to