IBM Support

JGroup Errors in Noapp Log - UDP Multicasting Not Working After Upgrade

Troubleshooting


Problem

Upgrading IBM Sterling B2B Integrator (SBI) to version 5.2.5 requires a JDK upgrade to IBM Java 7 SR 7 FP1 or higher. Once SBI was successfully upgraded to 525 and JDK 7 SR7 FP1 JGoups UDP multicasting (cluster communications) stopped working, and errors are thrown in the noapp and jetty log(s)

Symptom

JGroups UDP multicasting (used in cluster communications for load distribution) stops working, and the following errors are thrown in the noapp and jetty log(s)

Noapp:

[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE java.net.SocketException: An invalid argument was supplied.
[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE

[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE at java.net.TwoStacksPlainDatagramSocketImpl.socketNativeSetOption(Native Method)
[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE

[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE at java.net.TwoStacksPlainDatagramSocketImpl.socketSetOption(TwoStacksPlainDatagramSocketImpl.java:157)
[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE

[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE at java.net.AbstractPlainDatagramSocketImpl.setOption(AbstractPlainDatagramSocketImpl.java:322)
[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE

[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE at java.net.MulticastSocket.setInterface(MulticastSocket.java:479)
[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE

[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE at org.jgroups.protocols.UDP.createSockets(UDP.java:386)
[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE

[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE at org.jgroups.protocols.UDP.start(UDP.java:226)
[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE

[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE at org.jgroups.stack.ProtocolStack.startStack(ProtocolStack.java:953)
[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE

[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE at org.jgroups.JChannel.startStack(JChannel.java:871)
[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE

[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE at org.jgroups.JChannel._preConnect(JChannel.java:532)
[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE

[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE at org.jgroups.JChannel.connect(JChannel.java:284)
[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE

[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE at org.jgroups.JChannel.connect(JChannel.java:275)
[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE

[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE at com.sterlingcommerce.woodstock.workflow.queue.jgroups.NodeInfoNotificationBus.start(NodeInfoNotificationBus.java:77)
[2015-04-07 14:29:25.52] ALL 000000000000 GLOBAL_SCOPE

Jetty:

[2015-04-17 15:20:13.144] ALL 000000000000 GLOBAL_SCOPE 169766 [Thread-5] WARN org.jgroups.stack.Configurator - unable to find an address other than loopback for IP version IPv6

[2015-04-17 15:20:13.144] ALL 000000000000 GLOBAL_SCOPE 169766 [Thread-5] DEBUG org.jgroups.stack.Configurator - set property TCP.diagnostics_addr to default value /ff0e:0:0:0:0:0:75:75

[2015-04-17 15:20:13.237] ALL 000000000000 GLOBAL_SCOPE 169844 [Thread-5] WARN org.jgroups.protocols.pbcast.NAKACK - use_mcast_xmit should not be used because the transport (TCP) does not support IP multicasting; setting use_mcast_xmit to false

[2015-04-17 15:20:13.269] ALL 000000000000 GLOBAL_SCOPE 169891 [Thread-5] WARN org.jgroups.protocols.TCP - failed to join /ff0e:0:0:0:0:0:75:75:7500 on eth5: java.net.SocketException: error setting options

[2015-04-17 15:20:18.3] ALL 000000000000 GLOBAL_SCOPE 174922 [Thread-5] DEBUG org.jgroups.protocols.pbcast.NAKACK -


Cluster Test BPs fail, load distribution fails to occur.

Cause

It has been determined that the catalyst for this issue was disabling" IPv6 on the Windows Network Configuration by unchecking Internet Protocol Version 6 (TCP/IPv6) under Local Area Connection. This was an intended action as the intent was to disable IPv6.

This has been diagnosed as a JDK bug.

Environment

Microsoft Windows Server
JDK version less than Java 7 Release 0 SR 9

Diagnosing The Problem

Cluster Test BP fails

http://www-01.ibm.com/support/knowledgecenter/SS3JSW_5.2.0/com.ibm.help.sys_maint_cklist.doc/SI_SampleClusterTestBP.html?lang=en

The noted errors above are found in the noapp and jetty logs

Resolving The Problem

The JDK issue is resolved in Java 7 SR 9 (and higher). The JDK may be obtained on Fix Central

Other workarounds include, "enabling" IPv6 on the Network Configuration as well as switching to TCP for the JGroups Property String found in jgroups_cluster.properties

[{"Product":{"code":"SS3JSW","label":"IBM Sterling B2B Integrator"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"--","Platform":[{"code":"PF033","label":"Windows"}],"Version":"5.2.5","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Document Information

Modified date:
16 June 2018

UID

swg21959075