1.5.31 November 11th 2024
Akka.NET v1.5.31 is a maintenance release that addresses several bugs and added new features.
- Persistence: Add logging for failed DeleteAsync() that was caused by failed SaveSnapshot()
- Persistence: Fix RecoveryTick timer leak
- Serialization.Hyperion: Fix serializer config bug
- Sharding: Fix potential
ArgumentException
during shard re-balancing - Cluster: Fix multiple
Member
with the sameAddress
crashingClusterDaemon
- Core: Fix
Stash
filtering out identicalEnvelope
s - Streams: Fix
ShellRegistered
message deadletter log - Sharding: Make lease release in
Shard.PostStop
be blocking instead of using detached async task - Cluster.Tools: Add missing singleton detection feature for easier infrastructure debugging
Upgrade Advisory
There is a slight change in how actor Stash
behavior. In previous behavior, Stash
will filter out any messages that are identical (see explanation below) when it is prepended with another. It will not do so now, which is the actual intended behavior.
This change will affect Akka.Persistence
users or users who use the Stash.Prepend()
method in their code. You will need to add a de-duplication code if your code depends on sending identical messages multiple times to a persistence actor while it is recovering.
Messages are considered as identical if they are sent from the same sender actor and have a payload message that Equals()
to true against another message. Example payload types would be an object pointing to the same memory address (ReferenceEquals()
returns true), value types (enum, primitives, structs), and classes that implements the IEquatable
interface.
To see the full set of changes in Akka.NET v1.5.31, click here.
2 contributors since release 1.5.30
COMMITS | LOC+ | LOC- | AUTHOR |
---|---|---|---|
9 | 627 | 154 | Gregorius Soedharmo |
4 | 133 | 40 | Aaron Stannard |
Changes:
- fe6fa8d Update RELEASE_NOTES.md for 1.5.31 release (#7384)
- fb526e5 Add missing cluster singleton detection (#7363)
- 322c494 Block lease release in Shard PostStop (#7383)
- 902daf5 clarified that you don't need to handle ShardRegion.StartEntity after version v1.5.15 of Akka.NET (#7380)
- 699aff2 [Streams] Fix ShellRegistered message deadletter log (#7376)
- 3700809 Added reproduction for missing
Stash.Stash
messages in Akka.,Persistence actors (#7374) [ #7373 ] - 67fad90 Fix EventSourced Stash filtering out identical envelopes (#7375)
- 0cbddb5 fixed bugs with multiple
Member
s with sameAddress
crashingClusterDaemon
(#7371) [ #7370 ] - 02157c3 fix potential
ArgumentException
during shard rebalancing (#7367) [ #7365 ] - 7685a6f Fix Hyperion serializer config bug (#7364)