hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ted Yu (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-16613) Return the unused ByteBuffer to BoundedByteBufferPool when no cell is got from the CellScanner
Date Tue, 13 Sep 2016 16:06:20 GMT

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

Ted Yu commented on HBASE-16613:
--------------------------------

+1

> Return the unused ByteBuffer to BoundedByteBufferPool when no cell is got from the CellScanner
> ----------------------------------------------------------------------------------------------
>
>                 Key: HBASE-16613
>                 URL: https://issues.apache.org/jira/browse/HBASE-16613
>             Project: HBase
>          Issue Type: Bug
>            Reporter: ChiaPing Tsai
>            Assignee: ChiaPing Tsai
>             Fix For: 1.3.0, 1.4.0, 1.2.4
>
>         Attachments: HBASE-16613.branch-1.v0.patch, HBASE-16613.branch-1.v1.patch, HBASE-16613.branch-1.v1.patch
>
>
> The critical code is shown below:
> {code:title=IPCUtil.java|borderStyle=solid}
> // We should put the ByteBuffer into pool before return null
>   public ByteBuffer buildCellBlock(final Codec codec, final CompressionCodec compressor,
>     final CellScanner cellScanner, final BoundedByteBufferPool pool) {
>   ...
>   if (pool != null) {
>       ByteBuffer bb = pool.getBuffer();
>       bufferSize = bb.capacity();
>       baos = new ByteBufferOutputStream(bb);
>   }
>   ...
>       int count = 0;
>       while (cellScanner.advance()) {
>         encoder.write(cellScanner.current());
>         count++;
>       }
>       encoder.flush();
>       if (count == 0) return null;
> }
> {code}



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

Mime
View raw message