[jboss-jira] [JBoss JIRA] (WFCORE-3977) Changing multicast address in socket binding does not trigger server to set reload-required

Paul Ferraro (JIRA) issues at jboss.org
Thu Jul 26 19:07:00 EDT 2018


    [ https://issues.jboss.org/browse/WFCORE-3977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13611356#comment-13611356 ] 

Paul Ferraro commented on WFCORE-3977:
--------------------------------------

[~brian.stansberry] No, the SocketBinding will be UP when the TransportConfiguration is UP.  That's not the issue.  The issue is that our protocol configuration objects extract the address/port from the socket binding.  When sockets are eventually created, they are done so without any knowledge of the socket-binding from which the address/port was extracted.

So really, the fundamental issue is that our JGroups SocketFactory creates sockets via the "unnamed" variants of the SocketBindingManager.  Since SocketBinding.isBound() relies on being able to lookup a socket binding in the manager by name, it will always return false for sockets created by JGroups.

It makes me wonder how many subsystem are actually doing this correctly.  How many subsystems are actually creating sockets using the SocketBinding.createSocket(...) methods or using the named variants of the SocketBindingManager?

That said, JGroups SocketFactory _does_ use the concept of named sockets - however, its uses its own naming convention for the socket names.  Thus we need to construct the SocketFactory with a Map<String, String> of JGroups socket names -> socket-binding names.  That way, the corresponding SocketBindingManager methods are called with the correct socket-binding names.

So, in the end, this turns out to be a long standing JGroups subsystem bug. :)

> Changing multicast address in socket binding does not trigger server to set reload-required
> -------------------------------------------------------------------------------------------
>
>                 Key: WFCORE-3977
>                 URL: https://issues.jboss.org/browse/WFCORE-3977
>             Project: WildFly Core
>          Issue Type: Bug
>          Components: Management
>    Affects Versions: 6.0.0.Alpha3
>            Reporter: Richard Achmatowicz
>            Assignee: Jeff Mesnil
>
> Found this by accident when debugging a clustering test case.
> If I start a server with profile standalone-full-ha and then modify the multicast address of a clustering related socket-binding, in this case, jgroups-mping, the server is not put into state reload-required.
> This causes a lot of problems in the testsuite which depends on configuring servers after startup and then restarting if necessary to pull in the changes.



--
This message was sent by Atlassian JIRA
(v7.5.0#75005)


More information about the jboss-jira mailing list