You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Anoop Sam John (JIRA)" <ji...@apache.org> on 2015/12/07 13:22:10 UTC

[jira] [Created] (HBASE-14940) Make our unsafe based ops more safe

Anoop Sam John created HBASE-14940:
--------------------------------------

             Summary: Make our unsafe based ops more safe
                 Key: HBASE-14940
                 URL: https://issues.apache.org/jira/browse/HBASE-14940
             Project: HBase
          Issue Type: Bug
            Reporter: Anoop Sam John
            Assignee: Anoop Sam John


Thanks for the nice findings [~ikeda]

This jira solves 3 issues with Unsafe operations and ByteBufferUtils
1. We can do sun unsafe based reads and writes iff unsafe package is available and underlying platform is having unaligned-access capability. But we were missing the second check
2. Java NIO is doing a chunk based copy while doing Unsafe copyMemory. The max chunk size is 1 MB. This is done for "A limit is imposed to allow for safepoint polling during a large copy" as mentioned in comments in Bits.java.  We are also going to do same way
3. In ByteBufferUtils, when Unsafe is not available and ByteBuffers are off heap, we were doing byte by byte operation (read/copy). We can avoid this and do better way.





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