[
https://issues.apache.org/jira/browse/HBASE-10925?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13977843#comment-13977843
]
stack commented on HBASE-10925:
-------------------------------
Looks good.
This should be a configuration: + long maxRowSize = 10 * 1024 * 1024;
On the below:
+ totalReadSize += kv.getRowLength() + kv.getFamilyLength()
+ + kv.getQualifierLength() + kv.getValueLength();
+ if (totalReadSize > maxRowSize) {
+ throw new RowTooBigException("Max size of row is :" + maxRowSize
+ + ", but the row is bigger than that.");
+ }
... it is a bit of a pain having to do the above. I suppose we should add a
getSize to CellUtils. Could do that in another patch. Was also thinking what
if the Cell is offheap but then above is probably fine still because while it
is offheap in the server, in the client it may not be and a 10G rowsize is
likely larger than it can swallow w/o OOME.
> Do not OOME, throw RowTooBigException instead
> ---------------------------------------------
>
> Key: HBASE-10925
> URL: https://issues.apache.org/jira/browse/HBASE-10925
> Project: HBase
> Issue Type: Bug
> Reporter: stack
> Assignee: Mikhail Antonov
> Attachments: HBASE-10925.patch
>
>
> If 10M columns in a row, throw a RowTooBigException rather than OOME when
> Get'ing or Scanning w/o in-row scan flag set.
--
This message was sent by Atlassian JIRA
(v6.2#6252)