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 valueGuid.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.