On 10/2/12 6:02 PM, Dan Berindei wrote:
>> The members should be updated in viewAccepted(). When you connect a
>> channel, then viewAccepted() will be called *before* JChannel.connect()
>> returns, so the main thread won't have a chance of accessing members
>> before that.
>>
>>
> Ok, if viewAccepted() is guaranteed to be called before connect() returns
> then you're right, the latch is superfluous. We only need to call
> viewAccepted() ourselves if the channel was injected (which we already do).
>
> In this particular case, however, we don't get a viewAccepted() call or an
> exception from connect(), so I'm not sure it would have been better (easier
> to debug) without the latch.
This is due to https://issues.jboss.org/browse/JGRP-1522, which was
introduced in 3.2.0; when this is fixed, you will get a viewAccepted().
The workaround is to set NAKACK{2}.become_server_queue_size=0.