OCI-12170
Cannot connect. timeout_type timeout of timeout for host_port. (CONNECTION_ID=connection_id)
- timeout_type: The timeout type (for example, TCP, OUTBOUND_CONNECT, RECEIVE).
- timeout: The timeout value.
- host_port: The host and port that cannot be connected to.
- connection_id: The connection ID.
Cause
The connection request cannot be completed within the allotted time interval. This may be a result of network or system delays, a firewall not allowing the connection, no network connectivity between client and server, or it may indicate a denial of service attack on the database server.
Action
The message indicates whether there is a transmission control protocol (TCP) connect timeout, an Outbound connect timeout, or a Receive timeout.
- Ensure that there is network connectivity between client and server, and that the destination is reachable.
- Ensure that there is no firewall in place between client and server. If there is, disable the firewall or configure it to allow the network traffic.
- If the error occurred in your application, then:
- Set CONNECT_TIMEOUT or TRANSPORT_CONNECT_TIMEOUT to a larger value if they are used in an Easy Connect or tnsnames.ora connection string. Or, set one or all of the parameters SQLNET.OUTBOUND_CONNECT_TIMEOUT, SQLNET.RECV_TIMEOUT, or TCP.CONNECT_TIMEOUT in the client sqlnet.ora file to a larger value. The connection string parameters have higher precedence than the corresponding sqlnet.ora parameters.
- In languages that support programmatic driver settings, adjust the settings equivalent to the previously mentioned timeouts. For example, with JDBC, adjust oracle.net.OUTBOUND_CONNECT_TIMEOUT, oracle.net.CONNECT_TIMEOUT, or use setLoginTimeout(). With Python python-oracledb, adjust the TcpConnectTimeout parameter when calling connect() or create_pool().
- If the error occurred in the database alert log file, then set one or both of the parameters, SQLNET.INBOUND_CONNECT_TIMEOUT or SQLNET.RECV_TIMEOUT, in the database sqlnet.ora file to a larger value.
- If a malicious client is suspected, then use the database alert log to identify the source address and then restrict access.
- Use the CONNECTION_ID value to track this connection attempt in trace files for further diagnosis.