Location of the "bus.xml.vm.maxsize" setting for "OutOfVirtualMemoryError in NOM" error

Options

Hi,

I finally get the error we all get in life once: "OutOfVirtualMemoryError in NOM"; For me during CAP deployment (of the "Contract Center" solution in version 24.2)

I know this has to do with "bus.xml.vm.maxsize", but what is the order of picking up this setting as I can set it at 4 places (and I can't get the finger behind it to solve it):

  1. CMC-tool "Platform properties"
    → bus.xml.vm.maxsize=1024
  2. CAP service container JRE setting (greyed out, but updatable via LDAP bussoapprocessorconfiguration under <jreconfig>): → -Dbus.xml.vm.maxsize=1024
  3. $CORDYS_HOME/config/wcp.properties → bus.xml.vm.maxsize=1024
  4. CATALINA_OPTS for the TomEE service → -Dbus.xml.vm.maxsize=1024

Which of these is the "true" setting and should I remove/comment the others? :)

//Antal

Best Answer

  • syed_ahmed
    #2 Answer ✓
    Options

    You can disable the PSL content by adding below in file - components/cws/config

    development.publish.to.psl.enabled=false
    exclude.psl.from.package=true

Answers

  • Hi Antal,

    If a service container is running outside of Tomee, the service container configuration takes precedence over wcp.properties. In this case, both the service container configuration and wcp.properties can coexist. If a property is not defined in the service container configuration, it will default to the value in wcp.properties.

    If the service container is running inside the Tomee process, CATALINA_OPTS takes precedence over wcp.properties. In this scenario, the container-level settings have no effect. In your case, since the CAP service container is running inside Tomee, the service container settings have no effect and are greyed out. You should remove the CAP service container JRE setting done via LDAP update (point #2). To increase the size, change the value in CATALINA_OPTS.

    Points #1 and #3 are the same. CMC is a UI over wcp.properties, functioning as a global setting, so do not remove it.

  • @Mini Balakrishnan Great explanation! Thx. BUT…I increased them all the 2048, and restarted the VM with still the same issue. Every time I see the deployment failing on the pslContent.xml; watching this closely from WinZip directly in the CAP file for "OpenText Contract Center.cap" it tells me this file is 15Mb on PSL data. See also the other CAP files that are pretty large (in my opinion):

    For a try-out, I cleaned the pslContent.xml from all the <instance/> elements directly in the CAP file; Also for the other Contract Center CAP files, and now everything deploys blazing fast.

    Now my follow-up question(s):
    1. Why are those pslContent.xml files so large?
    2. Can I clean them like I described without causing any harm?
    3. Is it possible to deliver CAP files without PSL content?

    In my thinking process, PSL is only required to see the "graphical view" for a BPM instance in the PIM or have a role back in time when you use the BPM undo slider. The undo is only required in DEV and a great administrator (not DEV) has sufficient information already by looking only at the messagemap. So, from my point of view, PSL is not required for a CAP delivery to the next environment.

    Pull me back if I'm wrong here; Any answer is always highly appreciated! ;)

    //Antal

  • syed_ahmed
    #5 Answer ✓
    Options

    You can disable the PSL content by adding below in file - components/cws/config

    development.publish.to.psl.enabled=false
    exclude.psl.from.package=true