It looks like your Oracle driver is barfing and refusing to create
more connections. You might wanna put a limit on the pool or tinker
with your oracle settings
On 8/18/06, Scott Eccles <scott@proact.net> wrote:
>
> 2 x Windows 2003 Servers SP1
>
> 1st Server hosts Oracle 9.2
> 2nd Server ActiveMQ 4.0.1 & j2sdk1.4.2_06
>
> Broker uses following datasource config:
>
> <!-- The Datasource that will be used by the Broker -->
> <bean id="oracle-ds" class="net.proact.scm.sql.ProactPoolingDataSource">
> <property name="url" value="jdbc:oracle:oci:@RCJLIVE"/>
> <property name="userName" value="RCJLIVE"/>
> <property name="password" value="RCJLIVE"/>
> </bean>
>
> Receive the exception below after processing over 5000 messages. Using
> queues.
>
> INFO Service - Async error occurred:
> java.lang.RuntimeException: java.io.IOException: Failed to broker message:
> ID:devdb1-2913-1151740871468-1:0:2:1:975 in container: java.io.IOException:
> ORA-12542: TNS:address already i
>
> java.lang.RuntimeException: java.io.IOException: Failed to broker message:
> ID:devdb1-2913-1151740871468-1:0:2:1:975 in container: java.io.IOException:
> ORA-12542: TNS:address already in use
>
> at
> org.apache.activemq.broker.region.IndirectMessageReference.incrementReferenceCount(IndirectMessageReference.java:115)
> at
> org.apache.activemq.broker.region.QueueSubscription.dispatch(QueueSubscription.java:149)
> at
> org.apache.activemq.broker.region.PrefetchSubscription.dispatchMatched(PrefetchSubscription.java:279)
> at
> org.apache.activemq.broker.region.PrefetchSubscription.acknowledge(PrefetchSubscription.java:127)
> at
> org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:233)
> at
> org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:362)
> at
> org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:176)
> at
> org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:65)
> at
> org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:65)
> at
> org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:78)
> at
> org.apache.activemq.broker.AbstractConnection.processMessageAck(AbstractConnection.java:356)
> at org.apache.activemq.command.MessageAck.visit(MessageAck.java:178)
> at
> org.apache.activemq.broker.AbstractConnection.service(AbstractConnection.java:201)
> at
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:62)
> at
> org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:97)
> at
> org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:63)
> at
> org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:114)
> at
> org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:122)
> at
> org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:87)
> at
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:143)
> at java.lang.Thread.run(Thread.java:534)
> Caused by: java.io.IOException: Failed to broker message:
> ID:devdb1-2913-1151740871468-1:0:2:1:975 in container: java.io.IOException:
> ORA-12542: TNS:address already in use
>
> at
> org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:30)
> at
> org.apache.activemq.store.jdbc.JDBCMessageStore.getMessage(JDBCMessageStore.java:106)
> at
> org.apache.activemq.store.ProxyMessageStore.getMessage(ProxyMessageStore.java:47)
> at
> org.apache.activemq.broker.region.Queue.loadMessage(Queue.java:323)
> at
> org.apache.activemq.broker.region.IndirectMessageReference.incrementReferenceCount(IndirectMessageReference.java:108)
> ... 20 more
> Caused by: java.io.IOException: ORA-12542: TNS:address already in use
>
> at
> org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:42)
> at
> org.apache.activemq.store.jdbc.TransactionContext.getConnection(TransactionContext.java:58)
> at
> org.apache.activemq.store.jdbc.adapter.DefaultJDBCAdapter.doGetMessage(DefaultJDBCAdapter.java:260)
> at
> org.apache.activemq.store.jdbc.JDBCMessageStore.getMessage(JDBCMessageStore.java:99)
> ... 23 more
> Caused by: java.sql.SQLException: ORA-12542: TNS:address already in use
>
> at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
> at oracle.jdbc.oci8.OCIDBAccess.check_error(OCIDBAccess.java:2321)
> at oracle.jdbc.oci8.OCIDBAccess.logon(OCIDBAccess.java:477)
> at
> oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:346)
> at
> oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:468)
> at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:314)
> at java.sql.DriverManager.getConnection(DriverManager.java:512)
> at java.sql.DriverManager.getConnection(DriverManager.java:171)
> at
> org.apache.commons.dbcp.DriverManagerConnectionFactory.createConnection(DriverManagerConnectionFactory.java:48)
> at
> org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:290)
> at
> org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:771)
> at
> org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:95)
> at
> org.apache.activemq.store.jdbc.TransactionContext.getConnection(TransactionContext.java:54)
> ... 25 more
> INFO Service - Async error occurred:
> java.lang.NullPointerException
> java.lang.NullPointerException
> at
> org.apache.activemq.store.jdbc.adapter.DefaultJDBCAdapter.doRemoveMessage(DefaultJDBCAdapter.java:316)
> at
> org.apache.activemq.store.jdbc.JDBCMessageStore.removeMessage(JDBCMessageStore.java:138)
> at
> org.apache.activemq.store.memory.MemoryTransactionStore.removeMessage(MemoryTransactionStore.java:246)
> at
> org.apache.activemq.store.memory.MemoryTransactionStore.access$000(MemoryTransactionStore.java:45)
> at
> org.apache.activemq.store.memory.MemoryTransactionStore$1.removeMessage(MemoryTransactionStore.java:120)
> at
> org.apache.activemq.broker.region.Queue.acknowledge(Queue.java:318)
> at
> org.apache.activemq.broker.region.QueueSubscription.acknowledge(QueueSubscription.java:49)
> at
> org.apache.activemq.broker.region.PrefetchSubscription.acknowledge(PrefetchSubscription.java:121)
> at
> org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:233)
> at
> org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:362)
> at
> org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:176)
> at
> org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:65)
> at
> org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:65)
> at
> org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:78)
> at
> org.apache.activemq.broker.AbstractConnection.processMessageAck(AbstractConnection.java:356)
> at org.apache.activemq.command.MessageAck.visit(MessageAck.java:178)
> at
> org.apache.activemq.broker.AbstractConnection.service(AbstractConnection.java:201)
> at
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:62)
> --
> View this message in context: http://www.nabble.com/ORA-12542%3A-TNS%3Aaddress-already-in-use-tf2127295.html#a5869936
> Sent from the ActiveMQ - User forum at Nabble.com.
>
>
--
James
-------
http://radio.weblogs.com/0112098/
|