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

Pascal Schumacher commented on LANG-1230:
-----------------------------------------

[~garydgregory] It would be nice if you could take a look at the pull request. 
I do not feel confident enough in this area to judge whether to merge it or 
not. Thanks!

> Remove unnecessary synchronization from registry lookup
> -------------------------------------------------------
>
>                 Key: LANG-1230
>                 URL: https://issues.apache.org/jira/browse/LANG-1230
>             Project: Commons Lang
>          Issue Type: Bug
>          Components: lang.builder.*
>    Affects Versions: 2.6
>            Reporter: Philippe Marschall
>
> We're running into contention issues in registry lookup in EqualsBuilder and 
> HashCodeBuilder. We believe the synchronization for the registry lookup is 
> unnecessary. ThreadLocals are thread safe, each thread gets own value. 
> Therefore no other thread can read or change the value of the current thread. 
> As a consequence access to ThreadLocals does not need to be synchronized.
> Since IDKey uses object identity and the identity hashCode it does use 
> neither EqualsBuilder nor HashCodeBuilder. This means that recursive calls to 
> register and unregister are not possible even if the registered objects use 
> EqualsBuilder or HashCodeBuilder. This also makes re-reading redundant.
> The issue was likely introduced in 2.5 by LANG-586 but 2.6 is the oldest 
> version we can select.



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

Reply via email to