Oracle Connect from Wildfly

1,807 views
Skip to first unread message

Phillip Reeder

unread,
Oct 20, 2017, 2:06:11 PM10/20/17
to i2b2-ins...@googlegroups.com
When our DB server is restarted for weekly maintenance/OS updates,  wildlfly looses it’s connection and doesn’t seem to be able to recover until I restart it.   I tried adding the following but it didn’t seem to fix it:
<background-validation>true</background-validation>
                        <background-validation-millis>10000</background-validation-millis>

Has anyone else experienced this?   Has anyone found a configuration setting that will allow it to recover the connections?

Thanks,
Phillip

Here’s what was in my server.log this AM:

2017-10-20 05:53:45,724 WARN  [org.jboss.jca.core.connectionmanager.pool.strategy.OnePool] (Thread-85) IJ000604: Throwable while attempting to get a new connection: null: javax.resource.ResourceException: IJ031084: Unable to create connection

        at org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createLocalManagedConnection(LocalManagedConnectionFactory.java:343)

        at org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.getLocalManagedConnection(LocalManagedConnectionFactory.java:350)

        at org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(LocalManagedConnectionFactory.java:285)

        at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreConcurrentLinkedDequeManagedConnectionPool.createConnectionEventListener(SemaphoreConcurrentLinkedDequeManagedConnectionPool.java:1319)

        at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreConcurrentLinkedDequeManagedConnectionPool.getConnection(SemaphoreConcurrentLinkedDequeManagedConnectionPool.java:496)

        at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getSimpleConnection(AbstractPool.java:626)

        at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getConnection(AbstractPool.java:598)

        at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:590)

        at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:563)

        at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:747)

        at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:138)

        at org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:66)

        at edu.harvard.i2b2.crc.ejb.ProcessQueue.runQueues(ProcessQueue.java:134)

        at edu.harvard.i2b2.crc.ejb.ProcessQueue.run(ProcessQueue.java:71)

        at java.lang.Thread.run(Thread.java:745)

Caused by: java.sql.SQLRecoverableException: IO Error: The Network Adapter could not establish the connection

        at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:458)

        at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:546)

        at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:236)

        at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)

        at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521)

        at org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createLocalManagedConnection(LocalManagedConnectionFactory.java:319)

        ... 14 more

Caused by: oracle.net.ns.NetException: The Network Adapter could not establish the connection

        at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:392)

        at oracle.net.resolver.AddrResolution.resolveAndExecute(AddrResolution.java:434)

        at oracle.net.ns.NSProtocol.establishConnection(NSProtocol.java:687)

        at oracle.net.ns.NSProtocol.connect(NSProtocol.java:247)

        at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1102)

        at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:320)

        ... 19 more

Caused by: java.net.SocketTimeoutException: connect timed out

        at java.net.PlainSocketImpl.socketConnect(Native Method)

        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)

        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)

        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)

        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)

        at java.net.Socket.connect(Socket.java:589)

        at oracle.net.nt.TcpNTAdapter.connect(TcpNTAdapter.java:150)

        at oracle.net.nt.ConnOption.connect(ConnOption.java:133)

        at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:370)

        ... 24 more



2017-10-20 08:03:30,801 WARN  [org.jboss.jca.core.connectionmanager.pool.strategy.OnePool] (Thread-84) IJ000609: Attempt to return connection twice: org.jboss.jca.core.connectionmanager.liste

ner.NoTxConnectionListener@31dd8cc4[state=NORMAL managed connection=org.jboss.jca.adapters.jdbc.local.LocalManagedConnection@774b5e55 connection handles=0 lastReturned=1508504610801 lastValid

ated=1508504610801 lastCheckedOut=1508504610801 trackByTx=false pool=org.jboss.jca.core.connectionmanager.pool.strategy.OnePool@5bca7707 mcp=SemaphoreConcurrentLinkedQueueManagedConnectionPoo

l@37d3b094[pool=QueryToolDemoDS]]: java.lang.Throwable: STACKTRACE

        at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreConcurrentLinkedDequeManagedConnectionPool.returnConnection(SemaphoreConcurrentLinkedDequeManagedConnectionPool.java:717)

        at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreConcurrentLinkedDequeManagedConnectionPool.returnConnection(SemaphoreConcurrentLinkedDequeManagedConnectionPool.java:606)

        at org.jboss.jca.core.connectionmanager.pool.AbstractPool.returnConnection(AbstractPool.java:841)

        at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.returnManagedConnection(AbstractConnectionManager.java:691)

        at org.jboss.jca.core.connectionmanager.listener.NoTxConnectionListener.connectionClosed(NoTxConnectionListener.java:93)

        at org.jboss.jca.adapters.jdbc.BaseWrapperManagedConnection.returnHandle(BaseWrapperManagedConnection.java:617)

        at org.jboss.jca.adapters.jdbc.BaseWrapperManagedConnection.closeHandle(BaseWrapperManagedConnection.java:562)

        at org.jboss.jca.adapters.jdbc.WrappedConnection.returnConnection(WrappedConnection.java:298)

        at org.jboss.jca.adapters.jdbc.WrappedConnection.close(WrappedConnection.java:256)

        at edu.harvard.i2b2.crc.ejb.ProcessQueue.runQueues(ProcessQueue.java:287)

        at edu.harvard.i2b2.crc.ejb.ProcessQueue.run(ProcessQueue.java:71)

        at java.lang.Thread.run(Thread.java:745)




UT Southwestern

Medical Center

The future of medicine, today.

Mendis, Michael E.

unread,
Oct 20, 2017, 2:31:09 PM10/20/17
to i2b2-ins...@googlegroups.com

In your validation section, I would try first   <check-valid-connection-sql>select 1 from dual</check-valid-connection-sql>, but the others might help also.   This one will force a query before it send the connection to the i2b2 code.

 

<validation>

  <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleValidConnectionChecker"/>

  <check-valid-connection-sql>select 1 from dual</check-valid-connection-sql>

  <validate-on-match>true</validate-on-match>

  <background-validation>false</background-validation>

  <stale-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleValidConnectionChecker"/>

  <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleExceptionSorter"/>

  </validation>

--
You received this message because you are subscribed to the Google Groups "i2b2 Install Help" group.
To unsubscribe from this group and stop receiving emails from it, send an email to i2b2-install-h...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

The information in this e-mail is intended only for the person to whom it is
addressed. If you believe this e-mail was sent to you in error and the e-mail
contains patient information, please contact the Partners Compliance HelpLine at
http://www.partners.org/complianceline . If the e-mail was sent to you in error
but does not contain patient information, please contact the sender and properly
dispose of the e-mail.

Elena Villalon

unread,
Nov 1, 2017, 3:43:35 PM11/1/17
to i2b2 Install Help
We had the same problem and we solve it running standalone as
$sudo ./standalone.sh -b 0.0.0.0 -bmanagment 0.0.0.0 &
Please read 

Elena Villalon

unread,
Nov 1, 2017, 4:26:20 PM11/1/17
to i2b2 Install Help
Reply all
Reply to author
Forward
0 new messages