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

Lars Hofhansl commented on HBASE-9834:
--------------------------------------

Will all the public static methods in KeyValue still work (like all the compare 
functions)?
Will Put's/Mutatin's get(), get/setFamilyMap, etc, still work?
Clients that use these will see a different behavior if they use Puts/Deletes 
to create KeyValues for them. Not a likely use case, but possible.

Lastly, this does not strictly need to be part of HBase as such, right? A 
client could build up an object that serializes like a Put similar to how we 
have an object that serializes like a KeyValue here.

I'm all for having ClientKeyValue in HBase (so that memory conscious clients 
can use it), but the changes to Put and Delete have to be thought through 
carefully.


> Minimize byte[] copies for 'smart' clients
> ------------------------------------------
>
>                 Key: HBASE-9834
>                 URL: https://issues.apache.org/jira/browse/HBASE-9834
>             Project: HBase
>          Issue Type: Bug
>          Components: Client
>            Reporter: Jesse Yates
>            Assignee: Jesse Yates
>             Fix For: 0.94.13
>
>         Attachments: hbase-9834-0.94-v0.patch, hbase-9834-0.94-v1.patch
>
>
> 'Smart' clients (e.g. phoenix) that have in-depth knowledge of HBase often 
> bemoan the extra byte[] copies that must be done when building multiple 
> puts/deletes. We should provide a mechanism by which they can minimize these 
> copies, but still remain wire compatible. 



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to