Skip to content

Commit 48f359d

Browse files
authored
refactor consensus logging helper (#2377)
1 parent 3b2a130 commit 48f359d

2 files changed

Lines changed: 18 additions & 14 deletions

File tree

logs/log1756071034.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
## Log
2+
- Created `LogConsensus` helper inside `ConsensusCheckBuilder.Build` to consolidate debug logging for consensus evaluations.
3+
- Replaced duplicated `Logger.LogDebug` blocks in single-key and multi-key branches with calls to the helper, reducing repetition and improving maintainability.
4+
- Verified .NET 8 installation and ran core test suites (`Proto.Actor.Tests`, `Proto.Remote.Tests`, `Proto.Cluster.Tests`) to ensure no regressions.

src/Proto.Cluster/Gossip/Gossiper.cs

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -391,6 +391,18 @@ public ConsensusCheckBuilder<T> InConsensusWith<TE>(string key, Func<TE, T> getV
391391

392392
private ConsensusCheck<T> Build()
393393
{
394+
// Logs consensus outcome together with the members contributing to each key/value pair.
395+
static void LogConsensus(bool consensus, IEnumerable<(string member, string key, T value)> tuples)
396+
{
397+
Logger.LogDebug("consensus {Consensus}: {Values}", consensus, tuples
398+
.GroupBy(it => (it.key, it.value), tuple => tuple.member)
399+
.Select(
400+
grouping => $"{grouping.Key.key}:{grouping.Key.value}, " +
401+
(grouping.Count() > 1 ? grouping.Count() + " nodes" : grouping.First())
402+
).ToArray()
403+
);
404+
}
405+
394406
if (_getConsensusValues.Count == 1)
395407
{
396408
var mapToValue = MapToValue(_getConsensusValues.Single());
@@ -401,13 +413,7 @@ private ConsensusCheck<T> Build()
401413

402414
if (Logger.IsEnabled(LogLevel.Debug))
403415
{
404-
Logger.LogDebug("consensus {Consensus}: {Values}", consensus, tuples
405-
.GroupBy(it => (it.key, it.value), tuple => tuple.member)
406-
.Select(
407-
grouping => $"{grouping.Key.key}:{grouping.Key.value}, " +
408-
(grouping.Count() > 1 ? grouping.Count() + " nodes" : grouping.First())
409-
).ToArray()
410-
);
416+
LogConsensus(consensus, tuples);
411417
}
412418

413419
return consensus ? (consensus, value!) : default;
@@ -422,13 +428,7 @@ private ConsensusCheck<T> Build()
422428

423429
if (Logger.IsEnabled(LogLevel.Debug))
424430
{
425-
Logger.LogDebug("consensus {Consensus}: {Values}", consensus, tuples
426-
.GroupBy(it => (it.key, it.value), tuple => tuple.member)
427-
.Select(
428-
grouping => $"{grouping.Key.key}:{grouping.Key.value}, " +
429-
(grouping.Count() > 1 ? grouping.Count() + " nodes" : grouping.First())
430-
).ToArray()
431-
);
431+
LogConsensus(consensus, tuples);
432432
}
433433

434434
return consensus ? (consensus, value!) : default;

0 commit comments

Comments
 (0)