Network Management
After upgrading to SolarWinds Platform 2024.4, the JobEngineSvc2.exe is generating high memory utilization in the poller server
A known issue in 2024.4 affects the polling engine (Main Polling Engine or Additional Polling Engine) where the JobEngineSvc2.exe process generates high memory utilization.
First published date
Last published date
Overview
After upgrading to SolarWinds Platform 2024.4, the JobEngineSvc2.exe process running on the poller engine (Main Poller or Additional Poller), gets high memory utilization.
It usually affects pollers that are monitoring many WMI nodes.
Product section
Cause
In SolarWinds Platform 2024.4, the Job engine executes jobs in Worker processes, which adds extra communication overhead.
By default in process workers are enabled for:
- SolarWinds.Orion.Core.Collector.plugin
- SolarWinds.Interfaces.Collector.plugin
There is some limitation in accessing critical sections when opening/closing lots of WMI connections, which results in a bottleneck, and jobs time out after 5 minutes.
Resolution
This issue has been addressed in SolarWinds Platform 2025.1. Please consider upgrading your environment. If you are unable to upgrade, use the workaround below.
Global
In the Job Engine config file located at C:\Program Files\SolarWinds\Orion\SWJobEngineSvc2.exe.config by default, add the global flag to disable In Process workers
inProcessWorkersEnabled="false"
E.g:
<jobEngineSettings_Full
maxWorkerProcess="20"
maxJobThreadsPerWorkerProcess="100"
maxJobThreadsPerWorkerProcess64="500"
jobExecutionRetention="01:00:00"
jobExecutionEnabled="false"
thresholdStreamByteThreshold="131072"
maxWorkerProcessLogFileAge="5.00:00:00"
maxHungJobs="1"
jobHungTimeout="00:00:30"
workerMonitoringPeriod="00:00:01.0000000"
jobErrorSuppressionInterval="01:00:00"
jobErrorSuppressionCleanupInterval="00:05:00"
enableSqliteSelfRepairLogic="true"
inProcessWorkersEnabled="false">
</jobEngineSettings_Full>
Per plugin
E.g.: To disable InProcessWorker for SolarWinds.Orion.Core.Collector
Remove <supportInProcessWorker>true</supportInProcessWorker> or adjust the value to false in C:\Program Files\SolarWinds\Orion\JobEnginePlugins\SolarWinds.Orion.Core.Collector.plugin file.
<?xml version="1.0" encoding="utf-8"?>
<plugin>
<name>SolarWinds.Orion.Core.Collector</name>
<assemblyName>SolarWinds.Orion.Core.Collector</assemblyName>
<rootPath>..</rootPath>
<supportInProcessWorker>false</supportInProcessWorker>
</plugin>