Akka.Persistence.Extras
Akka.Persistence.Extras copied to clipboard
Rewrite AtLeastOnceDeliverySemantic
trafficstars
Major changes needed:
- Remove
ImmutableDictionary<T>in favor ofDictionary<T>- if the semantic isn't accessed concurrently, then it's not needed. - Add ability to add single
UnconfirmedDeliverymessages to theAtLeastOnceDeliverystate incrementally, so these items can be retrieved viaRecover<UnconfirmedDelivery>.
Looks like the dictionary doesn't need to be sorted either - doesn't offer much value in this instance since we need to scan all of the entries in the _unconfirmed whenever we are computing redelivery.
https://stackoverflow.com/questions/2376459/unexpected-poor-performance-of-sorteddictionary-compared-with-dictionary