NServiceBus.RavenDB 6.4.1 and 6.3.2 - Critical patch releases available

Hi everyone,

We’ve just released NServiceBus.RavenDB 6.4.1 and 6.3.2.

These releases fix a critical saga persistence data-migration corruption issue which occurs when saga state is migrated from NServiceBus.RavenDB 5.x to 6.x.

Commands, events, and timeouts originating from migrated saga instances cannot be correlated back to those instances because the saga instance identifiers are Guid.Empty (00000000-0000-0000-0000-000000000000). This results in Saga Not Found messages.

Note that saga state is not lost.

These releases fix both the logic that migrates saga state to the version 6 format, as well as previously migrated saga state.

Note that migration is live. This means migration happens at run-time, ‘just-in-time’, when the saga instance is loaded from disk.

Non-affected scenarios

  • Saga instances created post-migration are not affected.
  • Commands, events, and timeouts sent pre-migration, but processed post-migration, are not affected unless these will send new messages that later need to be correlated again.

Fixed bugs

  • #554 Saga ID has Guid.Empty default value after migrating from 5.x to 6.x

Symptoms

  • The saga instance Data.Id has value Guid.Empty (00000000-0000-0000-0000-000000000000) when processing a message.
  • The system logs unexpected Saga not found entries (requires log level INFO to be enabled).

Should you upgrade immediately

You should upgrade immediately if you’re using RavenDB persistence and have previously migrated saga state from NServiceBus.RavenDB 5.x to 6.x.

Where to get it

You can install the new versions from NuGet.

Note that versions 6.0.x, 6.1.x, and 6.2.x are unsupported. Only supported minor versions have this patch.

Support

Contact us if you have any questions or require assistance.

With thanks,
The team in Particular

Please read our release policy for more details. Follow @ParticularNews to be notified of new releases and bug fixes.