Message Persistence

Posted by marmul on 24-Feb-2009 08:15

Hello,

i'm having two esb servers here one for production and for testing. Unfortunately all the messages on the one machine have a jmsdeliverymode of 1 (i heard it's non persistent) and on the other machine they have a jmsdeliverymode of 105(what is that?) buti want them all persistent

On both machine all the data is imported with javax.jms.DeliveryMode.PERSISTENT (should be 2) so i wonder is there something like a global switch inside the ESB where i can modify this jmsdeliverymode in order to make them all persistent? Or can i modify the jmsdeliverymode on runtime?

Regards

Markus

All Replies

Posted by nweddle on 25-Feb-2009 14:37

I'll do my best to answer your quesiton. I had the same issue with my system. I want my messages to survive a reboot of the system, so the JMSDeliveryMode must be set to PERSISTENT by the client that is publishing messages.

I do not know of any global setting in Sonic that will do what you are asking, however I did the following to ensure that all messages were PERSISTENT.

//Stand alone C#/Java Client Puyblishing to a Queue

messageProducer.send(textMessage, DeliveryMode.PERSISTENT, Message.DEFAULT_PRIORITY, MESSAGE_LIFESPAN);

//HTTP Acceptor to Queue on One Way Send URL Properties

Set Delivery Mode to Persistent. See Attached Screen Shot

I also set the Time to Live on all my messages to 0, because I don't want them ever to time out.

Posted by marmul on 04-Mar-2009 03:59

hi actually i just found my problem. My problem was that the persistence depends also on the endpoint. So i send persistent messages and they arrived persistent, but once a transformation procesed it became inpersistent. I solved the problem, with some help of progress. I had to change all the endpoint configuration. I had to switch quality of service from "Best effort" to "exactly once" and then all my messages kept the jmsdelivery flag =2 and stayed persistent.

Posted by Bill Wood on 06-Feb-2010 10:50

Question author said they found the issue

This thread is closed