Bugs item #547831, was opened at 2002-04-23 18:17 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=376685&aid=547831&group_id=22866
Category: JBossMQ Group: v3.0 Rabbit Hole Status: Open Resolution: Works For Me Priority: 5 Submitted By: Randy Dey-Toth (rdeytoth) >Assigned to: Anatoly Akkerman (azakkerman) Summary: JMS Redelivery doesn't work Initial Comment: According to a posting in the forum, this is an "old bug", fixed in the 3.0 line. But it is not fixed. When using a durable persistent Topic, unacknowledged messages are only redelivered when the server is restarted. ---------------------------------------------------------------------- Comment By: Randy Dey-Toth (rdeytoth) Date: 2002-05-10 13:46 Message: Logged In: YES user_id=524545 I'm not sure rimmeraj's test is valid. If you acknowledge any message in a session, it acknowledges all previous messages in the session as well, per the JMS specs. You need to kill the listener before acknowledging subsequent messages. ---------------------------------------------------------------------- Comment By: Dave Smith (rimmeraj) Date: 2002-05-10 12:40 Message: Logged In: YES user_id=486338 I am seeing the same thing. A simpler test is to have a listener that does not ackknowledge the first message and then acknowledge any other messages sent to it. You will see that the first unacknoledged message will never be resent but the rest will go through OK. ---------------------------------------------------------------------- Comment By: Randy Dey-Toth (rdeytoth) Date: 2002-05-06 13:40 Message: Logged In: YES user_id=524545 Any case where the JMS client exits before acknowledging receipt of a message from a Topic, and then starts up again without the server restarting, will demonstrate the failure of the server to redeliver unacknowledged messages without a restart. Attached is a Jar containing three files: JMSReceiver.java, JMSReceiver.properties, and HeartBeat.java. The last simply pumps 1000 messages into the topic, giving each a sequence number and setting a message property with the sequence number. The first fetches messages from the Topic, and prints their sequence numbers to the screen. Started with as TEST=true system property, it sleeps for a second between receiving the message and acknowledging it, making it easy to kill in between. The properties file is to configure the classes to talk to a certain Topic. To demonstrate the lack of redelivery without a restart, compile the two Java classes and do the following: 1. Set up a Topic in JBoss, and modify the JMSReceiver.properties file to point to that Topic. 2. run java aoe.jms.HeartBeat 0 This will pump 1000 test messages into the Topic. 3. run java -DTEST=true aoe.jms.JMSReceiver 4. Kill the JMSReceiver in between a receipt and an acknowledge. Note the sequence number of the message received but not acknowledged (this is the one that should be redelivered when the receiver starts up again). 5. Start the JMSReceiver again, as above. Note that the first message received is NOT the one that was acknowledge, but rather the following one. 6. Kill the JMSReceiver again. 7. Restart the JBoss server. 8. Start the JMSReceiver again. Notice that the unacknowledged messages not received before ARE now received. ---------------------------------------------------------------------- Comment By: Hiram Chirino (chirino) Date: 2002-05-02 19:44 Message: Logged In: YES user_id=175851 I've never seen this happen. Do you have test case that can reproduce this??? ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=376685&aid=547831&group_id=22866 ------------------------------------------------------- This sf.net email is sponsored by: Jabber - The world's fastest growing real-time communications platform! Don't just IM. Build it in! http://www.jabber.com/osdn/xim _______________________________________________ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development