From 9944784ab4ed218e8ff083e6a4f60bee6fcaf997 Mon Sep 17 00:00:00 2001 From: sakno Date: Fri, 10 May 2024 11:02:23 +0300 Subject: [PATCH] Release 5.5.1 --- CHANGELOG.md | 7 +++++++ README.md | 13 ++++--------- .../DotNext.AspNetCore.Cluster.csproj | 2 +- .../DotNext.Net.Cluster/DotNext.Net.Cluster.csproj | 2 +- .../Net/Cluster/Consensus/Raft/RaftCluster.cs | 2 +- .../Net/Cluster/Consensus/Raft/StandbyState.cs | 1 - 6 files changed, 14 insertions(+), 13 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8d21f6fc6..95824d8a0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,13 @@ Release Notes ==== +# 05-10-2024 +DotNext.Net.Cluster 5.5.1 +* Fixed behavior of `IRaftCluster.ConsensusToken` when a node is in **standby** mode + +DotNext.AspNetCore.Cluster 5.5.1 +* Updated dependencies + # 05-05-2024 DotNext.Threading 5.3.1 * Fixed race condition caused by `LinkedCancellationTokenSource.CancellationOrigin` property that leads to incorrectly returned cancellation token diff --git a/README.md b/README.md index 17acd18e2..1cbb9d71c 100644 --- a/README.md +++ b/README.md @@ -44,17 +44,12 @@ All these things are implemented in 100% managed code on top of existing .NET AP * [NuGet Packages](https://www.nuget.org/profiles/rvsakno) # What's new -Release Date: 05-05-2024 +Release Date: 05-10-2024 -DotNext.Threading 5.3.1 -* Fixed race condition caused by `LinkedCancellationTokenSource.CancellationOrigin` property that leads to incorrectly returned cancellation token +DotNext.Net.Cluster 5.5.1 +* Fixed behavior of `IRaftCluster.ConsensusToken` when a node is in **standby** mode -DotNext.Net.Cluster 5.5.0 -* Introduced `IRaftCluster.WaitForLeadershipAsync` method that waits for the local node to be elected as a leader of the cluster -* Fixed [233](https://github.com/dotnet/dotNext/issues/233) -* Fixed correctness of appending no-op entry by a leader used as a write barrier - -DotNext.AspNetCore.Cluster 5.5.0 +DotNext.AspNetCore.Cluster 5.5.1 * Updated dependencies Changelog for previous versions located [here](./CHANGELOG.md). diff --git a/src/cluster/DotNext.AspNetCore.Cluster/DotNext.AspNetCore.Cluster.csproj b/src/cluster/DotNext.AspNetCore.Cluster/DotNext.AspNetCore.Cluster.csproj index ba9dde88f..24b5d64d3 100644 --- a/src/cluster/DotNext.AspNetCore.Cluster/DotNext.AspNetCore.Cluster.csproj +++ b/src/cluster/DotNext.AspNetCore.Cluster/DotNext.AspNetCore.Cluster.csproj @@ -8,7 +8,7 @@ true true nullablePublicOnly - 5.5.0 + 5.5.1 .NET Foundation and Contributors .NEXT Family of Libraries diff --git a/src/cluster/DotNext.Net.Cluster/DotNext.Net.Cluster.csproj b/src/cluster/DotNext.Net.Cluster/DotNext.Net.Cluster.csproj index efd5b8171..f90f49d3c 100644 --- a/src/cluster/DotNext.Net.Cluster/DotNext.Net.Cluster.csproj +++ b/src/cluster/DotNext.Net.Cluster/DotNext.Net.Cluster.csproj @@ -8,7 +8,7 @@ enable true nullablePublicOnly - 5.5.0 + 5.5.1 .NET Foundation and Contributors .NEXT Family of Libraries diff --git a/src/cluster/DotNext.Net.Cluster/Net/Cluster/Consensus/Raft/RaftCluster.cs b/src/cluster/DotNext.Net.Cluster/Net/Cluster/Consensus/Raft/RaftCluster.cs index e6b92d7e6..513d9a876 100644 --- a/src/cluster/DotNext.Net.Cluster/Net/Cluster/Consensus/Raft/RaftCluster.cs +++ b/src/cluster/DotNext.Net.Cluster/Net/Cluster/Consensus/Raft/RaftCluster.cs @@ -610,7 +610,7 @@ protected async ValueTask> AppendEntriesAsync(Cl } // prevent Follower state transition during processing of received log entries - using (new FollowerState.TransitionSuppressionScope(state as FollowerState)) + using (new ConsensusTrackerState.TransitionSuppressionScope(state as ConsensusTrackerState)) { /* * AppendAsync is called with skipCommitted=true because HTTP response from the previous diff --git a/src/cluster/DotNext.Net.Cluster/Net/Cluster/Consensus/Raft/StandbyState.cs b/src/cluster/DotNext.Net.Cluster/Net/Cluster/Consensus/Raft/StandbyState.cs index 643829563..fc5fb0797 100644 --- a/src/cluster/DotNext.Net.Cluster/Net/Cluster/Consensus/Raft/StandbyState.cs +++ b/src/cluster/DotNext.Net.Cluster/Net/Cluster/Consensus/Raft/StandbyState.cs @@ -62,7 +62,6 @@ private async Task Track() { using var cts = Interlocked.Exchange(ref consensusTokenSource, null); cts.Cancel(throwOnFirstException: false); - cts.Dispose(); } // Ignored if timeout tracking is aborted by OperationCanceledException.