Skip to content

Bump the orleans group with 10 updates#63

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/src/Agave.Silo/orleans-5f093a0cd3
Open

Bump the orleans group with 10 updates#63
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/src/Agave.Silo/orleans-5f093a0cd3

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 22, 2026

Copy link
Copy Markdown
Contributor

Updated Microsoft.Orleans.BroadcastChannel from 10.1.0 to 10.2.0.

Release notes

Sourced from Microsoft.Orleans.BroadcastChannel's releases.

10.2.0

Orleans v10.2.0 focuses on runtime reliability, grain directory correctness, observability, Durable Jobs and journaling improvements, provider fixes, and a broad test/CI stabilization push.

Highlights

Breaking changes and notable behavior changes

  • Redis multiplexer ownership: Redis providers using a DI-provided IConnectionMultiplexer via ServiceKey no longer dispose that shared multiplexer on shutdown. Providers which create their own multiplexer still own and dispose it. (#​10146, #​10182)
  • Metrics meter access: the static Orleans meter was removed. Code which referenced Orleans.Runtime.Instruments.Meter should resolve OrleansInstruments from DI and use its Meter instead. (#​10201)
  • Journaling default format: JSON Lines is now the default Orleans.Journaling storage format. Existing journals with stored format metadata continue to be read correctly; legacy entries without metadata are treated as OrleansBinary and migrate on snapshot write. Set JournaledStateManagerOptions.JournalFormatKey = "orleans-binary" to retain the old format for new writes. (#​9973)
  • Silo startup lifecycle: a new ValidateInitialConnectivity stage runs before BecomeActive, keeping silos in Joining until initial peer connectivity is validated. (#​10153)
  • Reminder lifecycle: reminder delivery is gated on the silo becoming active, while reminder register/update/unregister operations remain available later into shutdown. (#​10154, #​10155)
  • Client connection retries: the default client retry filter now retries additional transient gateway/startup failures, including OrleansMessageRejectionException and ConnectionFailedException, with a longer default retry window. (#​10140)
  • Directory activation-failure retries: retry loops after directory activation failures are now bounded by the normal message forward-count budget. (#​10094)
  • Diagnostics listener name: GrainLifecycleEvents.ListenerName is now correctly "Orleans.GrainLifecycle"; code subscribing by the previous string literal should update. (#​10121)
  • Durable Jobs storage providers: custom Durable Jobs journaling providers need catalog support via IJournalStorageCatalog. (#​10112, #​10148)
  • NATS options validation: invalid StorageType enum values are rejected at startup. (#​10176)

Runtime, activation, placement, and lifecycle

  • Fixed a stateless-worker reactivation race and a crash when cancelling indefinite keep-alive tickets. (#​10016, #​10014)
  • Fixed stuck deactivation recovery by removing stranded activations from the catalog, unregistering directory entries, and avoiding stale forwarding loops. (#​10046)
  • Fixed shutdown activations leaving stale grain directory entries. (#​10206)
  • Made the activation collector safer under memory pressure and when there are no valid candidates. (#​10113)
  • Stopped and awaited PlacementService workers during silo shutdown. (#​9993)
  • Prevented persistent stream pulling agents from accepting work or processing queue reads after shutdown starts. (#​10036)
  • Stabilized late lifecycle registration scheduling to avoid lock/scheduler races. (#​10135)
  • Added explicit initial connectivity validation before a silo becomes active. (#​10153)
  • Avoided tracking deactivated grains in activation repartitioner state and fixed repartitioning waits for inactive migrations. (#​10061, #​10130)
  • Reduced runtime hot-path overhead by avoiding per-activation scheduler logger fields, reducing request monitoring memory use, avoiding context capture in outgoing calls, optimizing response completion sources, simplifying InsideRuntimeClient response handling, and removing locks from activation response processing. (#​10118, #​10119, #​10129, #​10127, #​10128, #​10139, #​10141)
  • Broadened the default client connection retry filter to cover more transient startup and gateway failures. (#​10140)

Grain directory, routing, and cache correctness

  • Added TTL cleanup to the grain directory cache and diagnostic hooks for cache state changes. (#​10055)
  • Added a fast-path message destination cache for grain calls, with invalidation on activation, connection, gateway, and client state changes. (#​10064)
  • Capped cache invalidation header growth during message send and deserialization. (#​10078, #​10105)
  • Set target silo metadata correctly on cached silo connections. (#​10080)
  • Capped distributed directory ownership transfer batch sizes and split large transfer payloads into multiple messages. (#​10047, #​10053)
  • Fixed distributed directory recovery handoff for grains activating during ownership transfer. (#​10082)
  • Added distributed remote grain directory compatibility for rolling upgrades and a regression test for directory migration joins. (#​10050, #​10049)
  • Fixed LocalGrainDirectory membership reconciliation using snapshot-based processing, membership-version-aware stale cleanup, and membership refresh before directory RPC routing. (#​10086, #​10087, #​10088)
  • Simplified LocalGrainDirectory membership processing after the reconciliation changes. (#​10089)
  • Refined directory forwarding retry checks, removed a problematic directory failure forwarding optimization, and bounded retries after directory activation failures. (#​10092, #​10095, #​10094)
    ... (truncated)

Commits viewable in compare view.

Updated Microsoft.Orleans.Clustering.AzureStorage from 10.1.0 to 10.2.0.

Release notes

Sourced from Microsoft.Orleans.Clustering.AzureStorage's releases.

10.2.0

Orleans v10.2.0 focuses on runtime reliability, grain directory correctness, observability, Durable Jobs and journaling improvements, provider fixes, and a broad test/CI stabilization push.

Highlights

Breaking changes and notable behavior changes

  • Redis multiplexer ownership: Redis providers using a DI-provided IConnectionMultiplexer via ServiceKey no longer dispose that shared multiplexer on shutdown. Providers which create their own multiplexer still own and dispose it. (#​10146, #​10182)
  • Metrics meter access: the static Orleans meter was removed. Code which referenced Orleans.Runtime.Instruments.Meter should resolve OrleansInstruments from DI and use its Meter instead. (#​10201)
  • Journaling default format: JSON Lines is now the default Orleans.Journaling storage format. Existing journals with stored format metadata continue to be read correctly; legacy entries without metadata are treated as OrleansBinary and migrate on snapshot write. Set JournaledStateManagerOptions.JournalFormatKey = "orleans-binary" to retain the old format for new writes. (#​9973)
  • Silo startup lifecycle: a new ValidateInitialConnectivity stage runs before BecomeActive, keeping silos in Joining until initial peer connectivity is validated. (#​10153)
  • Reminder lifecycle: reminder delivery is gated on the silo becoming active, while reminder register/update/unregister operations remain available later into shutdown. (#​10154, #​10155)
  • Client connection retries: the default client retry filter now retries additional transient gateway/startup failures, including OrleansMessageRejectionException and ConnectionFailedException, with a longer default retry window. (#​10140)
  • Directory activation-failure retries: retry loops after directory activation failures are now bounded by the normal message forward-count budget. (#​10094)
  • Diagnostics listener name: GrainLifecycleEvents.ListenerName is now correctly "Orleans.GrainLifecycle"; code subscribing by the previous string literal should update. (#​10121)
  • Durable Jobs storage providers: custom Durable Jobs journaling providers need catalog support via IJournalStorageCatalog. (#​10112, #​10148)
  • NATS options validation: invalid StorageType enum values are rejected at startup. (#​10176)

Runtime, activation, placement, and lifecycle

  • Fixed a stateless-worker reactivation race and a crash when cancelling indefinite keep-alive tickets. (#​10016, #​10014)
  • Fixed stuck deactivation recovery by removing stranded activations from the catalog, unregistering directory entries, and avoiding stale forwarding loops. (#​10046)
  • Fixed shutdown activations leaving stale grain directory entries. (#​10206)
  • Made the activation collector safer under memory pressure and when there are no valid candidates. (#​10113)
  • Stopped and awaited PlacementService workers during silo shutdown. (#​9993)
  • Prevented persistent stream pulling agents from accepting work or processing queue reads after shutdown starts. (#​10036)
  • Stabilized late lifecycle registration scheduling to avoid lock/scheduler races. (#​10135)
  • Added explicit initial connectivity validation before a silo becomes active. (#​10153)
  • Avoided tracking deactivated grains in activation repartitioner state and fixed repartitioning waits for inactive migrations. (#​10061, #​10130)
  • Reduced runtime hot-path overhead by avoiding per-activation scheduler logger fields, reducing request monitoring memory use, avoiding context capture in outgoing calls, optimizing response completion sources, simplifying InsideRuntimeClient response handling, and removing locks from activation response processing. (#​10118, #​10119, #​10129, #​10127, #​10128, #​10139, #​10141)
  • Broadened the default client connection retry filter to cover more transient startup and gateway failures. (#​10140)

Grain directory, routing, and cache correctness

  • Added TTL cleanup to the grain directory cache and diagnostic hooks for cache state changes. (#​10055)
  • Added a fast-path message destination cache for grain calls, with invalidation on activation, connection, gateway, and client state changes. (#​10064)
  • Capped cache invalidation header growth during message send and deserialization. (#​10078, #​10105)
  • Set target silo metadata correctly on cached silo connections. (#​10080)
  • Capped distributed directory ownership transfer batch sizes and split large transfer payloads into multiple messages. (#​10047, #​10053)
  • Fixed distributed directory recovery handoff for grains activating during ownership transfer. (#​10082)
  • Added distributed remote grain directory compatibility for rolling upgrades and a regression test for directory migration joins. (#​10050, #​10049)
  • Fixed LocalGrainDirectory membership reconciliation using snapshot-based processing, membership-version-aware stale cleanup, and membership refresh before directory RPC routing. (#​10086, #​10087, #​10088)
  • Simplified LocalGrainDirectory membership processing after the reconciliation changes. (#​10089)
  • Refined directory forwarding retry checks, removed a problematic directory failure forwarding optimization, and bounded retries after directory activation failures. (#​10092, #​10095, #​10094)
    ... (truncated)

Commits viewable in compare view.

Updated Microsoft.Orleans.Clustering.Cosmos from 10.1.0 to 10.2.0.

Release notes

Sourced from Microsoft.Orleans.Clustering.Cosmos's releases.

10.2.0

Orleans v10.2.0 focuses on runtime reliability, grain directory correctness, observability, Durable Jobs and journaling improvements, provider fixes, and a broad test/CI stabilization push.

Highlights

Breaking changes and notable behavior changes

  • Redis multiplexer ownership: Redis providers using a DI-provided IConnectionMultiplexer via ServiceKey no longer dispose that shared multiplexer on shutdown. Providers which create their own multiplexer still own and dispose it. (#​10146, #​10182)
  • Metrics meter access: the static Orleans meter was removed. Code which referenced Orleans.Runtime.Instruments.Meter should resolve OrleansInstruments from DI and use its Meter instead. (#​10201)
  • Journaling default format: JSON Lines is now the default Orleans.Journaling storage format. Existing journals with stored format metadata continue to be read correctly; legacy entries without metadata are treated as OrleansBinary and migrate on snapshot write. Set JournaledStateManagerOptions.JournalFormatKey = "orleans-binary" to retain the old format for new writes. (#​9973)
  • Silo startup lifecycle: a new ValidateInitialConnectivity stage runs before BecomeActive, keeping silos in Joining until initial peer connectivity is validated. (#​10153)
  • Reminder lifecycle: reminder delivery is gated on the silo becoming active, while reminder register/update/unregister operations remain available later into shutdown. (#​10154, #​10155)
  • Client connection retries: the default client retry filter now retries additional transient gateway/startup failures, including OrleansMessageRejectionException and ConnectionFailedException, with a longer default retry window. (#​10140)
  • Directory activation-failure retries: retry loops after directory activation failures are now bounded by the normal message forward-count budget. (#​10094)
  • Diagnostics listener name: GrainLifecycleEvents.ListenerName is now correctly "Orleans.GrainLifecycle"; code subscribing by the previous string literal should update. (#​10121)
  • Durable Jobs storage providers: custom Durable Jobs journaling providers need catalog support via IJournalStorageCatalog. (#​10112, #​10148)
  • NATS options validation: invalid StorageType enum values are rejected at startup. (#​10176)

Runtime, activation, placement, and lifecycle

  • Fixed a stateless-worker reactivation race and a crash when cancelling indefinite keep-alive tickets. (#​10016, #​10014)
  • Fixed stuck deactivation recovery by removing stranded activations from the catalog, unregistering directory entries, and avoiding stale forwarding loops. (#​10046)
  • Fixed shutdown activations leaving stale grain directory entries. (#​10206)
  • Made the activation collector safer under memory pressure and when there are no valid candidates. (#​10113)
  • Stopped and awaited PlacementService workers during silo shutdown. (#​9993)
  • Prevented persistent stream pulling agents from accepting work or processing queue reads after shutdown starts. (#​10036)
  • Stabilized late lifecycle registration scheduling to avoid lock/scheduler races. (#​10135)
  • Added explicit initial connectivity validation before a silo becomes active. (#​10153)
  • Avoided tracking deactivated grains in activation repartitioner state and fixed repartitioning waits for inactive migrations. (#​10061, #​10130)
  • Reduced runtime hot-path overhead by avoiding per-activation scheduler logger fields, reducing request monitoring memory use, avoiding context capture in outgoing calls, optimizing response completion sources, simplifying InsideRuntimeClient response handling, and removing locks from activation response processing. (#​10118, #​10119, #​10129, #​10127, #​10128, #​10139, #​10141)
  • Broadened the default client connection retry filter to cover more transient startup and gateway failures. (#​10140)

Grain directory, routing, and cache correctness

  • Added TTL cleanup to the grain directory cache and diagnostic hooks for cache state changes. (#​10055)
  • Added a fast-path message destination cache for grain calls, with invalidation on activation, connection, gateway, and client state changes. (#​10064)
  • Capped cache invalidation header growth during message send and deserialization. (#​10078, #​10105)
  • Set target silo metadata correctly on cached silo connections. (#​10080)
  • Capped distributed directory ownership transfer batch sizes and split large transfer payloads into multiple messages. (#​10047, #​10053)
  • Fixed distributed directory recovery handoff for grains activating during ownership transfer. (#​10082)
  • Added distributed remote grain directory compatibility for rolling upgrades and a regression test for directory migration joins. (#​10050, #​10049)
  • Fixed LocalGrainDirectory membership reconciliation using snapshot-based processing, membership-version-aware stale cleanup, and membership refresh before directory RPC routing. (#​10086, #​10087, #​10088)
  • Simplified LocalGrainDirectory membership processing after the reconciliation changes. (#​10089)
  • Refined directory forwarding retry checks, removed a problematic directory failure forwarding optimization, and bounded retries after directory activation failures. (#​10092, #​10095, #​10094)
    ... (truncated)

Commits viewable in compare view.

Updated Microsoft.Orleans.Persistence.AzureStorage from 10.1.0 to 10.2.0.

Release notes

Sourced from Microsoft.Orleans.Persistence.AzureStorage's releases.

10.2.0

Orleans v10.2.0 focuses on runtime reliability, grain directory correctness, observability, Durable Jobs and journaling improvements, provider fixes, and a broad test/CI stabilization push.

Highlights

Breaking changes and notable behavior changes

  • Redis multiplexer ownership: Redis providers using a DI-provided IConnectionMultiplexer via ServiceKey no longer dispose that shared multiplexer on shutdown. Providers which create their own multiplexer still own and dispose it. (#​10146, #​10182)
  • Metrics meter access: the static Orleans meter was removed. Code which referenced Orleans.Runtime.Instruments.Meter should resolve OrleansInstruments from DI and use its Meter instead. (#​10201)
  • Journaling default format: JSON Lines is now the default Orleans.Journaling storage format. Existing journals with stored format metadata continue to be read correctly; legacy entries without metadata are treated as OrleansBinary and migrate on snapshot write. Set JournaledStateManagerOptions.JournalFormatKey = "orleans-binary" to retain the old format for new writes. (#​9973)
  • Silo startup lifecycle: a new ValidateInitialConnectivity stage runs before BecomeActive, keeping silos in Joining until initial peer connectivity is validated. (#​10153)
  • Reminder lifecycle: reminder delivery is gated on the silo becoming active, while reminder register/update/unregister operations remain available later into shutdown. (#​10154, #​10155)
  • Client connection retries: the default client retry filter now retries additional transient gateway/startup failures, including OrleansMessageRejectionException and ConnectionFailedException, with a longer default retry window. (#​10140)
  • Directory activation-failure retries: retry loops after directory activation failures are now bounded by the normal message forward-count budget. (#​10094)
  • Diagnostics listener name: GrainLifecycleEvents.ListenerName is now correctly "Orleans.GrainLifecycle"; code subscribing by the previous string literal should update. (#​10121)
  • Durable Jobs storage providers: custom Durable Jobs journaling providers need catalog support via IJournalStorageCatalog. (#​10112, #​10148)
  • NATS options validation: invalid StorageType enum values are rejected at startup. (#​10176)

Runtime, activation, placement, and lifecycle

  • Fixed a stateless-worker reactivation race and a crash when cancelling indefinite keep-alive tickets. (#​10016, #​10014)
  • Fixed stuck deactivation recovery by removing stranded activations from the catalog, unregistering directory entries, and avoiding stale forwarding loops. (#​10046)
  • Fixed shutdown activations leaving stale grain directory entries. (#​10206)
  • Made the activation collector safer under memory pressure and when there are no valid candidates. (#​10113)
  • Stopped and awaited PlacementService workers during silo shutdown. (#​9993)
  • Prevented persistent stream pulling agents from accepting work or processing queue reads after shutdown starts. (#​10036)
  • Stabilized late lifecycle registration scheduling to avoid lock/scheduler races. (#​10135)
  • Added explicit initial connectivity validation before a silo becomes active. (#​10153)
  • Avoided tracking deactivated grains in activation repartitioner state and fixed repartitioning waits for inactive migrations. (#​10061, #​10130)
  • Reduced runtime hot-path overhead by avoiding per-activation scheduler logger fields, reducing request monitoring memory use, avoiding context capture in outgoing calls, optimizing response completion sources, simplifying InsideRuntimeClient response handling, and removing locks from activation response processing. (#​10118, #​10119, #​10129, #​10127, #​10128, #​10139, #​10141)
  • Broadened the default client connection retry filter to cover more transient startup and gateway failures. (#​10140)

Grain directory, routing, and cache correctness

  • Added TTL cleanup to the grain directory cache and diagnostic hooks for cache state changes. (#​10055)
  • Added a fast-path message destination cache for grain calls, with invalidation on activation, connection, gateway, and client state changes. (#​10064)
  • Capped cache invalidation header growth during message send and deserialization. (#​10078, #​10105)
  • Set target silo metadata correctly on cached silo connections. (#​10080)
  • Capped distributed directory ownership transfer batch sizes and split large transfer payloads into multiple messages. (#​10047, #​10053)
  • Fixed distributed directory recovery handoff for grains activating during ownership transfer. (#​10082)
  • Added distributed remote grain directory compatibility for rolling upgrades and a regression test for directory migration joins. (#​10050, #​10049)
  • Fixed LocalGrainDirectory membership reconciliation using snapshot-based processing, membership-version-aware stale cleanup, and membership refresh before directory RPC routing. (#​10086, #​10087, #​10088)
  • Simplified LocalGrainDirectory membership processing after the reconciliation changes. (#​10089)
  • Refined directory forwarding retry checks, removed a problematic directory failure forwarding optimization, and bounded retries after directory activation failures. (#​10092, #​10095, #​10094)
    ... (truncated)

Commits viewable in compare view.

Updated Microsoft.Orleans.Persistence.Cosmos from 10.1.0 to 10.2.0.

Release notes

Sourced from Microsoft.Orleans.Persistence.Cosmos's releases.

10.2.0

Orleans v10.2.0 focuses on runtime reliability, grain directory correctness, observability, Durable Jobs and journaling improvements, provider fixes, and a broad test/CI stabilization push.

Highlights

Breaking changes and notable behavior changes

  • Redis multiplexer ownership: Redis providers using a DI-provided IConnectionMultiplexer via ServiceKey no longer dispose that shared multiplexer on shutdown. Providers which create their own multiplexer still own and dispose it. (#​10146, #​10182)
  • Metrics meter access: the static Orleans meter was removed. Code which referenced Orleans.Runtime.Instruments.Meter should resolve OrleansInstruments from DI and use its Meter instead. (#​10201)
  • Journaling default format: JSON Lines is now the default Orleans.Journaling storage format. Existing journals with stored format metadata continue to be read correctly; legacy entries without metadata are treated as OrleansBinary and migrate on snapshot write. Set JournaledStateManagerOptions.JournalFormatKey = "orleans-binary" to retain the old format for new writes. (#​9973)
  • Silo startup lifecycle: a new ValidateInitialConnectivity stage runs before BecomeActive, keeping silos in Joining until initial peer connectivity is validated. (#​10153)
  • Reminder lifecycle: reminder delivery is gated on the silo becoming active, while reminder register/update/unregister operations remain available later into shutdown. (#​10154, #​10155)
  • Client connection retries: the default client retry filter now retries additional transient gateway/startup failures, including OrleansMessageRejectionException and ConnectionFailedException, with a longer default retry window. (#​10140)
  • Directory activation-failure retries: retry loops after directory activation failures are now bounded by the normal message forward-count budget. (#​10094)
  • Diagnostics listener name: GrainLifecycleEvents.ListenerName is now correctly "Orleans.GrainLifecycle"; code subscribing by the previous string literal should update. (#​10121)
  • Durable Jobs storage providers: custom Durable Jobs journaling providers need catalog support via IJournalStorageCatalog. (#​10112, #​10148)
  • NATS options validation: invalid StorageType enum values are rejected at startup. (#​10176)

Runtime, activation, placement, and lifecycle

  • Fixed a stateless-worker reactivation race and a crash when cancelling indefinite keep-alive tickets. (#​10016, #​10014)
  • Fixed stuck deactivation recovery by removing stranded activations from the catalog, unregistering directory entries, and avoiding stale forwarding loops. (#​10046)
  • Fixed shutdown activations leaving stale grain directory entries. (#​10206)
  • Made the activation collector safer under memory pressure and when there are no valid candidates. (#​10113)
  • Stopped and awaited PlacementService workers during silo shutdown. (#​9993)
  • Prevented persistent stream pulling agents from accepting work or processing queue reads after shutdown starts. (#​10036)
  • Stabilized late lifecycle registration scheduling to avoid lock/scheduler races. (#​10135)
  • Added explicit initial connectivity validation before a silo becomes active. (#​10153)
  • Avoided tracking deactivated grains in activation repartitioner state and fixed repartitioning waits for inactive migrations. (#​10061, #​10130)
  • Reduced runtime hot-path overhead by avoiding per-activation scheduler logger fields, reducing request monitoring memory use, avoiding context capture in outgoing calls, optimizing response completion sources, simplifying InsideRuntimeClient response handling, and removing locks from activation response processing. (#​10118, #​10119, #​10129, #​10127, #​10128, #​10139, #​10141)
  • Broadened the default client connection retry filter to cover more transient startup and gateway failures. (#​10140)

Grain directory, routing, and cache correctness

  • Added TTL cleanup to the grain directory cache and diagnostic hooks for cache state changes. (#​10055)
  • Added a fast-path message destination cache for grain calls, with invalidation on activation, connection, gateway, and client state changes. (#​10064)
  • Capped cache invalidation header growth during message send and deserialization. (#​10078, #​10105)
  • Set target silo metadata correctly on cached silo connections. (#​10080)
  • Capped distributed directory ownership transfer batch sizes and split large transfer payloads into multiple messages. (#​10047, #​10053)
  • Fixed distributed directory recovery handoff for grains activating during ownership transfer. (#​10082)
  • Added distributed remote grain directory compatibility for rolling upgrades and a regression test for directory migration joins. (#​10050, #​10049)
  • Fixed LocalGrainDirectory membership reconciliation using snapshot-based processing, membership-version-aware stale cleanup, and membership refresh before directory RPC routing. (#​10086, #​10087, #​10088)
  • Simplified LocalGrainDirectory membership processing after the reconciliation changes. (#​10089)
  • Refined directory forwarding retry checks, removed a problematic directory failure forwarding optimization, and bounded retries after directory activation failures. (#​10092, #​10095, #​10094)
    ... (truncated)

Commits viewable in compare view.

Updated Microsoft.Orleans.Reminders from 10.1.0 to 10.2.0.

Release notes

Sourced from Microsoft.Orleans.Reminders's releases.

10.2.0

Orleans v10.2.0 focuses on runtime reliability, grain directory correctness, observability, Durable Jobs and journaling improvements, provider fixes, and a broad test/CI stabilization push.

Highlights

Breaking changes and notable behavior changes

  • Redis multiplexer ownership: Redis providers using a DI-provided IConnectionMultiplexer via ServiceKey no longer dispose that shared multiplexer on shutdown. Providers which create their own multiplexer still own and dispose it. (#​10146, #​10182)
  • Metrics meter access: the static Orleans meter was removed. Code which referenced Orleans.Runtime.Instruments.Meter should resolve OrleansInstruments from DI and use its Meter instead. (#​10201)
  • Journaling default format: JSON Lines is now the default Orleans.Journaling storage format. Existing journals with stored format metadata continue to be read correctly; legacy entries without metadata are treated as OrleansBinary and migrate on snapshot write. Set JournaledStateManagerOptions.JournalFormatKey = "orleans-binary" to retain the old format for new writes. (#​9973)
  • Silo startup lifecycle: a new ValidateInitialConnectivity stage runs before BecomeActive, keeping silos in Joining until initial peer connectivity is validated. (#​10153)
  • Reminder lifecycle: reminder delivery is gated on the silo becoming active, while reminder register/update/unregister operations remain available later into shutdown. (#​10154, #​10155)
  • Client connection retries: the default client retry filter now retries additional transient gateway/startup failures, including OrleansMessageRejectionException and ConnectionFailedException, with a longer default retry window. (#​10140)
  • Directory activation-failure retries: retry loops after directory activation failures are now bounded by the normal message forward-count budget. (#​10094)
  • Diagnostics listener name: GrainLifecycleEvents.ListenerName is now correctly "Orleans.GrainLifecycle"; code subscribing by the previous string literal should update. (#​10121)
  • Durable Jobs storage providers: custom Durable Jobs journaling providers need catalog support via IJournalStorageCatalog. (#​10112, #​10148)
  • NATS options validation: invalid StorageType enum values are rejected at startup. (#​10176)

Runtime, activation, placement, and lifecycle

  • Fixed a stateless-worker reactivation race and a crash when cancelling indefinite keep-alive tickets. (#​10016, #​10014)
  • Fixed stuck deactivation recovery by removing stranded activations from the catalog, unregistering directory entries, and avoiding stale forwarding loops. (#​10046)
  • Fixed shutdown activations leaving stale grain directory entries. (#​10206)
  • Made the activation collector safer under memory pressure and when there are no valid candidates. (#​10113)
  • Stopped and awaited PlacementService workers during silo shutdown. (#​9993)
  • Prevented persistent stream pulling agents from accepting work or processing queue reads after shutdown starts. (#​10036)
  • Stabilized late lifecycle registration scheduling to avoid lock/scheduler races. (#​10135)
  • Added explicit initial connectivity validation before a silo becomes active. (#​10153)
  • Avoided tracking deactivated grains in activation repartitioner state and fixed repartitioning waits for inactive migrations. (#​10061, #​10130)
  • Reduced runtime hot-path overhead by avoiding per-activation scheduler logger fields, reducing request monitoring memory use, avoiding context capture in outgoing calls, optimizing response completion sources, simplifying InsideRuntimeClient response handling, and removing locks from activation response processing. (#​10118, #​10119, #​10129, #​10127, #​10128, #​10139, #​10141)
  • Broadened the default client connection retry filter to cover more transient startup and gateway failures. (#​10140)

Grain directory, routing, and cache correctness

  • Added TTL cleanup to the grain directory cache and diagnostic hooks for cache state changes. (#​10055)
  • Added a fast-path message destination cache for grain calls, with invalidation on activation, connection, gateway, and client state changes. (#​10064)
  • Capped cache invalidation header growth during message send and deserialization. (#​10078, #​10105)
  • Set target silo metadata correctly on cached silo connections. (#​10080)
  • Capped distributed directory ownership transfer batch sizes and split large transfer payloads into multiple messages. (#​10047, #​10053)
  • Fixed distributed directory recovery handoff for grains activating during ownership transfer. (#​10082)
  • Added distributed remote grain directory compatibility for rolling upgrades and a regression test for directory migration joins. (#​10050, #​10049)
  • Fixed LocalGrainDirectory membership reconciliation using snapshot-based processing, membership-version-aware stale cleanup, and membership refresh before directory RPC routing. (#​10086, #​10087, #​10088)
  • Simplified LocalGrainDirectory membership processing after the reconciliation changes. (#​10089)
  • Refined directory forwarding retry checks, removed a problematic directory failure forwarding optimization, and bounded retries after directory activation failures. (#​10092, #​10095, #​10094)
    ... (truncated)

Commits viewable in compare view.

Updated Microsoft.Orleans.Reminders.AzureStorage from 10.1.0 to 10.2.0.

Release notes

Sourced from Microsoft.Orleans.Reminders.AzureStorage's releases.

10.2.0

Orleans v10.2.0 focuses on runtime reliability, grain directory correctness, observability, Durable Jobs and journaling improvements, provider fixes, and a broad test/CI stabilization push.

Highlights

Breaking changes and notable behavior changes

  • Redis multiplexer ownership: Redis providers using a DI-provided IConnectionMultiplexer via ServiceKey no longer dispose that shared multiplexer on shutdown. Providers which create their own multiplexer still own and dispose it. (#​10146, #​10182)
  • Metrics meter access: the static Orleans meter was removed. Code which referenced Orleans.Runtime.Instruments.Meter should resolve OrleansInstruments from DI and use its Meter instead. (#​10201)
  • Journaling default format: JSON Lines is now the default Orleans.Journaling storage format. Existing journals with stored format metadata continue to be read correctly; legacy entries without metadata are treated as OrleansBinary and migrate on snapshot write. Set JournaledStateManagerOptions.JournalFormatKey = "orleans-binary" to retain the old format for new writes. (#​9973)
  • Silo startup lifecycle: a new ValidateInitialConnectivity stage runs before BecomeActive, keeping silos in Joining until initial peer connectivity is validated. (#​10153)
  • Reminder lifecycle: reminder delivery is gated on the silo becoming active, while reminder register/update/unregister operations remain available later into shutdown. (#​10154, #​10155)
  • Client connection retries: the default client retry filter now retries additional transient gateway/startup failures, including OrleansMessageRejectionException and ConnectionFailedException, with a longer default retry window. (#​10140)
  • Directory activation-failure retries: retry loops after directory activation failures are now bounded by the normal message forward-count budget. (#​10094)
  • Diagnostics listener name: GrainLifecycleEvents.ListenerName is now correctly "Orleans.GrainLifecycle"; code subscribing by the previous string literal should update. (#​10121)
  • Durable Jobs storage providers: custom Durable Jobs journaling providers need catalog support via IJournalStorageCatalog. (#​10112, #​10148)
  • NATS options validation: invalid StorageType enum values are rejected at startup. (#​10176)

Runtime, activation, placement, and lifecycle

  • Fixed a stateless-worker reactivation race and a crash when cancelling indefinite keep-alive tickets. (#​10016, #​10014)
  • Fixed stuck deactivation recovery by removing stranded activations from the catalog, unregistering directory entries, and avoiding stale forwarding loops. (#​10046)
  • Fixed shutdown activations leaving stale grain directory entries. (#​10206)
  • Made the activation collector safer under memory pressure and when there are no valid candidates. (#​10113)
  • Stopped and awaited PlacementService workers during silo shutdown. (#​9993)
  • Prevented persistent stream pulling agents from accepting work or processing queue reads after shutdown starts. (#​10036)
  • Stabilized late lifecycle registration scheduling to avoid lock/sche...

Description has been truncated

Bumps Microsoft.Orleans.BroadcastChannel from 10.1.0 to 10.2.0
Bumps Microsoft.Orleans.Clustering.AzureStorage from 10.1.0 to 10.2.0
Bumps Microsoft.Orleans.Clustering.Cosmos from 10.1.0 to 10.2.0
Bumps Microsoft.Orleans.Persistence.AzureStorage from 10.1.0 to 10.2.0
Bumps Microsoft.Orleans.Persistence.Cosmos from 10.1.0 to 10.2.0
Bumps Microsoft.Orleans.Reminders from 10.1.0 to 10.2.0
Bumps Microsoft.Orleans.Reminders.AzureStorage from 10.1.0 to 10.2.0
Bumps Microsoft.Orleans.Server from 10.1.0 to 10.2.0
Bumps Microsoft.Orleans.Streaming from 10.1.0 to 10.2.0
Bumps Microsoft.Orleans.Streaming.EventHubs from 10.1.0 to 10.2.0

---
updated-dependencies:
- dependency-name: Microsoft.Orleans.BroadcastChannel
  dependency-version: 10.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: orleans
- dependency-name: Microsoft.Orleans.BroadcastChannel
  dependency-version: 10.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: orleans
- dependency-name: Microsoft.Orleans.Clustering.AzureStorage
  dependency-version: 10.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: orleans
- dependency-name: Microsoft.Orleans.Clustering.Cosmos
  dependency-version: 10.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: orleans
- dependency-name: Microsoft.Orleans.Persistence.AzureStorage
  dependency-version: 10.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: orleans
- dependency-name: Microsoft.Orleans.Persistence.Cosmos
  dependency-version: 10.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: orleans
- dependency-name: Microsoft.Orleans.Reminders
  dependency-version: 10.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: orleans
- dependency-name: Microsoft.Orleans.Reminders.AzureStorage
  dependency-version: 10.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: orleans
- dependency-name: Microsoft.Orleans.Server
  dependency-version: 10.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: orleans
- dependency-name: Microsoft.Orleans.Streaming
  dependency-version: 10.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: orleans
- dependency-name: Microsoft.Orleans.Streaming.EventHubs
  dependency-version: 10.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: orleans
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added .NET Pull requests that update .NET code dependencies Pull requests that update a dependency file labels Jun 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file .NET Pull requests that update .NET code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants