Troubleshooting
Problem
This technote describes a solution for IBM WebSphere Portal SystemOut.log entry, "J2CA0056I com.ibm.websphere.ce.cm.StaleConnectionException Connection reset" error.
Symptom
The WebSphere Portal SystemOut.log shows:
[datetime] 0000008b ConnectionEve A J2CA0056I: The Connection Manager received a fatal connection error from the Resource Adapter for resource jdbc/customdb. The exception which was received is com.ibm.websphere.ce.cm.StaleConnectionException: [ibm][db2][jcc][t4][2030][11211] A communication error has been detected. Communication protocol being used: TCP/IP.
Communication API being used: SOCKETS. Location where the error was detected: T4Agent.sendRequest().
Communication function detecting the error: OutputStream.flush(). Protocol specific error codes Connection reset, *, 0. Message: Connection reset:com.ibm.db2.jcc.c.DisconnectException: [ibm][db2][jcc][t4][2030][11211] A communication error has been detected. Communication protocol being used: TCP/IP.
Communication API being used: SOCKETS. Location where the error was detected: T4Agent.sendRequest().
Communication function detecting the error: OutputStream.flush(). Protocol specific error codes Connection reset, *, 0. Message: Connection reset:java.net.SocketException: Connection reset
[datetime] 0000008b DataStoreCont E com.ibm.wps.datastore.impl.DataStoreContext handleException EJPDB0001E: Error occurred during database access. Last SQL statement is [SELECT OID, CREATED, MODIFIED, RES_TYPE, EXTERNAL_OID, EXTERNAL_UID, PARENT_OID, OWNER_TYPE, OWNER_UID, INHERITANCE, PROPAGATION, EXTERNALIZED, IS_PRIVATE, NAME, IS_LEAF FROM custom.PROT_RES WHERE (OWNER_UID = ? AND RES_TYPE = ?)].
com.ibm.wps.datastore.domains.DomainUnavailableException: EJPDB0101E: Database domain [Domain: cust] is currently unavailable.
- at com.ibm.wps.datastore.impl.DataStoreContext.handleException(DataStoreContext.java:315)
Caused by: com.ibm.websphere.ce.cm.StaleConnectionException: [ibm][db2][jcc][t4][2030][11211] A communication error has been detected. Communication protocol being used: TCP/IP.
Communication API being used: SOCKETS. Location where the error was detected: T4Agent.sendRequest().
Communication function detecting the error: OutputStream.flush(). Protocol specific error codes Connection reset, *, 0. Message: Connection reset
- at sun.reflect.GeneratedConstructorAccessor68.newInstance(Unknown Source)
Caused by: com.ibm.db2.jcc.c.DisconnectException: [ibm][db2][jcc][t4][2030][11211] A communication error has been detected. Communication protocol being used: TCP/IP.
Communication API being used: SOCKETS. Location where the error was detected: T4Agent.sendRequest().
Communication function detecting the error: OutputStream.flush(). Protocol specific error codes Connection reset, *, 0. Message: Connection reset
- at com.ibm.db2.jcc.b.a.a(a.java:358)
---- Begin backtrace for Nested Throwables
com.ibm.db2.jcc.c.DisconnectException: [ibm][db2][jcc][t4][2030][11211] A communication error has been detected. Communication protocol being used: TCP/IP.
Communication API being used: SOCKETS. Location where the error was detected: T4Agent.sendRequest().
Communication function detecting the error: OutputStream.flush(). Protocol specific error codes Connection reset, *, 0. Message: Connection reset
- at com.ibm.db2.jcc.b.a.a(a.java:358)
Caused by: java.net.SocketException: Connection reset
- at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109)
Resolving The Problem
For the correct Data Source connection pool setting, refer to Document #1247168, "Troubleshooting: Connection Pooling (J2C) problems in WebSphere Application Server" --> "Troubleshooting stale connection problems" section --> Steps 6 - 8 (copied below):
6. Purge Policy: EntirePool
7. Minimum Connections: 0
8. Set the Unused Timeout to half the value of the timeout setting on the firewall.
Related Information
Was this topic helpful?
Document Information
Modified date:
03 December 2021
UID
swg21372849