Anoop Sam John created HBASE-11919:
--------------------------------------

             Summary: 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
            Reporter: Anoop Sam John
            Assignee: Anoop Sam John
             Fix For: 0.99.0, 2.0.0


These were deprecated from 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