[
https://issues.jboss.org/browse/JGRP-1887?page=com.atlassian.jira.plugin....
]
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)