Increased memory usage during JBoss EAP buddy replication state transfer
Issue
- The following exception is found in the JBoss server log:
ERROR [org.jboss.cache.buddyreplication.BuddyManager] Caught exception handling view change org.jboss.cache.CacheException: java.lang.OutOfMemoryError: GC overhead limit exceeded
- Killing one node in a cluster results in "OutOfMemoryError: GC overhead limit exceeded" or "OutOfMemoryError: Java heap space" on the remaining nodes.
- We captured a heap dump and the bulk of the retention is in a single AsyncViewChangeHandlerThread, which holds it in a byte[] and/or an ExposedByteArrayOutputStream.
Environment
- Red Hat JBoss Enterprise Application Platform (EAP)
- 4.x, 5.x
- Clustered configuration with buddy replication
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.