Hi All,
Openedge 11.4 - Linux, batch process.
Background: Batch process that looks for events and then pushes them
off to 3rd party, periodically hangs while sending. Client has
unreliable network and I found this KB
http://knowledgebase.progress.com/articles/Article/000034154
I implemented the above and immediately started getting "Error
receiving Web Service Response: Unexpected response status code: 905
(11773)". Only error-status:get-message(1) has detail, there is no
valid soap fault object. Note - I run the method with a NO-ERROR and
then check the error-status to check for any soap faults during the
call - The example didn't show this. Timeout was set to 60 seconds
(STOP-AFTER 60) and then 300 just in case I was doing something stupid
- to no effect.
I cannot for the life of me recreate this in a simple scenario, BUT
if I remove the suggestions (client connect time out and stop-after) -
the error is gone.
Does anyone have any suggestions, as I need to find a way to detect
the hung connection/method call :(
Hi Sjellin,
"status 905" indicates that there was a connection timeout. It is possible that the soap response is taking longer than your timeout value.
Also , notice that , for "-clientConnectTimeout <n> STOP-AFTER <k>" n is in milliseconds while k is in seconds.
You can try to use ETIME to find the timeout value to use as shown in the following example:.
DEFINE VAR et AS INT
DEFINE VAR n AS INT.
et = ETIME(TRUE)
RUN <method> IN <portName>.
et = ETIME(FALSE).
n = et * 5.
You can now use n as your "-clientConnectTimeout" value and n /1000 as your STOP-AFTER value.