Question

java.net.SocketTimeoutException: Read timed out

  • 16 May 2023
  • 5 replies
  • 404 views

Userlevel 1
Badge +6

We are running 22R2 SU7 and get the following error in Connect (Application Messages) when receiving a large inbound message.

“ExecutionException from Sender thread 
Caused by: ifs.fnd.connect.senders.ConnectSender$TemporaryFailureException: Exception while sending data 
Caused by: java.net.SocketTimeoutException: Read timed out”

This happens when a large inbound JSON message gets posted to IFS Gateway and then routed to a routing address with either Projection or REST-API endpoint and executed by the Batch Processor. 
The error occur after 500 seconds so we suspect some timeout setting to be set to 500 seconds but we haven’t found any setting like that. We have default setting which for Request Timeouts and none of them are 500 seconds. Also the Work Timeout settings for Senders and Readers have a different (in our case larger) setting than 500 seconds.

Anyone have an idea what setting we need to change (increase) to solve the problem?


5 replies

Badge +3

Hi, was there a solution for this?

Userlevel 1
Badge +6

No not yet

Badge +1

 

Hi @ovjose 

Is there a solution for this issue? We encountered the exact same problem, and in our case, we also received the error after 500 seconds.

Userlevel 3
Badge +10

Hi @ovjose,

This error occurs after exceeding the IFS Connect query timeout parameter. issue occurs when reading larger file that takes time to read and process.

Solution:

it is possible to increase this parameter to the required value by defining parameter and value (connectQueryTimeout) in custom_values.yaml file. 

IFS connect parameters can be found in below technical documentation link.

https://docs.ifs.com/techdocs/22r2/070_remote_deploy/010_installing_fresh_system/200_installing_ifs_cloud/035_ifs_cloud_ifsinstaller/030_installation_parameters/#parameters_for_connect

Userlevel 1
Badge +6

@Shehan Lahiru Jayasinghe  No we haven’t found a solution to this more than to try to limit the size of the input data.

@ashen_malaka_ranasinghe Our setting for the paramater that you refer to is default, which is 30 seconds, which is not even close to the timeout that we encounter at 500 seconds.

So there must be some other parameter or timeout setting that controls this.

Reply