I am running into an issue with a child process called 'ISServerExec', which is spawned from the 'sqlservr.exec' process... The short story is that ISServerExec will not terminate after an SSIS job completes. The process will eventually consume all CPU causing the node to die causing a failover. I have tried adding code to kill these rogue ISServerExec processes, but I get messages that state that the processes cannot be terminated. Here are example statements for both command line and powershell steps generated by a job to kill the rogue processes:
Both commands return the message - ' ERROR: The process with PID 7000 (child process of PID 5894) could not be terminated.'
The process tree shows that PID 7000 (ISServerExec) is a child process from 'sqlservr.exe' -PID 5894 - Of course, I don't want to kill my SQL instance, just to kill ISServerExec...
Any ideas or thoughts to address with would be helpful...
Microsoft SQL Server 2012 - 11.0.5058.0 (X64)
May 14 2014 18:34:29
Copyright (c) Microsoft Corporation
Enterprise Edition (64-bit) on Windows NT 6.3 (Build 9600: ) (Hypervisor)
Yes 11.0.5058 is SP2, but it's without the latest hotfix (CU6, build 5592). I'm not saying that this issue is fixed in CU6 or CU1-CU5, however it's the first thing that I'd try. If the latest hotfix doesn't do the trick, you'll need to open a support case with Microsoft.
OK - thanks for this info... I did manage to find and cmd utility called 'pskill' that I incorporated in the code as a band-aid for now... I will look into the CU's mentioned. Thanks!