[ https://issues.apache.org/jira/browse/HBASE-27781?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17888015#comment-17888015 ]
Daniel Roudnitsky commented on HBASE-27781: ------------------------------------------- Hi [~bbeaudreault] is this something you think you'd be able to kindly review? > AssertionError in AsyncRequestFutureImpl when timing out during location > resolution > ----------------------------------------------------------------------------------- > > Key: HBASE-27781 > URL: https://issues.apache.org/jira/browse/HBASE-27781 > Project: HBase > Issue Type: Bug > Reporter: Bryan Beaudreault > Assignee: Daniel Roudnitsky > Priority: Major > Labels: pull-request-available > > In AsyncFutureRequestImpl we fail fast when operation timeout is exceeded > during location resolution > [here|https://github.com/apache/hbase/blob/branch-2.5/hbase-client/src/main/java/org/apache/hadoop/hbase/client/AsyncRequestFutureImpl.java#L460-L462]. > In that handling, we loop all actions and set them as failed. The problem > is, some number of actions may already finished when we get to this spot. So > the actionsInProgress would have been decremented for those already, and now > we're going to decrement by all actions. This causes an assertion error since > we go negative > [here|https://github.com/apache/hbase/blob/branch-2.5/hbase-client/src/main/java/org/apache/hadoop/hbase/client/AsyncRequestFutureImpl.java#L1197] > We still want to fail all actions, because none will be executed. But we need > special handling to avoid this case. Maybe don't bother decrementing the > actionsInProgress at all, instead set to 0. -- This message was sent by Atlassian Jira (v8.20.10#820010)