Throw when deserializing Exceptions by reference, and avoid reference tracking for all Exception-derived types (#8628) by @david-obee in dotnet/orleans#8698
Fix "System.InvalidOperationException: Unable to extract integer key from grain id" at Silo.OnActiveStop (#8558) by @peter-perot in dotnet/orleans#8701
Throw when deserializing Exceptions by reference, and avoid reference tracking for all Exception-derived types (#8628) by @david-obee in dotnet/orleans#8698
Fix "System.InvalidOperationException: Unable to extract integer key from grain id" at Silo.OnActiveStop (#8558) by @peter-perot in dotnet/orleans#8701
Throw when deserializing Exceptions by reference, and avoid reference tracking for all Exception-derived types (#8628) by @david-obee in dotnet/orleans#8698
Fix "System.InvalidOperationException: Unable to extract integer key from grain id" at Silo.OnActiveStop (#8558) by @peter-perot in dotnet/orleans#8701
This release includes initial integration with .NET Aspire, allowing you to configure an Orleans cluster in your Aspire app host, specifying the resources the cluster uses. For example, you can specify that an Azure Table will be used for cluster membership, an Azure Redis resource will be used for the grain directory, and an Azure Blob Storage resource will be used to store grain state. The integration currently supports Redis and Azure Table & Blob storage resources. Support for other resources will be added later.
In the app host project, an Orleans cluster can be declared using the AddOrleans method, and then configured with clustering, grain storage, grain directory, and other providers using methods on the returned builder:
var storage = builder.AddAzureStorage("storage");
var clusteringTable = storage.AddTables("clustering");
var defaultStorage = storage.AddBlobs("grainstate");
var cartStorage = builder.AddRedis("redis-cart");
var orleans = builder.AddOrleans("my-app")
.WithClustering(clusteringTable)
.WithGrainStorage("Default", grainStorage)
.WithGrainStorage("cart", cartStorage);
// Add a server project (also called "silo")
builder.AddProject<Projects.OrleansServer>("silo")
.WithReference(orleans);
// Add a project with a reference to the Orleans client
builder.AddProject<Projects.FrontEnd>("frontend")
.WithReference(orleans);
In the client and server projects, add Orleans to the host builder as usual.
// For an Orleans server:
builder.UseOrleans();
// Or, for an Orleans client:
builder.UseOrleansClient();
Orleans will read configuration created by your Aspire app host project and configure the providers specified therein. To allow Orleans to access the configured resources, add them as keyed services using the corresponding Aspire component:
Resource-optimized placement, enabled via the [ResourceOptimizedPlacement] attribute on a grain class, balances grains across hosts based on available memory and CPU usage. For more details, see the PR: dotnet/orleans#8815.
... (truncated)
Commits
deda4ba Always read grain state during activation if it has not been rehydrated (#8944)
27e801b Fix some reference documentation warnings (#8941)
c77ca8b Serialization doc fixes, add missing test + fix (#8943)
Throw when deserializing Exceptions by reference, and avoid reference tracking for all Exception-derived types (#8628) by @david-obee in dotnet/orleans#8698
Fix "System.InvalidOperationException: Unable to extract integer key from grain id" at Silo.OnActiveStop (#8558) by @peter-perot in dotnet/orleans#8701
This release includes initial integration with .NET Aspire, allowing you to configure an Orleans cluster in your Aspire app host, specifying the resources the cluster uses. For example, you can specify that an Azure Table will be used for cluster membership, an Azure Redis resource will be used for the grain directory, and an Azure Blob Storage resource will be used to store grain state. The integration currently supports Redis and Azure Table & Blob storage resources. Support for other resources will be added later.
In the app host project, an Orleans cluster can be declared using the AddOrleans method, and then configured with clustering, grain storage, grain directory, and other providers using methods on the returned builder:
var storage = builder.AddAzureStorage("storage");
var clusteringTable = storage.AddTables("clustering");
var defaultStorage = storage.AddBlobs("grainstate");
var cartStorage = builder.AddRedis("redis-cart");
var orleans = builder.AddOrleans("my-app")
.WithClustering(clusteringTable)
.WithGrainStorage("Default", grainStorage)
.WithGrainStorage("cart", cartStorage);
// Add a server project (also called "silo")
builder.AddProject<Projects.OrleansServer>("silo")
.WithReference(orleans);
// Add a project with a reference to the Orleans client
builder.AddProject<Projects.FrontEnd>("frontend")
.WithReference(orleans);
In the client and server projects, add Orleans to the host builder as usual.
// For an Orleans server:
builder.UseOrleans();
// Or, for an Orleans client:
builder.UseOrleansClient();
Orleans will read configuration created by your Aspire app host project and configure the providers specified therein. To allow Orleans to access the configured resources, add them as keyed services using the corresponding Aspire component:
Resource-optimized placement, enabled via the [ResourceOptimizedPlacement] attribute on a grain class, balances grains across hosts based on available memory and CPU usage. For more details, see the PR: dotnet/orleans#8815.
... (truncated)
Commits
deda4ba Always read grain state during activation if it has not been rehydrated (#8944)
27e801b Fix some reference documentation warnings (#8941)
c77ca8b Serialization doc fixes, add missing test + fix (#8943)
Throw when deserializing Exceptions by reference, and avoid reference tracking for all Exception-derived types (#8628) by @david-obee in dotnet/orleans#8698
Fix "System.InvalidOperationException: Unable to extract integer key from grain id" at Silo.OnActiveStop (#8558) by @peter-perot in dotnet/orleans#8701
Bumps the orleans group with 6 updates:
7.2.1
7.2.6
7.2.1
7.2.6
7.2.1
8.1.0
7.2.1
8.1.0
7.2.1
8.1.0
7.2.1
8.1.0
Updates
Microsoft.Orleans.Runtime
from 7.2.1 to 7.2.6Release notes
Sourced from Microsoft.Orleans.Runtime's releases.
... (truncated)
Commits
9aab3f7
Use GrainDirectoryCacheFactory to construct a IGrainDirectoryCache (#8844) (#...6981e70
Avoid over-counting stateless worker activations (#8886) (#8890)c1d1640
Fix StatelessWorker MaxLocal for Orleans 7.x (#8887)b7bf45f
Always reset RuntimeContext to previous value after use (#8864) (#8870)597bcf0
FixPooledBuffer
serialization & initialize ActivationMigrationManager on s...57bafe7
[7.x] Avoid resending unchanged ClusterManifest to clients (#8772)4ab056f
Identify F# single case discriminated unions as SumType (#8739) (#8757)6be49c1
Fix exception caused by a log message (#8558) (#8701) (#8756)fbd92f4
Fix exception while collecting activations when activation.KeepAliveUntil = D...236b398
Correctly count number of items in LRU (#8742) (#8754)Updates
Microsoft.Orleans.Serialization.Abstractions
from 7.2.1 to 7.2.6Release notes
Sourced from Microsoft.Orleans.Serialization.Abstractions's releases.
... (truncated)
Commits
9aab3f7
Use GrainDirectoryCacheFactory to construct a IGrainDirectoryCache (#8844) (#...6981e70
Avoid over-counting stateless worker activations (#8886) (#8890)c1d1640
Fix StatelessWorker MaxLocal for Orleans 7.x (#8887)b7bf45f
Always reset RuntimeContext to previous value after use (#8864) (#8870)597bcf0
FixPooledBuffer
serialization & initialize ActivationMigrationManager on s...57bafe7
[7.x] Avoid resending unchanged ClusterManifest to clients (#8772)4ab056f
Identify F# single case discriminated unions as SumType (#8739) (#8757)6be49c1
Fix exception caused by a log message (#8558) (#8701) (#8756)fbd92f4
Fix exception while collecting activations when activation.KeepAliveUntil = D...236b398
Correctly count number of items in LRU (#8742) (#8754)Updates
Microsoft.Orleans.Serialization.Abstractions
from 7.2.1 to 8.1.0Release notes
Sourced from Microsoft.Orleans.Serialization.Abstractions's releases.
... (truncated)
Commits
9aab3f7
Use GrainDirectoryCacheFactory to construct a IGrainDirectoryCache (#8844) (#...6981e70
Avoid over-counting stateless worker activations (#8886) (#8890)c1d1640
Fix StatelessWorker MaxLocal for Orleans 7.x (#8887)b7bf45f
Always reset RuntimeContext to previous value after use (#8864) (#8870)597bcf0
FixPooledBuffer
serialization & initialize ActivationMigrationManager on s...57bafe7
[7.x] Avoid resending unchanged ClusterManifest to clients (#8772)4ab056f
Identify F# single case discriminated unions as SumType (#8739) (#8757)6be49c1
Fix exception caused by a log message (#8558) (#8701) (#8756)fbd92f4
Fix exception while collecting activations when activation.KeepAliveUntil = D...236b398
Correctly count number of items in LRU (#8742) (#8754)Updates
Microsoft.Orleans.Client
from 7.2.1 to 8.1.0Release notes
Sourced from Microsoft.Orleans.Client's releases.
... (truncated)
Commits
deda4ba
Always read grain state during activation if it has not been rehydrated (#8944)27e801b
Fix some reference documentation warnings (#8941)c77ca8b
Serialization doc fixes, add missing test + fix (#8943)de58ab8
Update Azure.Identity (#8942)50eba30
Add more tests for [Alias("x")] attribute (#8926)2960a3b
Fix typos in SQSStorage.cs (#8933)760a4cd
Enable TCP keep-alive on all sockets by default (#8927)ff6de7e
Do not trigger mirror for PR (#8924)18aeb09
Fix mirror pipeline (#8923)ce2711b
Fix nightly nuget publishing (#8919)Updates
Microsoft.Orleans.Serialization.Abstractions
from 7.2.1 to 8.1.0Release notes
Sourced from Microsoft.Orleans.Serialization.Abstractions's releases.
... (truncated)
Commits
9aab3f7
Use GrainDirectoryCacheFactory to construct a IGrainDirectoryCache (#8844) (#...6981e70
Avoid over-counting stateless worker activations (#8886) (#8890)c1d1640
Fix StatelessWorker MaxLocal for Orleans 7.x (#8887)b7bf45f
Always reset RuntimeContext to previous value after use (#8864) (#8870)597bcf0
FixPooledBuffer
serialization & initialize ActivationMigrationManager on s...57bafe7
[7.x] Avoid resending unchanged ClusterManifest to clients (#8772)4ab056f
Identify F# single case discriminated unions as SumType (#8739) (#8757)6be49c1
Fix exception caused by a log message (#8558) (#8701) (#8756)fbd92f4
Fix exception while collecting activations when activation.KeepAliveUntil = D...236b398
Correctly count number of items in LRU (#8742) (#8754)Updates
Microsoft.Orleans.TestingHost
from 7.2.1 to 8.1.0Release notes
Sourced from Microsoft.Orleans.TestingHost's releases.
... (truncated)
Commits
deda4ba
Always read grain state during activation if it has not been rehydrated (#8944)27e801b
Fix some reference documentation warnings (#8941)c77ca8b
Serialization doc fixes, add missing test + fix (#8943)de58ab8
Update Azure.Identity (#8942)50eba30
Add more tests for [Alias("x")] attribute (#8926)2960a3b
Fix typos in SQSStorage.cs (#8933)760a4cd
Enable TCP keep-alive on all sockets by default (#8927)ff6de7e
Do not trigger mirror for PR (#8924)18aeb09
Fix mirror pipeline (#8923)ce2711b
Fix nightly nuget publishing (#8919)Updates
Microsoft.Orleans.Runtime
from 7.2.1 to 8.1.0Release notes
Sourced from Microsoft.Orleans.Runtime's releases.