hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yu Li (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (HBASE-15922) Fix waitForMaximumCurrentTasks logic in AsyncProcess
Date Tue, 31 May 2016 13:13:12 GMT

     [ https://issues.apache.org/jira/browse/HBASE-15922?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Yu Li resolved HBASE-15922.
---------------------------
    Resolution: Duplicate

Find the issue duplicates HBASE-15811 after updating my local git repository, sorry for the
spam...

> Fix waitForMaximumCurrentTasks logic in AsyncProcess
> ----------------------------------------------------
>
>                 Key: HBASE-15922
>                 URL: https://issues.apache.org/jira/browse/HBASE-15922
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 2.0.0, 1.2.1, 1.1.4
>            Reporter: Yu Li
>            Assignee: Yu Li
>
> In current implementation of AsyncProcess#waitForMaximumCurrentTasks, we have below codes:
> {code}
> while ((currentInProgress = this.tasksInProgress.get()) > max) {
>       ...
>       try {
>         synchronized (this.tasksInProgress) {
>           if (tasksInProgress.get() != oldInProgress) break;
>           this.tasksInProgress.wait(100);
>         }
>       } catch (InterruptedException e) {
>         throw new InterruptedIOException("#" + id + ", interrupted." +
>             " currentNumberOfTask=" + currentInProgress);
>       }
> }
> {code}
> Which will cause end of while loop if there's any task done inside one loop making {{taskInProgress.get()}}
no longer equals to {{oldInProgress}}
> This is a regression issue caused by HBASE-11403 and only exists in branch-1/master branch,
we could easily see the difference comparing to latest 0.98 code.



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

Mime
View raw message