Huge pages problems prevent Oracle DB to start with WA Agent (Linux)
book
Article ID: 199399
calendar_today
Updated On:
Products
CA Workload Automation DE - Business Agents (dSeries)CA Workload Automation DEDSERIES- SERVERCA Workload Automation DE - System Agent (dSeries)CA Workload Automation DE - Scheduler (dSeries)
Issue/Introduction
Oracle databases may be configured to use 'huge' memory pages and they expect a certain number of them to be available. The AdoptOpenJDK JRE in WA agent appears to be reserving around 122 'huge' pages and grows over time. The Oracle databases would not start until the agent was stopped.
[email protected] ~ > service espt-root stop Shutting down CA ESP: Agent service is stopping... Agent service has been stopped [ OK ] [email protected] ~ > grep -i huge /proc/meminfo AnonHugePages: 0 kB HugePages_Total: 7210 HugePages_Free: 7210 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB
[email protected] ~ > service espt-root start Starting CA ESP: Agent service is starting... Agent service has been started [ OK ] [email protected] ~ > grep -i huge /proc/meminfo AnonHugePages: 0 kB HugePages_Total: 7210 HugePages_Free: 6509 HugePages_Rsvd: 5572 HugePages_Surp: 0 Hugepagesize: 2048 kB
The HugePages_Rsvd value changed dramatically when the agent was stopped.
Environment
Release : 12.0
Component : CA Workload Automation System Agent
Resolution
This can be addressed in one of three ways.
Option 1: Increase huge pages on the server to accommodate both the agent and Oracle database.
Option 2: Disable huge pages for the agent. To disable huge pages on the agent, one must append "-Xlp4k" to the oscomponent.jvm.x.options parameter in the agentparm.txt file for the agent. If his parameter is not defined, then simply define it as oscomponent.jvm.x.options=-Xlp4k
Note: If this parameter already exists, you should append the "-Xlp4k" setting to the value of this setting.
Option 3: Use HotSpot JVM of AdoptOpenJDK or any other vendor (e.g. Oracle). The agent is only supported with JRE 8, download JRE 8 build from AdoptOpenJDK or your provider. NOTE: If you elect to use Oracle JRE, then you will need to ensure that you are licensed to do so. Contact Oracle if you have any doubts on whether you are licensed to use Oracle JRE.