[jboss-jira] [JBoss JIRA] (JGRP-1887) Remove the synchronization on JChannel.class in JChannel.init
Bela Ban (JIRA)
issues at jboss.org
Mon Oct 6 06:14:12 EDT 2014
[ https://issues.jboss.org/browse/JGRP-1887?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13008737#comment-13008737 ]
Bela Ban commented on JGRP-1887:
--------------------------------
h4. Solution
* Remove the synchronization around {{JChannel.init()}
* In {{ProtocolStack.initProtocolStack()}}, move calling {{init()}} inside the lock scope if we have a shared transport. This way, the first channel creation will synchronize around creation of the shared transport, but subsequent creations won't. Also, subsequent creations will find a fully initialized shared transport.
> Remove the synchronization on JChannel.class in JChannel.init
> -------------------------------------------------------------
>
> Key: JGRP-1887
> URL: https://issues.jboss.org/browse/JGRP-1887
> Project: JGroups
> Issue Type: Task
> Affects Versions: 3.5.1
> Reporter: Dan Berindei
> Assignee: Bela Ban
> Fix For: 3.5.2, 3.6
>
>
> {{JChannel.init(ProtocolCtackConfigurator)}} has a {{synchronized(Channel.class)}} block that doesn't seem necessary, as JChannel instances do not normally share resources.
> This can cause serious delays in the Infinispan test suite, because we run many tests in parallel, each creating its own cluster. In some tests we also have a timeout for the test to create the JChannel (among other things), and these delays can lead to random failures (e.g. ISPN-4802).
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
More information about the jboss-jira
mailing list