[
https://issues.apache.org/jira/browse/HBASE-11544?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14378710#comment-14378710
]
Andrew Purtell commented on HBASE-11544:
----------------------------------------
The idea would be to leave RegionScanner alone, introduce a new interface like
ExtendedRegonScanner extending RegionScanner (but please... a better name, I
know that sucks), put just the new nextRaw into the new interface, and do an
instanceof check and cast if the check passes, fall back if it doesn't since we
won't get ScannerContexts passed down through via implementors of plain
RegionScanner.
bq. Ain't Region Interface coming in in 1.1.0 too so its going to have some
work to do anyways?
Yep. I'm thinking about branch-1.0 and 0.98. Or they'll remain susceptible to
OOME. That could be ok. They would still be susceptible if intermediaries like
Phoenix wrap the extended RegionScanner with plain RegionScanners. OTOH, we'd
be source and binary compatible such that this fix can be slotted in to patch
releases.
> [Ergonomics] hbase.client.scanner.caching is dogged and will try to return
> batch even if it means OOME
> ------------------------------------------------------------------------------------------------------
>
> Key: HBASE-11544
> URL: https://issues.apache.org/jira/browse/HBASE-11544
> Project: HBase
> Issue Type: Bug
> Reporter: stack
> Assignee: Jonathan Lawlor
> Priority: Critical
> Fix For: 2.0.0, 1.1.0
>
> Attachments: Allocation_Hot_Spots.html,
> HBASE-11544-branch_1_0-v1.patch, HBASE-11544-branch_1_0-v2.patch,
> HBASE-11544-v1.patch, HBASE-11544-v2.patch, HBASE-11544-v3.patch,
> HBASE-11544-v4.patch, HBASE-11544-v5.patch, HBASE-11544-v6.patch,
> HBASE-11544-v6.patch, HBASE-11544-v6.patch, HBASE-11544-v7.patch,
> HBASE-11544-v8-branch-1.patch, HBASE-11544-v8.patch, gc.j.png, h.png,
> hits.j.png, m.png, mean.png, net.j.png, q (2).png
>
>
> Running some tests, I set hbase.client.scanner.caching=1000. Dataset has
> large cells. I kept OOME'ing.
> Serverside, we should measure how much we've accumulated and return to the
> client whatever we've gathered once we pass out a certain size threshold
> rather than keep accumulating till we OOME.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)