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

Andrew Purtell commented on HBASE-11685:
----------------------------------------

The problem with only logging a warning is we have code that expects the count 
never to go below zero and this patch is not changing callers of 
isZeroReference. Though it suppose isZeroReference could be updated here to 
return true if <= 0

> Incr/decr on the reference count of HConnectionImplementation need be atomic 
> -----------------------------------------------------------------------------
>
>                 Key: HBASE-11685
>                 URL: https://issues.apache.org/jira/browse/HBASE-11685
>             Project: HBase
>          Issue Type: Bug
>          Components: Client
>            Reporter: Liu Shaohui
>            Assignee: Liu Shaohui
>            Priority: Minor
>             Fix For: 2.0.0
>
>         Attachments: HBASE-11685-trunk-v1.diff, HBASE-11685-trunk-v2.diff, 
> HBASE-11685-trunk-v3.diff, HBASE-11685-trunk-v4.diff, 
> HBASE-11685-trunk-v5.diff, HBASE-11685-trunk-v6.diff
>
>
> Currently, the incr/decr operation on the ref count of 
> HConnectionImplementation are not atomic. This may cause that the ref count 
> always be larger than 0 and  the connection never be closed.
> {code}
>     /**
>      * Increment this client's reference count.
>      */
>     void incCount() {
>       ++refCount;
>     }
>     /**
>      * Decrement this client's reference count.
>      */
>     void decCount() {
>       if (refCount > 0) {
>         --refCount;
>       }
>     }
> {code}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to