Issue
General Client setup:
Properties p = new Properties(); p.put(Context.INITIAL_CONTEXT_FACTORY, "org.wildfly.naming.client.WildFlyInitialContextFactory"); p.put(Context.PROVIDER_URL, {see below}); p.put(Context.SECURITY_PRINCIPAL, USER); p.put(Context.SECURITY_CREDENTIALS, PWD); Context context = new InitialContext(p);
Standard server configuration:
<subsystem xmlns="urn:jboss:domain:ejb3:5.0"> ... <remote connector-ref="http-remoting-connector" thread-pool-name="default"> <channel-creation-options> <option name="READ_TIMEOUT" value="${prop.remoting-connector.read.timeout:20}" type="xnio"/> <option name="MAX_OUTBOUND_MESSAGES" value="1234" type="remoting"/> </channel-creation-options> </remote> ... </subsystem> ... <subsystem xmlns="urn:jboss:domain:remoting:4.0"> <connector name="remoting-connector" socket-binding="remoting" security-realm="ApplicationRealm"> <properties> <property name="SSL_ENABLED" value="false"/> </properties> </connector> <http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm"/> </subsystem>
invocation from remote client to server with:
- remote://localhost:4447
- remote+http://localhost:8080
Client side topology update always:
DEBUG (XNIO-1 task-2) [org.jboss.ejb.client.invocation] Received CLUSTER_TOPOLOGY(15) message from node master:app-cluster-node0, registering cluster ejb to node master:app-cluster-node0 DEBUG (XNIO-1 task-2) [org.jboss.ejb.client.invocation] Received CLUSTER_TOPOLOGY(15) message block from master:app-cluster-node0, registering block ::/0 to address 127.0.0.1:8080 DEBUG (XNIO-1 task-2) [org.jboss.ejb.client.invocation] Received CLUSTER_TOPOLOGY(15) message from node master:app-cluster-node0, registering cluster ejb to node master:app-cluster-node1 DEBUG (XNIO-1 task-2) [org.jboss.ejb.client.invocation] Received CLUSTER_TOPOLOGY(15) message block from master:app-cluster-node0, registering block ::/0 to address 127.0.0.1:8180 DEBUG (XNIO-1 task-1) [org.jboss.ejb.client.invocation] Received MODULE_AVAILABLE(8) message from node master:app-cluster-node0 for module playground-app/playground-app-web DEBUG (XNIO-1 task-1) [org.jboss.ejb.client.invocation] Received MODULE_AVAILABLE(8) message from node master:app-cluster-node0 for module playground-app/playground-app-ejb
Legacy server configuration:
<subsystem xmlns="urn:jboss:domain:ejb3:5.0"> ... <remote connector-ref="remoting-connector" thread-pool-name="default"> <channel-creation-options> <option name="READ_TIMEOUT" value="${prop.remoting-connector.read.timeout:20}" type="xnio"/> <option name="MAX_OUTBOUND_MESSAGES" value="1234" type="remoting"/> </channel-creation-options> </remote> ... </subsystem> ... <subsystem xmlns="urn:jboss:domain:remoting:4.0"> <connector name="remoting-connector" socket-binding="remoting" security-realm="ApplicationRealm"> <properties> <property name="SSL_ENABLED" value="false"/> </properties> </connector> <http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm"/> </subsystem>
invocation from remote client to server with:
- remote://localhost:4447
- remote+http://localhost:8080
Client side topology update always:
DEBUG (XNIO-1 task-2) [org.jboss.ejb.client.invocation] Received CLUSTER_TOPOLOGY(15) message from node master:app-cluster-node0, registering cluster ejb to node master:app-cluster-node0 DEBUG (XNIO-1 task-2) [org.jboss.ejb.client.invocation] Received CLUSTER_TOPOLOGY(15) message block from master:app-cluster-node0, registering block ::/0 to address 127.0.0.1:4447 DEBUG (XNIO-1 task-2) [org.jboss.ejb.client.invocation] Received CLUSTER_TOPOLOGY(15) message from node master:app-cluster-node0, registering cluster ejb to node master:app-cluster-node1 DEBUG (XNIO-1 task-2) [org.jboss.ejb.client.invocation] Received CLUSTER_TOPOLOGY(15) message block from master:app-cluster-node0, registering block ::/0 to address 127.0.0.1:4547 DEBUG (XNIO-1 task-1) [org.jboss.ejb.client.invocation] Received MODULE_AVAILABLE(8) message from node master:app-cluster-node0 for module playground-app/playground-app-web DEBUG (XNIO-1 task-1) [org.jboss.ejb.client.invocation] Received MODULE_AVAILABLE(8) message from node master:app-cluster-node0 for module playground-app/playground-app-ejb
Conclusion
Depending on what is configured as connector-ref in the remote of the ejb3 subsystem the CLUSTER_TOPOLOGY update is different. From a client perspective it would be expected that either the CLUSTER_TOPOLOGY update would only contain destinations that are applicable for the connector/protocol that has been used, or maybe even ALL available destinations, as the client could potentially run a mix of protocols between invocations...
- clones
-
WFLY-13132 Wrong/Incomplete CLUSTER_TOPOLOGY update sent to EJB client
- Closed
- is blocked by
-
JBEAP-19702 [GSS](7.3.z) WFLY-13132 - (ejb-client) Expose remoting connection associated with a ClusterTopologyListener
- Closed
- is cloned by
-
JBEAP-18773 [GSS](7.2.z) WFLY-13132 - Wrong/Incomplete CLUSTER_TOPOLOGY update sent to EJB client
- Closed
-
WFLY-13469 Decouple distributed SFSB cache from client mappings registry.
- Closed
- relates to
-
WINDUPRULE-735 ejb3 subsystem connector-ref attribute deprecated
- In Progress