[ 
https://issues.apache.org/jira/browse/HBASE-9144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13731567#comment-13731567
 ] 

Ted Yu commented on HBASE-9144:
-------------------------------

In HRegionServer.scan():
{code}
            // Remove lease while its being processed in server; protects 
against case
            // where processing of request takes > lease expiration time.
            lease = leases.removeLease(scannerName);
{code}
In Leases.run(), previously ConcurrentModificationException is ignored:
{code}
      try {
        lease = leaseQueue.poll(leaseCheckFrequency, TimeUnit.MILLISECONDS);
      } catch (InterruptedException e) {
        continue;
      } catch (ConcurrentModificationException e) {
        continue;
{code}
With patch, lease expiration notification may be delivered.
                
> Leases class has contention that's not needed
> ---------------------------------------------
>
>                 Key: HBASE-9144
>                 URL: https://issues.apache.org/jira/browse/HBASE-9144
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>    Affects Versions: 0.95.1
>            Reporter: Elliott Clark
>            Assignee: Elliott Clark
>            Priority: Critical
>             Fix For: 0.95.2
>
>         Attachments: HBASE-9144-0.patch, Sheet1.pdf
>
>
> The Leases class has lots of thread contention.  These locks are there to 
> ensure that all timeouts are met exactly.  This isn't needed in HBase.  

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to