Ian Friedman created HBASE-14598:
------------------------------------
Summary: ByteBufferOutputStream grows its HeapByteBuffer beyond
JVM limitations
Key: HBASE-14598
URL: https://issues.apache.org/jira/browse/HBASE-14598
Project: HBase
Issue Type: Bug
Affects Versions: 0.98.12
Reporter: Ian Friedman
Assignee: Ian Friedman
We noticed that in returning a Scan against a region containing particularly
large (wide) rows that it is possible during ByteBufferOutputStream.
checkSizeAndGrow() to attempt to create a new ByteBuffer larger than the JVM
allows (which I believe is Integer.MAX_VALUE), which then throws a
OutOfMemoryError. This lead to us dealing with cascading region server death as
the RegionServer hosting the region died, opened on a new server, the client
retried the scan, and the new RS died as well.
I believe ByteBufferOutputStream should not try to create ByteBuffers that
large and instead throw an exception back up.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)