Details
Description
If I instantiate a queue and then listen to it as non-transacted (eg not using AcknowledgementMode.Transactional), and then after processing a message call either session.Commit() or session.Rollback() I get REALLY random behavior.
Sometimes messages don't appear. Sometimes messages appear, but they are the old messages even though within the queue it is a new message.
I know that I should not be calling a transactional method on a non-transactional queue, but I thought an exception would be warranted.