hashicorp / hashicorp/memberlist

Node pointer passed to NodeJoin channel event delegate has no meta

Open
#255 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
4.1k
Forks
478
Avg merge
15h 58m
Merged PRs (30d)
3

Description

I'm trying to receive events via the Channel Event Delegate. At times, there is no meta data associated with the node when I use the Node pointer provided by NodeEvent but yet if I find the node based on the name in the memberlist it contains the meta data. This always seems to happen when the node that joins is the node receiving the channel event. The Node pointer provided by NodeEvent also points to a different memory location than the memory address associated with the node found by iterating the memberlist. It doesn't make sense to me that I would have to search the memberlist in order to access the meta data. What gives? It looks NodeEvent is providing an incomplete copy. I set the meta data in the node immediately before calling cluster join.

Contributor guide

Open the contributing guide

Research direction

Trace how the Channel Event Delegate constructs NodeEvent and passes its Node pointer when a node joins, comparing it with the node stored in memberlist. Reproduce the receiving-node join case and verify that the event's node exposes the same metadata as the memberlist entry without requiring a separate lookup.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
distributed-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.