When "Generate new MessageID" is unticked in a composite queue, I assume that all targets get the same ID.
If you use the composite queue as a kind of backup mechanism and copy a message from a second target queue back to a queue it was already delivered to, does it retain the same ID and is then removed by the duplicate detection mechanism?
I can see the message being produced and consumed, as the counters rise, but it never seems to arrive at the consumer.
Also I disabled duplicate detection on the queues and enabled logging of duplicates, but that had no effect at all. After a restart of the router I was able to perform the above copy procedure and have the message consumed a second time. Does that make any sense to you?
Can I prevent this behaviour in the future just by ticking "Generate new MessageID" with my backup queue?
If you copy a message to a composite queue which was already stored before then it has a message id and retains it if you don't check "Generate new Message ID". The message is then discarded from de-duplication at the target queue. Even if you disable de-duplication at the queue, the message may be discarded from the de-duplication at the consumer client.
I'm sure checking "Generate new Message ID" will solve that.