Syed,
if you are using topics without durable subscribers, then the behavior you are seeing is expected and would be the same with any JMS provider - not just UM.
If you have a concurrent trigger, it looks to UM as multiple subscribers, so each message can reach multiple threads in the trigger. By using duplicate detection you are just hiding this phenomenon, but it is very inefficient.Also, the use of a topic without durable subscribers does not guarantee that a message reaches a subscriber.
If you want to be sure that things arrive and that they normally arrive just once, also with concurrent triggers, then you need to use a durable subscriber. This can be configured in the IS JMS trigger. Also make sure that the Connection Factory you use has Shared Durable enabled, which is required to allow concurrent access to the DS.
#Integration-Server-and-ESB#Universal-Messaging-Broker#webMethods