8.6.1 Points where a timeout can be set

In the systems used for executing J2EE applications, you can set up timeouts at the points shown in the following figure. In the following figure, a Web browser is used as the client. The points will differ when you integrate with a Web server, and when you use an in-process HTTP server.

Figure 8-9 Points where a timeout can be set (for Web server integration)

[Figure]

If the client is an EJB client, replace the Web container with the EJB client. You can set the timeout ranging from the EJB client up to the database.

A redirector will not be applicable when you use an in-process HTTP server, and therefore, a timeout will not be set up at points 2 to 5, and 13. The following figure shows the points where you can set up timeouts to use in-process HTTP servers:

Figure 8-10 Points where timeouts can be set up (for in-process HTTP servers)

[Figure]

The timeout specified at each point has a specific use that is described in the table below:

Table 8-26 Purpose of timeout set at each point and default timeout settings

PointsType of timeoutPrimary usage
1Timeout set in the server for receiving the request from the client and sending the data to the client
For Web server integration
Detecting failures in the communication path or the Web server
For in-process HTTP servers
Detecting failures in the communication path, or access from an invalid client
2Connection timeout specified in the redirector in the processes for sending the requests to the Web containerDetecting failures in the communication path or the Web container
3Timeout for sending the request header and request body set in the redirector in the processes for sending the requests to the Web containerDetecting failures in the communication path or the Web container
4Timeout set in the redirector for receiving data from the Web containerDetecting failures in business processing (such as infinite loop and deadlock) of the J2EE server or the communication path
5Timeout set in the Web container for receiving data from the redirectorDetecting failures in the communication path or the Web server
6Timeout set in the Web application for the method execution timeDetecting failures in business processing (such as infinite loop and deadlock) of the J2EE server
7Timeout set in the EJB client for remotely invoking the Enterprise Bean (RMI-IIOP communication) and for invoking the JNDI Naming ServiceDetecting failures in business processing (such as infinite loop and deadlocks) of the J2EE server or the communication path
8#Timeout set up in the EJB client for invoking the Enterprise Bean from CTMDetecting failures in business processing (such as infinite loop and deadlocks) of the J2EE server or the communication path
9Timeout set in the EJB for the method execution timeDetecting failures in business processing (such as infinite loop and deadlock) of the J2EE server
10Timeout set in the EJB container for the database transactionDetecting failures in database server (such as server is down or a deadlock has occurred) or preventing the extended exclusive use of the resources
11Timeout set in DB Connector for acquiring a connectionDetecting errors when a connection is acquired (communication path errors or resource depletion)
12Database timeoutDetecting failures in database server (such as server is down or a deadlock has occurred) or preventing the extended exclusive use of the resources
13Timeout set in the Web container for sending a response to the redirectorDetecting failures in the communication path or the redirector
#
This point exists only when you are using CTM. For a configuration in which CTM is not used, the range of point 7 extends from the time of execution of remote invocation of the EJB from the Web container to the EJB container, until the dispatch of execution result from the EJB container to the Web container.

The basic guidelines for setting the above timeouts are as follows:

The points 1 to 13 can be divided into the following three categories depending on their location in the system:

For details about the settings of each point, see 8.6.8 Tuning parameters for setting the timeout.

Reference note
The default values for each point are as follows:
PointDefault value
1300 seconds
230 seconds
3100 seconds
43,600 seconds
5600 seconds
6Not set . No timeout.
7Not set. Continues to wait for response.
8A value same as point 7 is automatically inherited and set up when the Enterprise Bean is invoked.
9Not set. No timeout.
10180 seconds
11Differs according to the location of the timeout setup.
  • A timeout in establishing a physical connection: 8 seconds
  • A timeout in the request for connection during connection depletion: 30 seconds
  • A timeout in detecting a connection error: 5 seconds
12Differs according to the type of database and the location of timeout setting.
For HiRDB
Unlock waiting timeout: 180 seconds
Response timeout: 0 seconds (The HiRDB client continues to wait until there is a response from the HiRDB server.)
Request interval timeout: 600 seconds
For Oracle (when global transaction is used)
Unlock waiting timeout: 60 seconds
For SQL Server
Timeout in acquiring memory: -1 (For details about the operations when -1 is specified, see the SQL Server documentation)
Unlock waiting timeout: -1 (Continues to wait until the lock is released)
For XDM/RD E2
Unlock waiting timeout: None (timeout is not monitored)
CPU timeout during SQL execution: 10 seconds
SQL execution timeout: 0 seconds (timeout is not monitored)
Transaction timeout: 600 seconds
Response timeout: 0 seconds (The HiRDB client continues to wait until there is a response from the XDM/RD E2 server.)
13600 seconds