You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Hiroshi Ikeda (JIRA)" <ji...@apache.org> on 2013/04/03 04:15:15 UTC

[jira] [Reopened] (HBASE-7434) Use generics appropriately in RPCEngine and reduce casts, with fixing a related bug of breaking thread-safety in HConnectionManager

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

Hiroshi Ikeda reopened HBASE-7434:
----------------------------------


It was only required to replace VersionedProtocol by IpcProtocol, but too late.
But the bug in HConnectionManager is still left alone.
                
> Use generics appropriately in RPCEngine and reduce casts, with fixing a related bug of breaking thread-safety in HConnectionManager
> -----------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-7434
>                 URL: https://issues.apache.org/jira/browse/HBASE-7434
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Hiroshi Ikeda
>            Assignee: Hiroshi Ikeda
>            Priority: Minor
>             Fix For: 0.95.0
>
>         Attachments: HBASE-7434.patch, HBASE-7434-V2.patch, HBASE-7434-V3.patch
>
>
> In RpcEngine,
> {code}
>   VersionedProtocol getProxy(Class<? extends VersionedProtocol> protocol, ...)
> {code}
> should be
> {code}
>   <T extends VersionedProtocol> T getProxy(Class<T> protocol, ...)
> {code}
> Also, while removing casts I encountered a bug of the method HConnectionManager.HConnectionImplementation.getProtocol() using broken logic just like double-checked locking for HashMap.

--
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