Windows Server 2012 R2 - Process is terminated due to StackOverflowException.

1,555 views
Skip to first unread message

Amir Luzon

unread,
Sep 29, 2015, 9:56:23 AM9/29/15
to Ansible Project
I am running a playbook on this machine an i am recieving the following error:

2015-09-29 15:35:46,339 p=13487 u=deploy_rn |  failed: [some_host] => (item=default) => {"failed": true, "item": "default", "parsed": false}
2015-09-29 15:35:46,341 p=13487 u=deploy_rn |  Process is terminated due to StackOverflowException.

i have searched about this issue and mainly found discussions regarding installing a hotfix https://support.microsoft.com/en-us/kb/2842230 on the machine.

in my case this fix is not relavent since the server is 2012 R2 and should have the hotfix already installed (either way i cannot install it on that machine, tried but received error that it is not compatible version)


I am not sure how to proceed i do not have any information besides that error. another annoying fact is that this sometimes happens, sometimes does not happen.

Any ideas?

Trond Hindenes

unread,
Sep 29, 2015, 11:36:30 AM9/29/15
to Ansible Project
That's weird. Any particular Ansible module you're seeing this on?

Amir Luzon

unread,
Sep 30, 2015, 2:44:50 AM9/30/15
to Ansible Project
We are running a custom module we wrote in powershell. this module basically runs about 5 parallel jobs which conduct SSDT work (sqlpackage.exe). it seems that the actual work done by each job is completed successfully yet still we receive the StackOverflowException.

J Hawkesworth

unread,
Sep 30, 2015, 10:48:45 AM9/30/15
to Ansible Project
I wonder if you are hitting one of the quota limits.

Nikolai Shornikov

unread,
Oct 6, 2015, 3:43:52 PM10/6/15
to Ansible Project
Really want to know if you've found a workaround. This exact executable on a patched 2008R2 machine is giving me the same error.

Trond Hindenes

unread,
Oct 6, 2015, 5:53:45 PM10/6/15
to Ansible Project
Nikolai, you're saying a sqlpackage job is giving you the same error?

Nikolai Shornikov

unread,
Oct 6, 2015, 5:59:19 PM10/6/15
to Ansible Project
Yeah. Wrapping sqlpackage.exe, I would get the above CLR error, and sometimes Out of Memory, and sometimes success. I'm specifically wrapping a 32-bit sqlpackage.exe, but I don't know which "plugin" settings below ultimately applies to the process, which I start via Start-Process.

I'm having a long run of successes presently, so I think this last thing I tried may have been the fix. 

I raised memory per shell up to a few gigs, both on the top level, and in each plugin:

cd WSMan:\localhost\Shell


Set-Item .\MaxConcurrentUsers 25

Set-Item .\MaxMemoryPerShellMB 4096


cd WSMan:\localhost\Plugin\microsoft.powershell\Quotas


Set-Item .\MaxConcurrentCommandsPerShell 4096

Set-Item .\MaxConcurrentUsers 25

Set-Item .\MaxMemoryPerShellMB 4096


cd WSMan:\localhost\Plugin\microsoft.powershell32\Quotas


Set-Item .\MaxConcurrentCommandsPerShell 4096

Set-Item .\MaxConcurrentUsers 25

Set-Item .\MaxMemoryPerShellMB 4096


Restart-Service winrm


-Nik

Trond Hindenes

unread,
Oct 6, 2015, 6:03:55 PM10/6/15
to Ansible Project
Nice. I doubt its the last one, since that seems to deal with the 32-bit think, but that's just an assumption. Amir, care to test out these values and see if they help?

Amir Luzon

unread,
Oct 7, 2015, 3:29:05 AM10/7/15
to Ansible Project
Hey guys,

I forgot to get back to this thread :)

anyways what did the thing for us was to increase the memory of powershell from 1024 to 2048 (i guess this depends on size of dacpacs, schemas loaded to memory, etc.)

i used this guide to do it step by step:

you should play around with the value till you find what works for you.

BTW, notice that in my case it was not the SQLPackage that was throwing the exception, it was powershell. i saw this from logs of sqlpackage that it completed it's work.

Amir Luzon

unread,
Oct 7, 2015, 3:30:36 AM10/7/15
to Ansible Project
PS, we dont use Start-Process but use '&', as in "& c:\....\sqlpackage.exe ...."
Reply all
Reply to author
Forward
0 new messages