xebialabs / overthere

Runs something "Over there"

Home Page:http://www.xebialabs.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

XLD WinRmRuntimeIOException with no error code

ehankamo opened this issue · comments

I am running into this exception when attempting to call an IO that takes more than 150 seconds to return. Now, when I run this against a Windows 2008 target, it runs fine and respects the 1800 operationtimeout limit that is set. In Windows 2012, it always times out after about 150 seconds. I looked at the target server's WinRM settings and they match the 2008 server. It is throwing the exception well under the MaxTimeoutMs setting on the 2012 WinRM client. Any idea what could be causing this mysterious exception?

To verify this was a timeout exception, i wrote a sleep script and it's consistently timing out after 150 seconds.

I found a potential and crude workaround where if I spawn off a "ping" command that runs in the background every second while the IO is running at the same time, it will keep the session alive and allow the IO to complete after some time.... but I really do not want to go there yet because I am having trouble killing the ping (runs forever or I have to set some finite number of times for it to ping).

Below is the output in the XLD log. When deploying to the Win 2012 server

`
**"start sleep"
Step failed
com.xebialabs.overthere.cifs.winrm.WinRmRuntimeIOException: Error when sending request to https://w438717.internal.foo.com:5986/wsman
Request:

<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
env:Header
<a:To xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing">https://w438717.internal.foo.com:5986/wsman</a:To>
<a:ReplyTo xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing">
<a:Address mustUnderstand="true">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address>
</a:ReplyTo>
<w:MaxEnvelopeSize xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" mustUnderstand="true">153600</w:MaxEnvelopeSize>
<a:MessageID xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing">uuid:C64CE6FC-431F-4AC0-836C-4F42C02BB4E8</a:MessageID>
<w:Locale xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" mustUnderstand="false" xml:lang="en-US"/>
<p:DataLocale xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wsman.xsd" mustUnderstand="false" xml:lang="en-US"/>
<w:OperationTimeout xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">PT1800.000S</w:OperationTimeout>
<a:Action xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" mustUnderstand="true">http://schemas.microsoft.com/wbem/wsman/1/windows/shell/Receive</a:Action>
<w:SelectorSet xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">
<w:Selector Name="ShellId">D5F858B0-BFEB-4F03-A0E4-16274B83536D</w:Selector>
</w:SelectorSet>
<w:ResourceURI xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" mustUnderstand="true">http://schemas.microsoft.com/wbem/wsman/1/windows/shell/cmd</w:ResourceURI>
</env:Header>
env:Body
<rsp:Receive xmlns:rsp="http://schemas.microsoft.com/wbem/wsman/1/windows/shell">
<rsp:DesiredStream CommandId="C01554EB-4402-4601-8B67-D244AB19C250">stdout stderr</rsp:DesiredStream>
</rsp:Receive>
</env:Body>
</env:Envelope>

Response:
[EMPTY]
at com.xebialabs.overthere.cifs.winrm.WinRmClient.doSendRequest(WinRmClient.java:435)**
`

commented

Try to set the connectionTimeoutMillis options-parameter to a higher value. This worked for me