We're running load tests on a SOA-P 5.3 installation. Sometimes, of course, the system gets overloaded and we have to restart it. I'm having a problem that the restarted instance still finds old messages in the queue and keeps trying to process them, apparently forever.
Back when we used the default HSQL, it was enough to restart and sometimes clear out the working directories. Now we're using MySQL for persistence, and the only way I could get the ESB to stop processing old messages was to go into the database and delete all the records from jbm_msg and jbm_msg_ref.
That's fine on dev, but I don't think we want to be messing around with JBoss's internal tables in production if it were to crash. You would think that eventually it would give up trying to send a message and put it in the DLQ, but I haven't seen that to happen. In the Admin Console, Max Delivery attempts for all queues is set to -1, which means the default value of 10 attempts should be used. I can't count how many times it tries to send a message, but it runs as long as I let it, just retrying the same messages over and over, with no sign of giving up.
Question: is there another parameter that I need to look at to get JBoss to stop sending a message forever?