[
http://jira.jboss.com/jira/browse/JBAS-4870?page=all ]
Adrian Brock updated JBAS-4870:
-------------------------------
Attachment: testredelivery.zip
It's quite hard to write an ant unit test for this problem, because it can
only be reproduced with a server crash (rather than a clean shutdown of the server).
Attached is a simple ant project to test whether the redelivery flags are set correctly,
but it requires manual steps (step 4 below) to run the test.
1) Start JBoss
./run.sh
2) Send a message
ant send
3) Receive the message in Client Acknowledge mode, but
don't acknowledge (or close the session, etc. which is the same thing).
ant receive
4) Crash the server (don't use control-c)
kill -9 <jboss-pid>
5) Restart the server
./run.sh
7) Re-receive the message
ant receive
You should see the redelivery count updated (before this fix you don't)
Redelivery flags not updated in case of JBossMQ node failure
------------------------------------------------------------
Key: JBAS-4870
URL:
http://jira.jboss.com/jira/browse/JBAS-4870
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: JMS service
Affects Versions: JBossAS-4.2.2.GA
Reporter: Adrian Brock
Assigned To: Adrian Brock
Fix For: JBossAS-5.0.0.Beta3, JBossAS-4.2.3.GA
Attachments: testredelivery.zip
When the JBossMQ node fails with messages currently being delivered to the clients,
the redelivery status is not updated after the node is recovered (either locally or on a
different for HAJMS).
The issue is that the redelivery status (in the database) is not updated until the server
receives the NACK
(which it won't do if it has crashed).
A potential fix, is to update the status early before delivering the message to the
client,
see the forum thread for more detail.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira