hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anoop Sam John (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HBASE-13819) Make RPC layer CellBlock buffer a DirectByteBuffer
Date Tue, 13 Oct 2015 02:32:05 GMT

     [ https://issues.apache.org/jira/browse/HBASE-13819?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Anoop Sam John updated HBASE-13819:
-----------------------------------
      Resolution: Fixed
    Hadoop Flags: Reviewed
    Release Note: 
For master branch(2.0 version), the BoundedByteBufferPool always create Direct (off heap)
ByteBuffers and return that.
For branch-1(1.3 version), byte default the buffers returned will be off heap. This can be
changed to return on heap ByteBuffers by configuring *'hbase.ipc.server.reservoir.direct.buffer'*
to false.
          Status: Resolved  (was: Patch Available)

Pushed to branch-1 and master.
In master we will always make Direct ByteBuffer from pool. In 1.3 we will by default make
it direct and using config *hbase.ipc.server.reservoir.direct.buffer* this can be changed.
Configure it as false to make the on heap ByteBuffers as before.

Thanks for the reviews Stack and Ram.

> Make RPC layer CellBlock buffer a DirectByteBuffer
> --------------------------------------------------
>
>                 Key: HBASE-13819
>                 URL: https://issues.apache.org/jira/browse/HBASE-13819
>             Project: HBase
>          Issue Type: Sub-task
>          Components: Scanners
>            Reporter: Anoop Sam John
>            Assignee: Anoop Sam John
>             Fix For: 2.0.0, 1.3.0
>
>         Attachments: HBASE-13819.patch, HBASE-13819_branch-1.patch, HBASE-13819_branch-1.patch,
HBASE-13819_branch-1.patch
>
>
> In RPC layer, when we make a cellBlock to put as RPC payload, we will make an on heap
byte buffer (via BoundedByteBufferPool). The pool will keep upto certain number of buffers.
This jira aims at testing possibility for making this buffers off heap ones. (DBB)  The advantages
> 1. Unsafe based writes to off heap is faster than that to on heap. Now we are not using
unsafe based writes at all. Even if we add, DBB will be better
> 2. When Cells are backed by off heap (HBASE-11425) off heap to off heap writes will be
better
> 3. When checked the code in SocketChannel impl, if we pass a HeapByteBuffer to the socket
channel, it will create a temp DBB and copy data to there and only DBBs will be moved to Sockets.
If we make DBB 1st hand itself, we can  avoid this one more level of copying.
> Will do different perf testing with changed and report back.



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

Mime
View raw message