marigold-dev / marigold-dev/pollinate

Rework Message.t

Open
#50 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
OCaml
Stars
22
Forks
3
PR merge metrics
No merged PRs in 30d

Description

`Message.t` actually contains the `recipient` which is a list.
On `failure_detector` having a list could lead to confusion.

SWIM exchanges direct messages between peers. Except when the status of a peer change (e.g. from `Alive` to `Suspicious`).

This can be easily done by creating dedicated Message.t for `failure_detector` module, or perhaps, by refactoring Message.t to something like GADT.

_Originally posted by @gsebil08 in https://github.com/marigold-dev/pollinate/pull/33#discussion_r885409627_

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the definition and usages of Message.t and the failure_detector module, then read the linked pull-request discussion for the original context. Done means the failure detector's peer-status messages no longer make the list-valued recipient confusing, using either a dedicated type or a justified refactoring of Message.t.

Written by the indexing model from the issue text.

Assessment

Tech stack
ocaml
Domain
distributed-systems
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.