search cancel

High CPU usage by AexSvc.exe, replication failure

book

Article ID: 172726

calendar_today

Updated On:

Products

IT Management Suite

Issue/Introduction

Replication in a hierarchy fails.

Two symptoms:

1. Excessive CPU utilization on child:
"9/13/2018 12:59:55 PM","[SYSTEM]
 [app cpu: 99%, ram: 724.01 MB / 4%, uptime: 27.18:46:41.0028452]
 [ns cpu: 100%, ram: 4.70 GB / 29%, uptime: 18.16:17:43.3085937]
 [sql cpu: 1%, ram: 11.86 GB / 74.1% (Available physical memory is high), cpu history %: 1 / 4 / 5 / 6 / 3 / 1 / 2 / 1 / 1]
 [ns machine: *********** (V), ram: 16.00 GB, cpu: 8x2400Mhz, versions: 8.1.4528.0, assembly: 8.1.4528.0, hierarchy: child]
 [sql machine: 10.117.80.76 (V), ram: 16.00 GB, cpu: 8x8, affinity: 2 (AUTO), version: 11.0.5058.0 / Enterprise Edition (64-bit) / SP2, trip: 0]
 [pc physical: 24879, virtual: 9330, managed: 331, connectivity: 333, hierarchy: 1, ps: 2, ts: 1]
 [.NET 4.0.30319.42000]","PerformanceSensor","AeXSVC.exe","236","Informational"

2. Failure to initiate job or update replication status:
"9/13/2018 3:01:33 PM","Unable to schedule replication to the specified server (Server: **********.***********.com, Exception: Altiris.NS.Exceptions.AeXException: The local credential username itms could not connect to the local server http://**********.***********.com/Altiris/NS/

-------------------------

Restart of the services (iiserest, Altiris Service restart) helps to resolve problem temporarily.

Memory dump of the process utilizing high CPU shows a large number of replication threads in this exact state:

 

0:058> !clrstack
OS Thread Id: 0x1c20 (58)
        Child SP               IP Call Site
0000007daf48e4d8 00007ff9d8920bba [GCFrame: 0000007daf48e4d8]
0000007daf48e5c0 00007ff9d8920bba [GCFrame: 0000007daf48e5c0]
0000007daf48e5f8 00007ff9d8920bba [HelperMethodFrame: 0000007daf48e5f8] System.Threading.Monitor.Enter(System.Object)
0000007daf48e6f0 00007ff9cdf4c42d System.Net.ConnectionGroup.FindConnection(System.Net.HttpWebRequest, System.String, Boolean ByRef) [f:\dd\NDP\fx\src\net\System\Net\_ConnectionGroup.cs @ 478]
0000007daf48e780 00007ff9cdf4b763 System.Net.ServicePoint.SubmitRequest(System.Net.HttpWebRequest, System.String) [f:\dd\NDP\fx\src\net\System\Net\ServicePoint.cs @ 399]
0000007daf48e7e0 00007ff9cdf4ac19 System.Net.HttpWebRequest.SubmitRequest(System.Net.ServicePoint) [f:\dd\NDP\fx\src\net\System\Net\HttpWebRequest.cs @ 4161]
0000007daf48e840 00007ff9cdf28a2b System.Net.HttpWebRequest.GetRequestStream(System.Net.TransportContext ByRef) [f:\dd\NDP\fx\src\net\System\Net\HttpWebRequest.cs @ 1559]
0000007daf48e8b0 00007ff9cdf28735 System.Net.HttpWebRequest.GetRequestStream() [f:\dd\NDP\fx\src\net\System\Net\HttpWebRequest.cs @ 1487]
0000007daf48e8e0 00007ff9cd3c1e37 System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(System.String, System.Object[])
0000007daf48e960 00007ff971a56855 Altiris.NS.Replication.dll!Unknown
0000007daf48e9a0 00007ff971a42eeb Altiris.NS.Replication.dll!Unknown
0000007daf48eb20 00007ff971a42b31 Altiris.NS.Replication.dll!Unknown
0000007daf48ec90 00007ff971a40f69 Altiris.NS.Replication.dll!Unknown
0000007daf48ed70 00007ff971a3ca0f Altiris.NS.Replication.dll!Unknown
0000007daf48ee90 00007ff971a3c78b Altiris.NS.Replication.dll!Unknown
0000007daf48eed0 00007ff9cf1131d3 System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) [f:\dd\ndp\clr\src\BCL\system\threading\executioncontext.cs @ 954]
0000007daf48efa0 00007ff9cf113064 System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) [f:\dd\ndp\clr\src\BCL\system\threading\executioncontext.cs @ 902]
0000007daf48efd0 00007ff9cf113032 System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object) [f:\dd\ndp\clr\src\BCL\system\threading\executioncontext.cs @ 891]
0000007daf48f020 00007ff9cfabef9c System.Threading.ThreadHelper.ThreadStart(System.Object) [f:\dd\ndp\clr\src\BCL\system\threading\thread.cs @ 93]
0000007daf48f278 00007ff9d02a6bc3 [GCFrame: 0000007daf48f278]
0000007daf48f5c8 00007ff9d02a6bc3 [DebuggerU2MCatchHandlerFrame: 0000007daf48f5c8]

 

"9/13/2018 3:01:33 PM","Unable to schedule replication to the specified server (Server: **********.***********.com, Exception: Altiris.NS.Exceptions.AeXException: The local credential username itms could not connect to the local server http://**********.***********..com/Altiris/NS/

Cause

Known issue in .NET Framework in HttpWebRequest class.

Possibly related article from MS: https://support.microsoft.com/en-us/help/2497453/fix-application-may-stop-responding-after-several-http-requests-are-ab

Environment

ITMS 8.x

Resolution

Workaround to the issue is to increase number of connections in web.config file. Does not resolve problem, but allows running server for longer without restart.
 

  1. Open [C:\Program Files\Altiris\Notification Server\Web\Web.config]
  2. Add this section under </configSections>  NOTE:  Put the following UNDER "/configSections" and not inside of it.

    <system.net>
        <connectionManagement>
          <add address = "*" maxconnection = "200" />
        </connectionManagement>
      </system.net>

     
  3. Restart IIS.