Cannot create PoolableConnectionFactory IBM

Hi guys,

Having faulted connection to existed IBM JBDC connection.

java.sql.SQLException: Cannot create PoolableConnectionFactory (The application requester cannot establish the connection. (Connection reset))
	at org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:656)
	at org.apache.commons.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:534)
	at org.apache.commons.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:734)
	at com.inductiveautomation.ignition.gateway.datasource.DatasourceImpl.getConnectionInternal(DatasourceImpl.java:300)
	at com.inductiveautomation.ignition.gateway.datasource.DatasourceImpl.runTest(DatasourceImpl.java:253)
	at com.inductiveautomation.ignition.gateway.datasource.DatasourceManagerImpl$FaultedDatasourceRetryer.lambda$newRetryRunnable$0(DatasourceManagerImpl.java:1097)
	at com.inductiveautomation.ignition.common.execution.impl.BasicExecutionEngine$TrackedTask.run(BasicExecutionEngine.java:593)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.base/java.util.concurrent.FutureTask.runAndReset(Unknown Source)
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.sql.SQLNonTransientConnectionException: The application requester cannot establish the connection. (Connection reset)
	at com.ibm.as400.access.JDError.createSQLExceptionSubClass(JDError.java:877)
	at com.ibm.as400.access.JDError.throwSQLException(JDError.java:605)
	at com.ibm.as400.access.JDError.throwSQLException(JDError.java:563)
	at com.ibm.as400.access.AS400JDBCConnectionImpl.setProperties(AS400JDBCConnectionImpl.java:3561)
	at com.ibm.as400.access.AS400JDBCDriver.prepareConnection(AS400JDBCDriver.java:1543)
	at com.ibm.as400.access.AS400JDBCDriver.prepareConnection(AS400JDBCDriver.java:1447)
	at com.ibm.as400.access.AS400JDBCDriver.initializeConnection(AS400JDBCDriver.java:1370)
	at com.ibm.as400.access.AS400JDBCDriver.connect(AS400JDBCDriver.java:517)
	at com.ibm.as400.access.AS400JDBCDriver.connect(AS400JDBCDriver.java:322)
	at com.ibm.as400.access.AS400JDBCDriver.connect(AS400JDBCDriver.java:295)
	at org.apache.commons.dbcp2.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:52)
	at org.apache.commons.dbcp2.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:357)
	at org.apache.commons.dbcp2.BasicDataSource.validateConnectionFactory(BasicDataSource.java:103)
	at org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:652)
	... 12 more
Caused by: java.net.SocketException: Connection reset
	at java.base/sun.nio.ch.NioSocketImpl.implRead(Unknown Source)
	at java.base/sun.nio.ch.NioSocketImpl.read(Unknown Source)
	at java.base/sun.nio.ch.NioSocketImpl$1.read(Unknown Source)
	at java.base/java.net.Socket$SocketInputStream.read(Unknown Source)
	at com.ibm.as400.access.DataStream.readFromStream(DataStream.java:54)
	at com.ibm.as400.access.AS400PortMapReplyDS.read(AS400PortMapReplyDS.java:45)
	at com.ibm.as400.access.PortMapper.getServerSocket(PortMapper.java:194)
	at com.ibm.as400.access.PortMapper.getServerSocket(PortMapper.java:131)
	at com.ibm.as400.access.AS400ImplRemote.signonConnect(AS400ImplRemote.java:3935)
	at com.ibm.as400.access.AS400ImplRemote.signon(AS400ImplRemote.java:3461)
	at com.ibm.as400.access.AS400.sendSignonRequest(AS400.java:4298)
	at com.ibm.as400.access.AS400.promptSignon(AS400.java:3858)
	at com.ibm.as400.access.AS400.signon(AS400.java:5469)
	at com.ibm.as400.access.AS400.connectService(AS400.java:1928)
	at com.ibm.as400.access.AS400.connectService(AS400.java:1885)
	at com.ibm.as400.access.AS400JDBCConnectionImpl.setProperties(AS400JDBCConnectionImpl.java:3550)
	... 22 more

8.1.48 (b2025042910)
Azul Systems, Inc. 17.0.14

I’ve updated to newest jbdc jt400 21.0.6. Appreciate all the inputs!

Looks like a configuration issue, or an external network issue.

Did this happen before or after the upgrade?

Do you have any other methods to test the connection to see if it is an Ignition issue or some external network issue?

1 Like

Looks like it happens with my 8.1 ignition server as well

My assumption is you have another Ignition server with the same issue, which indicates either the database is offline or there is a network problem.

….but if all this happened after you upgraded that driver then I would disable that new connection.

The sequence of events is important to determine the root cause.

2 Likes

Thanks Lane,

It was firewall issue blocking port 449. Weird thing is IT don't know how it could work before.