Author |
Message
|
petervh1 |
Posted: Wed Feb 16, 2022 6:11 am Post subject: Broker timeout when getting large file from AWS S3 |
|
|
Centurion
Joined: 19 Apr 2010 Posts: 135
|
Hi
IIB 10.0.0.14
I am trying to GET a large file from AWS S3 using a simple flow:
HTTPInput -> Compute -> HTTPRequest -> FileOutput
HTTPInput triggers the flow.
Compute node calculates the HTTP Authorization header for AWS and sets up the environment
HTTPRequest contacts the AWS S3 server (Request timeout on Basic tab set to 6000 secs)
From the trace I can see that the HTTPRequest node is receiving a reply through the Out terminal
Code: |
2022-02-16 15:54:02.558727 31288 UserTrace BIP4007I: Message propagated to 'out' terminal of node 'ReadS3.HTTP Request'.
2022-02-16 15:54:02.559255 31288 UserTrace BIP6061I: Node 'ReadS3.InitialiseWebService' used parser type ''BLOB'' to process a portion of the incoming message of length
'285082831' bytes beginning at offset '535'. The parser type was selected based on value ''NONE'' from the previous parser.
|
The problem is that after roughly 180 seconds the flow fails with the following message:
Code: |
<?xml version='1.0' encoding='UTF-8'?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server</faultcode>
<faultstring>A timeout occurred during processing</faultstring>
<faultactor>/xxxxxx/iib/triggerS3GET</faultactor>
<detail><text>Timeout. Broker BROKER2 did not provide a response within the specified time interval (180 seconds)</text></detail>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope> |
I can't find where the "specified time interval" of 180 seconds is set.
Thanks |
|
Back to top |
|
 |
abhi_thri |
Posted: Wed Feb 16, 2022 7:17 am Post subject: |
|
|
 Knight
Joined: 17 Jul 2017 Posts: 516 Location: UK
|
|
Back to top |
|
 |
gbaddeley |
Posted: Wed Feb 16, 2022 2:38 pm Post subject: |
|
|
 Jedi Knight
Joined: 25 Mar 2003 Posts: 2538 Location: Melbourne, Australia
|
Look at memory usage of the IS. Is it significantly increasing over time? Is there any swapping going on? _________________ Glenn |
|
Back to top |
|
 |
petervh1 |
Posted: Wed Feb 16, 2022 11:21 pm Post subject: |
|
|
Centurion
Joined: 19 Apr 2010 Posts: 135
|
Thanks I changed the HttpInput node's 'Maximum client wait time (sec)'.
The file is now being transferred successfully.
At the risk of breaking forum rules by introducing a new problem associated with the same flow, I am now seeing the following in the trace:
Code: |
2022-02-17 09:08:23.593282 31108 RecoverableException BIP2230E: Error detected whilst processing a message in node 'ReadS3.HTTP Reply'.
The integration node detected an error whilst processing a message in node 'ReadS3.HTTP Reply'. An exception has been thrown to cut short
the processing of the message.
See the following messages for details of the error.
2022-02-17 09:08:23.593286 31108 MessageException BIP2667E: An error occurred in ''MQ'' when writing message to queue ''SYSTEM.BROKER.WS.REPLY'' on queue manager ''QMBROK
ER2''. State = '-1' ''MQW102'' '2031' ''''
An error occurred when attempting to write a message to a queue. The reason code from the MQPUT is displayed as the 3rd (native error) st
ate.
|
My question is - why is a "too-large" message being written to SYSTEM.BROKER.WS.REPLY (RC 2031 in the test above), and can I prevent this from happening? |
|
Back to top |
|
 |
abhi_thri |
Posted: Thu Feb 17, 2022 1:15 am Post subject: |
|
|
 Knight
Joined: 17 Jul 2017 Posts: 516 Location: UK
|
petervh1 wrote: |
My question is - why is a "too-large" message being written to SYSTEM.BROKER.WS.REPLY (RC 2031 in the test above), and can I prevent this from happening? |
hi...looks like the flow is sending the large S3 data back to the original caller as Http reply via node 'ReadS3.HTTP Reply'. Guess your intention is to retrieve the S3 data and save it somewhere as a file and not to forward it in the http reply?...If so after saving the data using FileOutput node the output msg going to 'ReadS3.HTTP Reply' node need to be reset to something small or just 200 empty msg. |
|
Back to top |
|
 |
petervh1 |
Posted: Thu Feb 17, 2022 3:15 am Post subject: |
|
|
Centurion
Joined: 19 Apr 2010 Posts: 135
|
Thanks for the reply.
Problem sorted by setting a 200 before the HTTPReply node. |
|
Back to top |
|
 |
|