I am doing some scalability testing for an MSMQ application i built. When sending around 200k messages and trying to receive on the server, I see some of the messages are expiring (using TimeToBeReceived = 30 secs). I use the UseDeadLetterQueue on the message so these messages can be moved to a dead letter queue. Everything is functionally working as expected. But I only see 1000 messages in the deadletter queue even when I see 1000's of messages are expiring on the receiving end.
anybody seen this behavior and if so how do i resolve this?
Updated: I am keeping 2 counters. One while feeding messages into the system (sender) and one while consuming messages from the system. If I feed 200k messages, on the receiving end..i only see about 190k getting consumed. So 10k messages were lost (most probably because of TimeToBeReceived expired). I expect thse 10k messages to show up in DeadLetterQueue. But I only find 1k there. So, i am wondering if there is a limit on how many DeadLetterQueue can hold?