[
https://issues.apache.org/jira/browse/HBASE-14978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15061743#comment-15061743
]
Elliott Clark commented on HBASE-14978:
---------------------------------------
bq.But for trunk we or even 1.3 we may need to do some exact tracking of the
block count.
I don't think we will. It's counting each byte buffer only once. Any more exact
counting and the overhead will be too great. Networks are getting so fast that
the being wrong on an edge case is not the end of the world.
> Don't allow Multi to retain too many blocks
> -------------------------------------------
>
> Key: HBASE-14978
> URL: https://issues.apache.org/jira/browse/HBASE-14978
> Project: HBase
> Issue Type: Improvement
> Affects Versions: 2.0.0, 1.2.0, 1.3.0
> Reporter: Elliott Clark
> Assignee: Elliott Clark
> Priority: Blocker
> Fix For: 1.2.0, 3.0.0, 1.3.0
>
> Attachments: HBASE-14978-branch-1.2.patch, HBASE-14978-v1.patch,
> HBASE-14978-v2.patch, HBASE-14978-v3.patch, HBASE-14978-v4.patch,
> HBASE-14978.patch
>
>
> Scans and Multi's have limits on the total size of cells that can be
> returned. However if those requests are not all pointing at the same blocks
> then the KeyValues can keep alive a lot more data than their size.
> Take the following example:
> A multi with a list of 10000 gets to a fat row. Each column being returned in
> in a different block. Each column is small 32 bytes or so.
> So the total cell size will be 32 * 10000 = ~320kb. However if each block is
> 128k then total retained heap size will be almost 2gigs.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)