microsoft / microsoft/CCF

Divergence between CCF testing and IRL testing

Open
#7,834 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
876
Forks
260
Avg merge
1d 11h
Merged PRs (30d)
157

Description

Everywhere we have a node join a network, we currently start it with either a copy of the primary's snapshot directory (or after #7832 an empty directory) by default.

Both of these options are not quite right, although #7832 moves us closer.
What we observe is that teams running CCF generally have a snapshots folder from previous iterations of that node.

Hence we should make the following changes:

  • join_node should replicate the snapshot directory of a random node
  • start_in_recovery 's _add_node when passed an existing network should infer which node to start from, and reuse the ledger directories of the previous network.

Contributor guide

Open the contributing guide

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 with the join_node path and start_in_recovery's _add_node handling for an existing network; review #7832 for the empty-directory behavior. Trace how snapshot and ledger directories are selected, then verify that joins replicate a random node's snapshot and recovery reuses the previous network's ledger directories.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
distributed-systems, testing-qa
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.