Clarity: JGroups defect causes OutOfMemory (OOM) when network switches don't allow IGMP Snooping.

Document ID : KB000051434
Last Modified Date : 14/02/2018
Show Technical Document Details

Description:

Symptom:

A JGroups defect an causes OutOfMemory (OOM) condition when network switches don't allow IGMP Snooping.

The JGroups classes can end up consuming 75+% of the JVM heap.

The current version of Jgroups uses in Clarity 12.0.x is 2.4.1-SP3, which dates back to 2004 and is 32 revisions behind the current release (2.9.0GA). Most importantly, there is a memory leak involving NAKACK messages that can cause OutOfMemory errors that was resolved as of 2.5.0 of jgroups.

Steps to reproduce:

  1. Configure a Clarity cluster that has separates app servers between a Cisco switch. Ensure that switch does not have IGMP snooping.
  2. Allow Clarity to function normally for numerous days.

Expected Result: No out of memory error and JVM Heap should be low
Actual Result: JVM heap is high and user has OutofMemory issue

Solution:

Workaround:
None

Status/Resolution:
Resolved in Clarity 12.1.0

In Clarity 12.1.0 and above we have replaced jgroups-all.jar (2.4.1-SP3) with version 2.9.0GA and also replaced log4j.jar (1.2.8) with log4j.jar (1.2.14). In order to support those replaced jar files, we have also implemented some core Clarity code changes in 12.1.0.

Keywords: CLARITYKB, CLRT-55694, out of Memory, IGMP, clarity12resolved, clarity1210resolved.