Kodey Converse created HBASE-29433:
--------------------------------------

             Summary: Client coprocessor service fails 
                 Key: HBASE-29433
                 URL: https://issues.apache.org/jira/browse/HBASE-29433
             Project: HBase
          Issue Type: Bug
          Components: Client
            Reporter: Kodey Converse


While trying to roll out the async client, we noticed an edge case with the 
async client that will cause the {{coprocessorService()}} methods to fail under 
the following conditions
 * The call from the client must be on a range of rows/regions; calls that 
specify a row are unaffected
 * The client must have the affected region in it's meta cache at the time of 
the request
 * The affected region must have been merged or split, and must be out of sync 
with the client's meta cache

Under these circumstances, the coprocessor callback will report an error for 
the region
org.apache.hadoop.hbase.DoNotRetryIOException: Region name is changed, expected 
...3ee39f2dbd630db8c2c1e5055aeb3a2a., actual 
...d8603e8533ec8e37caf6f19fda9949c2.

This is problematic for two reasons
 * It is not backwards compatible with {{{}HTable{}}}, which will not throw an 
error in either the merge or split case, but will return potentially incorrect 
results for the split case
 * It make it difficult to use the feature, along with features built on top of 
it (such as {{{}AsyncAggregationClient{}}}, which is what we were using when we 
discovered it)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to