NServiceBus.Transport.Msmq 2.0.4 – Patch release available

Hi everyone,

We’ve just released NServiceBus.Transport.Msmq 2.0.4.

Fixed bugs

  • #700 Delayed delivery does not work when using SqlServerDelayedMessageStore without EnableInstallers

How to know if you are affected

You are affected if all the following are true:

Symptoms

Delayed messages are not delivered and the following error is logged:

NServiceBus.Transport.Msmq.DelayedDelivery.DueDelayedMessagePoller[0]
      Failure during timeout polling.
      System.InvalidOperationException: BeginExecuteReader: CommandText property has not been initialized
         at System.Data.SqlClient.SqlCommand.ValidateCommand(String method, Boolean async)
         at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
         at System.Data.SqlClient.SqlCommand.BeginExecuteReaderInternal(CommandBehavior behavior, AsyncCallback callback, Object stateObject, Int32 timeout, Boolean inRetry, Boolean asyncWrite)
         at System.Data.SqlClient.SqlCommand.BeginExecuteReaderAsync(CommandBehavior behavior, AsyncCallback callback, Object stateObject)
         at System.Threading.Tasks.TaskFactory`1.FromAsyncImpl[TArg1](Func`4 beginMethod, Func`2 endFunction, Action`1 endAction, TArg1 arg1, Object state, TaskCreationOptions creationOptions)
         at System.Threading.Tasks.TaskFactory`1.FromAsync[TArg1](Func`4 beginMethod, Func`2 endMethod, TArg1 arg1, Object state)
         at System.Data.SqlClient.SqlCommand.ExecuteReaderAsync(CommandBehavior behavior, CancellationToken cancellationToken)
      --- End of stack trace from previous location where exception was thrown ---
         at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
         at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
         at NServiceBus.SqlServerDelayedMessageStore.<FetchNextDueTimeout>d__15.MoveNext() in /_/src/NServiceBus.Transport.Msmq/DelayedDelivery/Sql/SqlServerDelayedMessageStore.cs:line 140
      --- End of stack trace from previous location where exception was thrown ---
         at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
         at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
         at NServiceBus.Transport.Msmq.DelayedDelivery.DueDelayedMessagePoller.<Poll>d__8.MoveNext() in /_/src/NServiceBus.Transport.Msmq/DelayedDelivery/DueDelayedMessagePoller.cs:line 193

When to upgrade

You should upgrade immediately if you are affected by the bug. Otherwise, you should upgrade during your next maintenance window.

Where to get it

You can install NServiceBus.Transport.Msmq 2.0.4 from NuGet.

Please read our release policy for more details.

With thanks,
The team in Particular