Issue Details (XML | Word | Printable)

Key: AMQ-1449
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Rob Davies
Reporter: Nicky Sandhu
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
ActiveMQ

Producer hangs on durable subscribe as Usage memory runs over

Created: 08/Oct/07 11:30 AM   Updated: 22/Oct/07 09:58 AM
Return to search
Component/s: Broker
Affects Version/s: None
Fix Version/s: 5.0.0

Time Tracking:
Not Specified

File Attachments:
  Size
Text File tests.patch.txt 2007-10-08 11:30 AM Nicky Sandhu 7 kB

Regression: Broken Unit Test


 Description  « Hide
Broker hangs on a durable subscribe when producer is disconnected violently (System.exit()). I have included the test files to reproduce the problem

WARNING: The test cases included can be patched against activemq-core but are not unit tests. Do the following sequence

1.) Run the junit test DurableProducerConsumerBrokerTest. This starts a broker
2.) Run the junit test DurableProducerConsumerTest. It will exit with System.exit midway thru running the test
3.) Rerun the junit test DurableProducerConsumerTest...It should hang the second time around

Note: If you use the log4j.properties included in the patch you would see the Usage memory as it rises above 70 to 99+ in the second run.



 All   Comments   Work Log   Change History   Subversion Commits   FishEye   Crucible      Sort Order: Ascending order - Click to sort in descending order

Nicky Sandhu added a comment - 19/Oct/07 01:33 PM
TopicStorePrefetch has a system usage manager that is not used by Message (broker.region package). It instead uses the increment/decrement to inform the regionBroker's system usage manager which happens to be a different one.

So the listener implemented by DurableTopicSubscription never results in an actual call back and hence the leak ??

I don't understand this one completely but i hope it helps whoever looks at this issue


Rob Davies made changes - 19/Oct/07 10:50 PM
Field Original Value New Value
Assignee Rob Davies [ rajdavies ]
Repository Revision Date User Message
AMQ #587033 Mon Oct 22 01:38:22 PDT 2007 rajdavies Fix for https://issues.apache.org/activemq/browse/AMQ-1449
Files Changed
MODIFY /activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/cursors/AbstractPendingMessageCursor.java
MODIFY /activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/cursors/PendingMessageCursor.java
MODIFY /activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/cursors/FilePendingMessageCursor.java
MODIFY /activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/DurableTopicSubscription.java
MODIFY /activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/cursors/VMPendingMessageCursor.java

Rob Davies added a comment - 22/Oct/07 01:39 AM
Fixed by svn revision 587033

Rob Davies made changes - 22/Oct/07 01:39 AM
Resolution Fixed [ 1 ]
Status Open [ 1 ] Resolved [ 5 ]
Fix Version/s 5.0.0 [ 11712 ]
Nicky Sandhu added a comment - 22/Oct/07 09:58 AM
Thanks Rob! It does great under the performance tests as well. Any thoughts on how to include/modify these tests for the build ?

Create crucible review for this changeset in