cancel
Showing results for 
Search instead for 
Did you mean: 

Error on load , java.net.SocketTimeOutException

Former Member
0 Kudos

Hi we tried to run a transaction in workbench, after some time we got this error

ERROR_ON_LOAD [java.net.SocketTimeoutExecption: Read time out] (this error in red)

I have tried to use ctrl + F5 to find find out where the error could come from but the Transaction Execution page brought the same message without details.

When I look at the Transaction manager, this transaction run successfully, and i got the expected result.

I ran the transaction per http too. And the return message was Transaction executed sucessfully

any ide?

Accepted Solutions (1)

Accepted Solutions (1)

jamie_cawley
Advisor
Advisor
0 Kudos

The workbench is set to time out after 5 minutes for any transaction ran within it. If you are interested in testing it, use runner...

Runner?Transaction=XXXXXXXXXXXXXXX&LogType=TRACEDEBUG

Regards,

Jamie

agentry_src
Active Contributor
0 Kudos

Please export your transaction and all statically called transactions in the transaction chain. How many transactions are called total? Add all the sizes up. What is the total?

When you first open the workbench and load your transaction, how long does it take to open up?

What is the transaction designed to do?

What is the logging level set to in the workbench?

Former Member
0 Kudos

Hi Jamie

I increased the connection time out in workbench (help- connection time out) and tested the transaction. The error disapear. However I could not 100 % verify since the transaction was developed by a co worker from me. I will ask him to test again and eventuallly closing this topic

Former Member
0 Kudos

>

> Please export your transaction and all statically called transactions in the transaction chain. How many transactions are called total? Add all the sizes up. What is the total?

>

> When you first open the workbench and load your transaction, how long does it take to open up?

>

> What is the transaction designed to do?

>

> What is the logging level set to in the workbench?

Hi Michael

1 Transaction, no transaction chain

fast ... max 4 secs

getting data from different databases, update another database.

Log type none, logging disable

Probably is what Jamie said.... transaction time out that configured in Workbench.

agentry_src
Active Contributor
0 Kudos

From the sounds of it, the transaction should not be timing out. But you have eliminated the most obvious causes in my mind (in the MII transaction at least).

Does the transaction do a query or queries which are then fed into a repeater which then has one or more queries execute using the repeater output?

If the answer is yes, then the design needs to be looked at again to see if the queries can be performed once instead of many times under the repeater. Each time a query is executed, it needs to provide connection information to the database (login, pwd, etc.). This overhead can add up pretty quickly. And this is a very common design/performance issue.

A couple of options to change the transaction architecture (there are probably/poentially several more).

1. Bring more data (not too much more) back with a single query and then repeat against the entire query result. Depending upon the amount of data and how the query is structured, this may not work very well.

2. Dynamically create the script for the query (probably do this under the repeater) and then apply the script to a single query to bring back then entire dataset needed.

Other things to look at if the above scenario is not applicable.

How complex are your SQL scripts?

If you are joining a bunch (3 or more is a good starting point) tables together or have subqueries or have a lot of fliter parameters, you should take a look at creating custom views, user functions, or stored procedures to push the complexity back to the relational database (which is better designed for such things) instead of MII.

How well designed are your tables and other objects in the relational database? Are the keys properly built and linked between tables? How were your indexes built? Do updates, deletes, etc. cascade properly (so you do not have to delete child objects when deleting a parent object).

Regards,

Mike

Former Member
0 Kudos

Michael

thanks, there are many sqls that we need to do in this transaction. Some of them as per your suggestion could be really done in RDMS than in MII. There are sqls under repeater and repeaters again uder those sql.

We will look into our design again.

regards

Answers (0)