hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lars Hofhansl (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HBASE-10225) Bug is calls to RegionObsever.postScannerFilterRow
Date Mon, 23 Dec 2013 04:55:54 GMT
Lars Hofhansl created HBASE-10225:
-------------------------------------

             Summary: Bug is calls to RegionObsever.postScannerFilterRow
                 Key: HBASE-10225
                 URL: https://issues.apache.org/jira/browse/HBASE-10225
             Project: HBase
          Issue Type: Bug
            Reporter: Lars Hofhansl


Just noticed that while looking at HBASE-10047.
In 0.94 (and presumably in trunk, will check later) we have this:
{code}
    protected boolean nextRow(byte [] currentRow, int offset, short length) throws IOException
{
     ...
      if (this.region.getCoprocessorHost() != null) {
        return this.region.getCoprocessorHost().postScannerFilterRow(this, currentRow);
      }
      return true;
    }
{code}
Notice how we only pass currentRow into the coprocessor, but not offset and length. Anything
using this hook currently is 100% broken. The hook was added in 0.94.5 (HBASE-5664), it never
worked correctly.

[~anoopsamjohn], you had added the hook. Do you still need it?

We can either remove it (I'd prefer that in the light of the performance issued observed in
HBASE-10047, we can leave the stub in BaseRegionObserver in 0.94, but document that it is
no-op), or we'd have to have change its signature to be able to pass offset and length as
well. 

Since nobody noticed nobody is using this hook currently, so both should be valid options.

(Making a new standalone copy of the rowkey just to pass into this method absolutely out of
the question for performance reasons).




--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Mime
View raw message