Support Article

Out-of-Memory error with VBD



When adding Visual Business Director (VBD) nodes into VBD Services LP, the nodes throws Out-of-memory (OOM) error in the logs.

Error Messages

2017-01-15 23:21:13,200 GMT*8*PEGA0028*8208616744*7730941132*bdc41075f470c42876a20e633c907601*NA*NA*NA*NA*NA*NA*NA*?*-1**2890*Service Thread*NA**NA*NA*NA*NA*NA*NA*NA*NA*NA*NA*NA*NA*Collection usage threshold exceeded for long-lived object memory pool (G1 Old Gen) INFO:MemoryPool=G1 Old Gen;PoolType=long-lived object;;TimeStamp=2017-01-15 23:21:13,200 GMT;Count=113;NotificationSequenceNo=99;Threshold=7730941132;Used=8208616744;Max=8589934592;Committed=8212447232;Init=8136949760;*
2017-01-15 23:20:51,894

Steps to Reproduce

  1. Add a node or more nodes into VBD Services landing page.
  2. Observe the memory going high.
  3. Add 6 nodes to share workload, but all nodes soon OOM.

Root Cause

On startup, VBD is caching the IH Fact table, along with associated Dimensions.

User has seen the heap grow until OOM occurs when the user has a lot of IH data.

A large portion of the data being kept in memory, are dictionaries containing the values of string-based columns in the IH Fact table.

For example, pySubjectID, as well as the user's custom reporting fields.

Since VBD does not support the querying of these fields,only support querying dimensions and measurements, one can save memory by not loading these fields.


Apply HFix-31877.

Published February 21, 2017 - Updated October 8, 2020

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.