Skip to content

🛠️ [TASK]: Hermes needs to be able to sync the document storage with other nodes #690

@rafal-ch

Description

@rafal-ch

This is the exploratory issue. Feel free to add more detailed sub-issues.

Summary

Hermes node can be disconnected/shutdown (or unavailable for any other reason) while other nodes are on-line and are actively accepting new documents and storing them in IPFS.

When the node that was unavailable is restarted, it should use the sparse-merkle tree to discover which documents it is missing and request them from other nodes. This process should continue until the tree root matches the one of the other nodes.

Breakdown

  1. Build a sparse merkle tree from the published docs
  2. Store the merkle tree locally
  3. Implement the mechanism to discover differences in the state
  4. Implement the mechanism to retrieve missing documents

Protocol

docs/src/architecture/08_concepts/document_sync/protocol_spec.md

Sub-issues

Metadata

Metadata

Assignees

No one assigned

    Labels

    squad: hermeticsHermes Backend, System Development & Integration Team

    Type

    Projects

    Status

    🏗 In progress

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions