Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
1.3.9 August 22 2018
Maintenance Release for Akka.NET 1.3
Akka.NET v1.3.9 features some major changes to Akka.Cluster.Sharding, additional Akka.Streams stages, and some general bug fixes across the board.
Akka.Cluster.Sharding Improvements
The Akka.Cluster.Sharding documentation already describes some of the major changes in Akka.NET v1.3.9, but we figured it would be worth calling special attention to those changes here.
Props Factory for Entity Actors
In addition to the existing APIs we've always had for defining sharded entities via
Props
, Akka.NET v1.3.9 introduces a new method overload forStart
andStartAsync
which allows users to pass in theentityId
of each entity actor as a constructor argument to those entities when they start.For example:
This will give you the opportunity to pass in the
entityId
for each actor as a constructor argument into theProps
of your entity actor and possibly other use cases too.Improvements to Starting and Querying Existing Shard Entity Types
Two additional major usability improvements to Cluster.Sharding come from some API additions and changes.
The first is that it's now possible to look up all of the currently registered shard types via the
ClusterSharding.ShardTypeNames
property. So long as aShardRegion
of that type has been started in the cluster, that entity type name will be added to the collection exposed by this property.The other major usability improvement is a change to the
ClusterSharding.Start
property itself. Historically, you used to have to know whether or not the node you wanted to use sharding on was going to be hosting shards (callClusterSharding.Start
) or simply communicated with shards hosted on a different cluster role type (callClusterSharding.StartProxy
). Going forward, it's safe to callClusterSharding.Start
on any node and you will either receive anIActorRef
to activeShardRegion
or aShardRegion
running in "proxy only" mode; this is determined by looking at theClusterShardingSettings
and determining if the current node is in a role that is allowed to host shards of this type.RestartShard
escapes into userspaceAkka.Streams Additions and Changes
In Akka.NET v1.3.9 we've added some new built-in stream stages and API methods designed to help improve developer productivity and ease of use.
KillSwitches: flow stage from CancellationToken
Other Updates, Additions, and Bugfixes
To see the full set of changes for Akka.NET v1.3.9, click here.