RPC Server send buffer retains size of largest response ever sent
------------------------------------------------------------------
Key: HADOOP-4802
URL: https://issues.apache.org/jira/browse/HADOOP-4802
Project: Hadoop Core
Issue Type: Bug
Components: ipc
Affects Versions: 0.19.0, 0.18.2
Reporter: stack
The stack-based ByteArrayOutputStream in Server.Hander is reset each time
through the run loop. This will set the BAOS 'size' back to zero but the
allocated backing buffer is unaltered. If during an Handlers' lifecycle, any
particular RPC response was fat -- Megabytes, even -- the buffer expands during
the write to accommodate the particular response but then never shrinks
subsequently. If a hosting Server has had more than one 'fat payload'
occurrence, the resultant occupied heap can provoke memory woes (See
https://issues.apache.org/jira/browse/HBASE-900?focusedCommentId=12654009#action_12654009
for an extreme example; occasional payloads of 20-50MB with 30 handlers robbed
the heap of 700MB).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.