Reply timeouts are necessary to prevent a client from waiting indefinitely for a reply from the server. When an error occurs that prevents the server from responding, the client receives an error after the timeout expires, and can retry the request or report the error. If a timeout is not set or is set too high, the application thread never regains control, and it may be necessary to terminate the entire application. When connection pooling is in use this can cause unusable connections to remain in the pool.
The optimal length of the reply timeouts depends on the type of application. Short queries and updates can use a relatively short timeout. Queries that require scanning large databases require longer timeouts, especially if they include SORT BY or ORDER BY clauses, which cause CA IDMS to retrieve the entire result set before returning the first row.
Note: Reply timeouts should be longer the further away from the server they are set, to allow the client to handle timeout errors more accurately and efficiently.
For ODBC or the JDBC type 2 driver, a reply timeout can be set globally within CAICCI/PC, for a specific CA IDMS CV in the Server servername definition, or at run time. This timeout is used by CAICCI/PC on Windows or the CCI service of ENF on z/OS (referred to as CAICCI/ENF). For JDBC type 3 and type 4 drivers, a reply timeout can be set globally using the IdmsConnectionOptions WaitTimeOut property, or at run time. This timeout is used as the default socket timeout. Reply timeouts can also be set for the JDBC Server and for the CASERVER and IDMSJSRV tasks.
|
Copyright © 2009 CA.
All rights reserved.
|
|