hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Todd Lipcon (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-5958) Replace ByteString.copyFrom with new ByteString()
Date Tue, 08 May 2012 18:29:49 GMT

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

Todd Lipcon commented on HBASE-5958:

In my mind the two possible solutions are :
1) use protostuff
2) use my earlier idea of a "data dictionary" at the front of our RPC requests. Essentially,
we'd change the RPC request/response mechanism so that before each message (or perhaps after),
we send a list of KeyValues (or byte strings). Then in the actual Put/Result/whatever protos,
we just use vint32s to refer back to the dictionary. That would allow us to manually send
out the KeyValues using a CodedOutputStream rather than having to build a full protobuf which
includes them, if that makes sense.
> Replace ByteString.copyFrom with new ByteString()
> -------------------------------------------------
>                 Key: HBASE-5958
>                 URL: https://issues.apache.org/jira/browse/HBASE-5958
>             Project: HBase
>          Issue Type: Improvement
>          Components: performance
>    Affects Versions: 0.96.0
>            Reporter: Jimmy Xiang
>            Assignee: Jimmy Xiang
>             Fix For: 0.96.0
> ByteString.copyFrom makes a copy of a byte array in case it is changed in other thread.
> In most case, we don't need to worry about that.  We should avoid copying the bytes
> for performance issue.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message