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

Hudson commented on HBASE-11919:
--------------------------------

FAILURE: Integrated in HBase-TRUNK #5483 (See 
[https://builds.apache.org/job/HBase-TRUNK/5483/])
HBASE-11919 Remove the deprecated pre/postGet CP hook. (anoopsamjohn: rev 
0259d2734164343038a99caf3051b42e29fbfcc5)
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/RegionObserver.java
* 
hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/BaseRegionObserver.java


> Remove the deprecated pre/postGet CP hook
> -----------------------------------------
>
>                 Key: HBASE-11919
>                 URL: https://issues.apache.org/jira/browse/HBASE-11919
>             Project: HBase
>          Issue Type: Sub-task
>          Components: Coprocessors, regionserver
>            Reporter: Anoop Sam John
>            Assignee: Anoop Sam John
>             Fix For: 0.99.0, 2.0.0
>
>         Attachments: HBASE-11919.patch
>
>
> These hooks, dealing with List<KeyValue>, were deprecated since 0.96. We have 
> 0.98, one more major version after that. Suggest this can be removed from 
> 0.99 time.
> The impl in BaseRegionObserver is as below which can be very inefficient 
> especially when we read from a DBE files. There we return not KeyValue but a 
> new Cell impl (here by avoiding the need to copy value bytes) The 
> KeyValueUtil.ensureKeyValue can kill this nice optimization if we come across 
> this.
> {code}
> public void preGetOp(final ObserverContext<RegionCoprocessorEnvironment> e,
>       final Get get, final List<Cell> results) throws IOException {
>     // By default we are executing the deprecated preGet to support legacy 
> RegionObservers
>     // We may use the results coming in and we may return the results going 
> out.
>     List<KeyValue> kvs = new ArrayList<KeyValue>(results.size());
>     for (Cell c : results) {
>       kvs.add(KeyValueUtil.ensureKeyValue(c));
>     }
>     preGet(e, get, kvs);
>     results.clear();
>     results.addAll(kvs);
>   }
> {code}



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

Reply via email to