From 33cf55ba18f8f58ad2233a4c1302d0031df9e6bf Mon Sep 17 00:00:00 2001 From: Roger Johansson Date: Sun, 24 Aug 2025 10:06:16 +0200 Subject: [PATCH] docs: clarify gossip type relationships --- CLUSTER_MEMBERSHIP_GOSSIP.md | 8 ++++++++ logs/log1756021716.md | 6 ++++++ 2 files changed, 14 insertions(+) create mode 100644 logs/log1756021716.md diff --git a/CLUSTER_MEMBERSHIP_GOSSIP.md b/CLUSTER_MEMBERSHIP_GOSSIP.md index 45f91cc66d..934278f430 100644 --- a/CLUSTER_MEMBERSHIP_GOSSIP.md +++ b/CLUSTER_MEMBERSHIP_GOSSIP.md @@ -40,19 +40,27 @@ classDiagram class Gossiper class GossipActor class Gossip + class GossipState class MemberStateDeltaBuilder class GossipSender + class GossipRequest + class GossipResponse class IGossipTransport class GossipTransport Gossiper o-- Gossip Gossiper --> GossipActor : commands Gossiper --> GossipSender : uses GossipActor --> Gossip : merges + Gossip --> GossipState : holds Gossip --> MemberStateDeltaBuilder : uses + GossipSender ..> GossipRequest : sends + GossipSender ..> GossipResponse : receives GossipSender ..> IGossipTransport IGossipTransport <|-- GossipTransport ``` +`Gossip` maintains a `GossipState` and exchanges `GossipRequest` and `GossipResponse` messages via `IGossipTransport` to synchronize that state across nodes. + ## Detecting members Cluster providers (e.g., Kubernetes) watch the environment for running nodes and diff --git a/logs/log1756021716.md b/logs/log1756021716.md new file mode 100644 index 0000000000..bb740bdf11 --- /dev/null +++ b/logs/log1756021716.md @@ -0,0 +1,6 @@ +# Update Type Relationships in Gossip Documentation + +- Added `GossipState`, `GossipRequest`, and `GossipResponse` to the type relationship diagram to clarify how gossip state is maintained and exchanged. +- Installed .NET 8 SDK to satisfy repository requirements and run tests. + +Motivation: The `Type relationships` section omitted core message and state types, which confused the mapping between the code and documentation. Including them helps contributors and users understand how gossip messages carry state across nodes.