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

Josh Elser updated ACCUMULO-2360:
---------------------------------

    Priority: Blocker  (was: Critical)

> Need a way to configure TNonblockingServer.maxReadBufferBytes to prevent OOMs 
> from network misbehavour
> ------------------------------------------------------------------------------------------------------
>
>                 Key: ACCUMULO-2360
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-2360
>             Project: Accumulo
>          Issue Type: Bug
>          Components: master, tserver
>    Affects Versions: 1.5.0
>            Reporter: John Vines
>            Assignee: John Vines
>            Priority: Blocker
>             Fix For: 1.5.1, 1.6.0
>
>
> 1.5.0 introduced GENERAL_MAX_MESSAGE_SIZE (ACCUMULO-1141), a parameter to set 
> the maximum frame size for the TFramedTransport. However, there is an 
> underlying frame (I think this is a glossary conflict) read in 
> TNonblockingServer that can still cause OOM errors if erroneously connected 
> to (telnet, netcat, etc.), creating a stack trace as such
> {code}2014-02-12 10:26:40,439 [util.TServerUtils$THsHaServer] ERROR: run() 
> exiting due to uncaught error
> java.lang.OutOfMemoryError: Java heap space
>         at java.nio.HeapByteBuffer.<init>(HeapByteBuffer.java:57)
>         at java.nio.ByteBuffer.allocate(ByteBuffer.java:329)
>         at 
> org.apache.thrift.server.AbstractNonblockingServer$FrameBuffer.read(AbstractNonblockingServer.java:338)
>         at 
> org.apache.thrift.server.AbstractNonblockingServer$AbstractSelectThread.handleRead(AbstractNonblockingServer.java:202)
>         at 
> org.apache.thrift.server.TNonblockingServer$SelectAcceptThread.select(TNonblockingServer.java:198)
>         at 
> org.apache.thrift.server.TNonblockingServer$SelectAcceptThread.run(TNonblockingServer.java:154){code}
> I believe if we set maxReadBufferBytes to the server arguments, it will 
> filter appropriately. The only decision I'm not sure about is if we should 
> recycle the max message property or have a separate one.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to