You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Jonathan Lawlor (JIRA)" <ji...@apache.org> on 2015/02/07 01:46:35 UTC

[jira] [Commented] (HBASE-12930) Check single row size not exceed configured max row size across families for Get/Scan

    [ https://issues.apache.org/jira/browse/HBASE-12930?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14310321#comment-14310321 ] 

Jonathan Lawlor commented on HBASE-12930:
-----------------------------------------

Hey [~cuijianwei], this looks like it might be related to HBASE-11544. I'm currently working on a solution over there that I think would also solve this issue. The solution that I'm working towards would allow large rows to be returned as partials to the client.

> Check single row size not exceed configured max row size across families for Get/Scan
> -------------------------------------------------------------------------------------
>
>                 Key: HBASE-12930
>                 URL: https://issues.apache.org/jira/browse/HBASE-12930
>             Project: HBase
>          Issue Type: Improvement
>          Components: Scanners
>            Reporter: cuijianwei
>            Priority: Minor
>             Fix For: 0.99.2
>
>
> StoreScanner#next will check the 'totalBytesRead' not exceed configured ‘hbase.table.max.rowsize’ for each family. However, if there are several families, the single row will also achieve unexpected big size even if 'totalBytesRead' of each family not exceed 'hbase.table.max.rowsize'. This may cause the region server fail because of OOM. What about checking single row size across families in StoreScanner#next(List<Cell>, int)?
> {code}
>     long totalBytesRead = 0;
>     // ==> compute the size of cells have been read
>     for (Cell cell : outResult) {
>       totalBytesRead += CellUtil.estimatedSerializedSizeOf(old);
>     }
>     LOOP: while((cell = this.heap.peek()) != null) {
>     ...
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)