Akka.Persistence.Extras icon indicating copy to clipboard operation
Akka.Persistence.Extras copied to clipboard

Rewrite AtLeastOnceDeliverySemantic

Open Aaronontheweb opened this issue 6 years ago • 1 comments
trafficstars

Major changes needed:

  • Remove ImmutableDictionary<T> in favor of Dictionary<T> - if the semantic isn't accessed concurrently, then it's not needed.
  • Add ability to add single UnconfirmedDelivery messages to the AtLeastOnceDelivery state incrementally, so these items can be retrieved via Recover<UnconfirmedDelivery>.

Aaronontheweb avatar Jan 17 '19 00:01 Aaronontheweb

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

Aaronontheweb avatar Jan 17 '19 23:01 Aaronontheweb