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

Jesse Yates commented on HBASE-9834:
------------------------------------

Yeah, those are reasonable concerns Lars. I was thinking...maybe?

For this to work even without that we just need to change how Put writes KVs 
(which is different than how Delete does it  - KV#write - and instead has the 
same logic copied over (legacy?)). 

Alternative would be to fix up the last couple methods in ClientKeyValue (e.g. 
split, getBuffer) to match KeyValue and drop this is implementation into 
KeyValue instead. Could play some tricks to make it about as fast (caching the 
full buffer when we request it, etc) Really, this seems better for how KV 
should work anyways.... maybe a bit overkill :) 

Thoughts?

> 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.14
>
>         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