Using the bind attribute for the Membership tag causes multicast to break. So something like <Membership className="org.apache.catalina.tribes.membership.McastService" bind="123.123.123.123" address="228.0.0.4" port="45564"/> causes a broken cluster. The reason for this is that in the case that the bind parameter is set the MulticastSocket is bound to the multicast interface. This is wrong as it causes the respective udp socket to be bound to this interface which stops multicast from working (tested on Linux and Solaris). It can be tried to bind the MulticastSocket to the multicast address itself. This does not work on all platforms. In case it does not work it can be ignored silently and the MulticastSocket only binds to the port. The attached patch fixes this.
Created attachment 20995 [details] Patch against 6.0.14
Created attachment 20999 [details] Formatted patch
OK, can we please add if(log.isInfoEnabled) before the log statements. I think also the after Exception the log level is warn and not info! User has create a wrong configuration ! :-) Peter
(In reply to comment #3) > OK, can we please add if(log.isInfoEnabled) before the log statements. > no need, this is not a frequently called method > I think also the after Exception the log level is warn and not info! User has create > a wrong configuration ! not at all, it is simple that on some OS' don't support binding to the multicast address, and the bind exception is expected. > > :-) > Peter
*** Bug 46935 has been marked as a duplicate of this bug. ***
Proposed for backport to TC 5.5.x.