When a message can't be properly deserialized SC tries to send it to the error queue. So far so good. But if that message contains a TTBR the following excpetion is raised internally:
2016-01-27 10:53:55.0534|26|Fatal|NServiceBus|Fault manager failed to process the failed message with id cfe47b9b-99e0-4533-94a3-cb1731c97a69\6724376
System.InvalidOperationException: Could not forward failed message to error queue. ---> System.Exception: Failed to send message to address: Particular.ServiceControl.Errors@ENLIGHTEMENT. Sending messages with a custom TimeToBeReceived is not supported on transactional MSMQ.
at NServiceBus.Transports.Msmq.MsmqMessageSender.Send(TransportMessage message, SendOptions sendOptions) in C:\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Transports\Msmq\MsmqMessageSender.cs:line 41
at NServiceBus.Faults.Forwarder.FaultManager.HandleProcessingAlwaysFailsForMessage(TransportMessage message, Exception e, Int32 numberOfRetries) in C:\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Faults\Forwarder\FaultManager.cs:line 76
at NServiceBus.Faults.Forwarder.FaultManager.TryHandleFailure(Action failureHandlingAction) in C:\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Faults\Forwarder\FaultManager.cs:line 112
--- End of inner exception stack trace ---
at NServiceBus.Faults.Forwarder.FaultManager.TryHandleFailure(Action failureHandlingAction) in C:\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Faults\Forwarder\FaultManager.cs:line 124
at NServiceBus.Unicast.Transport.FirstLevelRetries.TryInvokeFaultManager(TransportMessage message, Exception exception, Int32 numberOfAttempts) in C:\BuildAgent\work\3206e2123f54fce4\src\NServiceBus.Core\Unicast\Transport\FirstLevelRetries.cs:line 66
Symptom
When a message can't be properly deserialized SC tries to send it to the error queue. So far so good. But if that message contains a TTBR the following excpetion is raised internally:
https://github.com/Particular/NServiceBus/blob/master/src/NServiceBus.Core/Transports/Msmq/MsmqMessageSender.cs#L41
This then ultimately leads to a ServiceControl shutdown at some point.
Who's affected
Users of ServiceControl running against MSMQ transport