You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Alex Rudyy (JIRA)" <ji...@apache.org> on 2011/08/29 12:45:38 UTC
[jira] [Issue Comment Edited] (QPID-2901) A number of tests
sporadically fails with 0.10 profiles on attempt to commit transaction due
to exception in org.apache.qpid.transport.Session#sync
[ https://issues.apache.org/jira/browse/QPID-2901?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13091768#comment-13091768 ]
Alex Rudyy edited comment on QPID-2901 at 8/29/11 10:43 AM:
------------------------------------------------------------
The attached patch fixes the problem by changing the following:
- un-registering of existing subscriptions in ServerConnection#sessionClose method
- transport session closing state is checked in Subscription_0_10#isSuspended method
The system test case to reproduce the racing conditions and verify fix is attached as a separate patch
was (Author: alex.rufous):
The attached patch fixes the problem by changing the following:
- subscription send locks are acquired before closing the session from SCDP
- transport session closing state is checked in Subscription_0_10#isSuspended method
> A number of tests sporadically fails with 0.10 profiles on attempt to commit transaction due to exception in org.apache.qpid.transport.Session#sync
> ---------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: QPID-2901
> URL: https://issues.apache.org/jira/browse/QPID-2901
> Project: Qpid
> Issue Type: Bug
> Components: Java Broker, Java Client
> Affects Versions: 0.7, 0.8, 0.9, 0.10, 0.11, 0.12
> Reporter: Robbie Gemmell
> Attachments: 0001-QPID-2901-Fixes-racing-conditions-on-broker-side-whe.patch, 0001-QPID-2901-System-test-to-reproduce-racing-conditions.patch
>
>
> The following stack trace is printed for failed commit
> org.apache.qpid.transport.SessionException: ch=0 id=0 ExecutionException(errorCode=INTERNAL_ERROR, commandId=13, description=Exception processing command: java.lang.RuntimeException: Failed to commit transaction)
> at org.apache.qpid.transport.Session.sync(Session.java:807)
> at org.apache.qpid.transport.Session.sync(Session.java:772)
> at org.apache.qpid.transport.Session.invoke(Session.java:732)
> at org.apache.qpid.transport.Session.invoke(Session.java:561)
> at org.apache.qpid.transport.SessionInvoker.txCommit(SessionInvoker.java:148)
> at org.apache.qpid.client.AMQSession_0_10.sendCommit(AMQSession_0_10.java:423)
> at org.apache.qpid.client.AMQSession_0_10.commit(AMQSession_0_10.java:1008)
> at org.apache.qpid.systest.TestingBaseCase$1.run(TestingBaseCase.java:105)
> at java.lang.Thread.run(Thread.java:619)
> This is the list of failing tests:
> org.apache.qpid.systest.SubscriptionTest#testTopicDurableConsumerMessageAge
> org.apache.qpid.systest.SubscriptionTest#testTopicDurableConsumerMessageCount
> org.apache.qpid.systest.TopicTest#org.apache.qpid.systest.TopicTest
> org.apache.qpid.systest.TopicTest#testTopicDurableConsumerMessageAge
> org.apache.qpid.systest.GlobalQueuesTest#testTopicDurableConsumerMessageAge
> org.apache.qpid.systest.GlobalTopicsTest#testTopicDurableConsumerMessageSize
> org.apache.qpid.systest.GlobalTopicsTest#testTopicDurableConsumerMessageAge
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org