Repository navigation
1.5.71 September 29 2026
- Fix
AzureBlobSnapshotStoreloading stale or missing snapshots and matching other persistence ids - Update Akka.NET v1.5.71
- Update Akka.Hosting v1.5.71 - #558
Bug Fixes:
This release fixes two bugs in AzureBlobSnapshotStore, reported by a user.
- Loading could return an older snapshot, or none at all.
LoadAsyncread only the first page of the blob listing. Azure Blob Storage can return an empty or partial first page along with a continuation token, and when that happened the actor recovered as if it had no snapshot, with no error logged. A persistence id with more than 5,000 snapshots also got an older snapshot, since the newest one sits on a later page. Because recovery takes the actor's sequence number from the snapshot when the snapshot is ahead of the journal, a stale or missing snapshot could move the sequence number backwards and cause existing snapshots to be overwritten.LoadAsyncnow reads every page and picks the newest match. - Snapshot operations matched other persistence ids that share the same prefix. Loading
orders-1could return the snapshot oforders-1-2, and recovery would then skip replayingorders-1's own events that came after its real snapshot. Deleting snapshots foracct-1also deleted the snapshots ofacct-10,acct-11, and so on.LoadAsyncandDeleteAsync(persistenceId, criteria)now match only the exact persistence id.
No public API or storage format changes.
Behavior change:
LoadAsync now reads the full blob listing within the snapshot store's request-timeout (default 3s; AzureBlobSnapshotOptions.RequestTimeout in Akka.Hosting). If the listing can't finish in time, loading the snapshot fails and recovery fails with an error, instead of silently recovering without a snapshot. If you keep a very large number of previous blob versions or soft-deleted blobs in your snapshot container, raise request-timeout or clean up those old entries.
Dependency changes:
Akka.Hosting 1.5.71 raises the minimum versions of some transitive dependencies for users of Akka.Persistence.Azure.Hosting:
Microsoft.Extensions.Hosting.Abstractions,Microsoft.Extensions.Configuration.Abstractions,Microsoft.Extensions.Logging.Abstractions, andMicrosoft.Extensions.Diagnostics.HealthChecks: 8.0 to 9.0OpenTelemetry: 1.9 to 1.10
The test suite also moved to xunit v3; this does not affect the published packages.