Skip to content

Akka.Cluster.Sharding: can't recursively unpack ShardingEnvelope contents in IMessageExtractor #7470

@Aaronontheweb

Description

@Aaronontheweb

Version Information
Version of Akka.NET? v1.5.15 to v1.5.35
Which Akka.NET Modules? Akka.Cluster.Sharding

Describe the bug

The bug stems from the ExtractorAdapter we introduced in v1.5.15 as part of #6863

The ShardingEnvelope is meant to be invisible - a transparent way to route messages to the sharding system. We have a tiny bug here that I noticed while working on #7467 this morning: if you include a message type that you want handled by the IMessageExtractor.EntityMessage method inside your ShardingEnvelope, that does not get handled and you instead get whatever the value of the object is inside the ShardingEnvelope.

No one has reported this so I assume it's not a bug anyone has run into, but the correct behavior here is that the output of the ShardingEnvelope should PROBABLY be routed through the _underlying.EntityMessage call - that way the ShardingEnvelope can be side-effect free, as it was intended. In most scenarios this should arrive at the same result as today.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions