[ http://jira.activemq.org/jira//browse/AMQ-309?page=all ]
Den Orlov reopened AMQ-309:
---------------------------
Regression: [Regression]
We still have the problem in 3.2.2:
28.04.2006 15:16:56 org.activemq.ActiveMQConnection statusChanged
INFO: channel status changed: Channel: TcpTransportChannel:
Socket[addr=/10.1.2.55,port=61616,localport=1725] has connected
Exception in thread "main" javax.jms.JMSException: Failed to lookup
subscription for info: CONSUMER_INFO: id = 4 ConsumerInfo{ browser = false,
destination = TEST.FOO, consumerIdentifier = 'ClientID-1146223014828.1.1' ,
clientId = 'ClientID-1146223014828' , sessionId = '1' , consumerName =
'SubscriberName-1146223014828' , selector = '' , startTime = 1146223017610,
started = true, consumerNo = 1, noLocal = false, prefetchNumber = 100,
consumerKey = '[ClientID-1146223014828:SubscriberName-1146223014828]' }.
Reason: SQL Exception: A lock could not be obtained within the time requested
at
org.activemq.util.JMSExceptionHelper.newJMSException(JMSExceptionHelper.java:49)
at
org.activemq.store.jdbc.JDBCTopicMessageStore.setSubscriberEntry(JDBCTopicMessageStore.java:101)
at
org.activemq.store.journal.JournalTopicMessageStore.setSubscriberEntry(JournalTopicMessageStore.java:66)
at
org.activemq.store.cache.CacheTopicMessageStore.setSubscriberEntry(CacheTopicMessageStore.java:59)
at
org.activemq.service.impl.DurableTopicMessageContainer.storeSubscription(DurableTopicMessageContainer.java:99)
at
org.activemq.service.impl.DurableTopicMessageContainerManager.doAddMessageConsumer(DurableTopicMessageContainerManager.java:297)
at
org.activemq.service.impl.DurableTopicMessageContainerManager.addMessageConsumer(DurableTopicMessageContainerManager.java:98)
at
org.activemq.broker.impl.DefaultBroker.addMessageConsumer(DefaultBroker.java:267)
at
org.activemq.broker.impl.BrokerContainerImpl.registerMessageConsumer(BrokerContainerImpl.java:355)
at
org.activemq.broker.impl.BrokerConnectorImpl.registerMessageConsumer(BrokerConnectorImpl.java:180)
at
org.activemq.broker.impl.BrokerClientImpl.consumeConsumerInfo(BrokerClientImpl.java:506)
at
org.activemq.broker.impl.BrokerClientImpl.consume(BrokerClientImpl.java:358)
at
org.activemq.transport.TransportChannelSupport.doConsumePacket(TransportChannelSupport.java:374)
at
org.activemq.transport.TransportChannelSupport.doConsumePacket(TransportChannelSupport.java:368)
at
org.activemq.transport.tcp.TcpTransportChannel.run(TcpTransportChannel.java:315)
at java.lang.Thread.run(Thread.java:534)
Caused by: SQL Exception: A lock could not be obtained within the time requested
at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Util.java)
at
org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(TransactionResourceImpl.java)
at
org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(TransactionResourceImpl.java)
at
org.apache.derby.impl.jdbc.EmbedConnection.handleException(EmbedConnection.java)
at
org.apache.derby.impl.jdbc.ConnectionChild.handleException(ConnectionChild.java)
at
org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(EmbedStatement.java)
at
org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(EmbedPreparedStatement.java)
at
org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeQuery(EmbedPreparedStatement.java)
at
org.activemq.store.jdbc.adapter.DefaultJDBCAdapter.doSetSubscriberEntry(DefaultJDBCAdapter.java:532)
at
org.activemq.store.jdbc.JDBCTopicMessageStore.setSubscriberEntry(JDBCTopicMessageStore.java:98)
... 14 more
> Old message cleanup failed due to: SQL Exception: A lock could not be
> obtained within the time requested ERROR 40XL1: A lock could not be obtained
> within the time requested
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: AMQ-309
> URL: http://jira.activemq.org/jira//browse/AMQ-309
> Project: ActiveMQ
> Type: Bug
> Components: Message Store
> Environment: WIN2000 2CPU
> Reporter: Glen Klyuzner
> Assignee: Hiram Chirino
> Fix For: 4.0 M4
> Attachments: activemq.log, threaddump.txt.gz
>
>
> On Server side throws Exception listed below
> No Exception for Client side, but slowdown message processing
> CPU util on Server < 50%
> 2005-07-18 17:36:41,530 [ocalport=61616]] INFO BrokerContainerImpl
> - Adding new client: ID:ny-cap-33-1918-1121722600107-19:0 on transport:
> TcpTransportChannel: Socket[addr=/170.198.121.186,port=1920,localport=61616]
> 2005-07-18 17:39:03,518 [Cleanup Timmer ] WARN JDBCPersistenceAdapter
> - Old message cleanup failed due to: SQL Exception: A lock could not be
> obtained within the time requested
> ERROR 40XL1: A lock could not be obtained within the time requested
> at
> org.apache.derby.iapi.error.StandardException.newException(StandardException.java)
> at org.apache.derby.impl.services.locks.LockSet.lockObject(LockSet.java)
> at
> org.apache.derby.impl.services.locks.SinglePool.lockAnObject(SinglePool.java)
> at
> org.apache.derby.impl.services.locks.SinglePool.lockObject(SinglePool.java)
> at
> org.apache.derby.impl.store.raw.xact.RowLocking2.lockRecordForRead(RowLocking2.java)
> at
> org.apache.derby.impl.store.access.conglomerate.OpenConglomerate.lockPositionForRead(OpenConglomerate.java)
> at
> org.apache.derby.impl.store.access.conglomerate.GenericScanController.fetchRows(GenericScanController.java)
> at
> org.apache.derby.impl.store.access.heap.HeapScan.fetchNext(HeapScan.java)
> at
> org.apache.derby.impl.sql.execute.TableScanResultSet.getNextRowCore(TableScanResultSet.java)
> at
> org.apache.derby.impl.sql.execute.ProjectRestrictResultSet.getNextRowCore(ProjectRestrictResultSet.java)
> at
> org.apache.derby.impl.sql.execute.DMLWriteResultSet.getNextRowCore(DMLWriteResultSet.java)
> at
> org.apache.derby.impl.sql.execute.DeleteResultSet.collectAffectedRows(DeleteResultSet.java)
> at
> org.apache.derby.impl.sql.execute.DeleteResultSet.open(DeleteResultSet.java)
> at
> org.apache.derby.impl.sql.GenericPreparedStatement.execute(GenericPreparedStatement.java)
> at
> org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(EmbedStatement.java)
> at
> org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(EmbedPreparedStatement.java)
> at
> org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(EmbedPreparedStatement.java)
> at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:94)
> at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:94)
> at
> org.activemq.store.jdbc.adapter.DefaultJDBCAdapter.doDeleteOldMessages(DefaultJDBCAdapter.java:594)
> at
> org.activemq.store.jdbc.JDBCPersistenceAdapter.cleanup(JDBCPersistenceAdapter.java:252)
> at
> org.activemq.store.jdbc.JDBCPersistenceAdapter$1.run(JDBCPersistenceAdapter.java:241)
> at EDU.oswego.cs.dl.util.concurrent.ClockDaemon$RunLoop.run(Unknown
> Source)
> at java.lang.Thread.run(Thread.java:534)
> 2005-07-18 17:39:08,362 [eckpoint Worker] WARN JournalMessageStore
> - Message could not be added to long term store: Failed to broker message:
> ID:ny-cap-33-1885-1121722466215-94:3730 in container: SQL Exception: A lock
> could not be obtained within the time requested
> javax.jms.JMSException: Failed to broker message:
> ID:ny-cap-33-1885-1121722466215-94:3730 in container: SQL Exception: A lock
> could not be obtained within the time requested
> at
> org.activemq.util.JMSExceptionHelper.newJMSException(JMSExceptionHelper.java:49)
> at
> org.activemq.store.jdbc.JDBCMessageStore.addMessage(JDBCMessageStore.java:74)
> at
> org.activemq.store.journal.JournalMessageStore$5.execute(JournalMessageStore.java:244)
> at
> org.activemq.util.TransactionTemplate.run(TransactionTemplate.java:41)
> at
> org.activemq.store.journal.JournalMessageStore.checkpoint(JournalMessageStore.java:227)
> at
> org.activemq.store.journal.JournalTopicMessageStore.checkpoint(JournalTopicMessageStore.java:143)
> at
> org.activemq.store.journal.JournalPersistenceAdapter$3.run(JournalPersistenceAdapter.java:362)
> at EDU.oswego.cs.dl.util.concurrent.QueuedExecutor$RunLoop.run(Unknown
> Source)
> at java.lang.Thread.run(Thread.java:534)
> Caused by: SQL Exception: A lock could not be obtained within the time
> requested
> at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Util.java)
> at
> org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(TransactionResourceImpl.java)
> at
> org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(TransactionResourceImpl.java)
> at
> org.apache.derby.impl.jdbc.EmbedConnection.handleException(EmbedConnection.java)
> at
> org.apache.derby.impl.jdbc.ConnectionChild.handleException(ConnectionChild.java)
> at
> org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(EmbedStatement.java)
> at
> org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(EmbedPreparedStatement.java)
> at
> org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(EmbedPreparedStatement.java)
> at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:94)
> at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:94)
> at
> org.activemq.store.jdbc.adapter.DefaultJDBCAdapter.doAddMessage(DefaultJDBCAdapter.java:190)
> at
> org.activemq.store.jdbc.JDBCMessageStore.addMessage(JDBCMessageStore.java:72)
> ... 7 more
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.activemq.org/jira//secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira