From 68ce8c5f340f8ccc935180bd96d8d2da6e81bcfe Mon Sep 17 00:00:00 2001 From: Branden J Brown Date: Tue, 11 Mar 2025 09:27:45 -0400 Subject: [PATCH] don't transmit nil predecessors --- chord/httpnode/httpnode.go | 2 +- chord/httpnode/server.go | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/chord/httpnode/httpnode.go b/chord/httpnode/httpnode.go index 19db9d9..bdc5672 100644 --- a/chord/httpnode/httpnode.go +++ b/chord/httpnode/httpnode.go @@ -43,5 +43,5 @@ func readResponse[T any](r *http.Response) (x T, err error) { type neighbors struct { Succ []netip.AddrPort `json:"succ"` - Pred netip.AddrPort `json:"pred"` + Pred netip.AddrPort `json:"pred,omitzero"` } diff --git a/chord/httpnode/server.go b/chord/httpnode/server.go index 7dcf2ef..4c55101 100644 --- a/chord/httpnode/server.go +++ b/chord/httpnode/server.go @@ -13,6 +13,8 @@ type Node struct { // self is the node topology this server represents. self *chord.Node // client is the Chord client for forwarding queries to other nodes. + // TODO(branden): really we should have a client per peer so that we can + // interchange protocols client chord.Client }