Crate reconcile

Crate reconcile 

Source
Expand description

This crate provides a key-data map structure HRTree that can be used together with the reconciliation Service. Different instances can talk together over UDP to efficiently reconcile their differences. All the data is available locally in all instances, and the user can be notified of changes to the collection with an insertion hook. The protocol allows finding a difference over millions of elements with a limited number of round-trips. It should also work well to populate an instance from scratch from other instances.

Re-exports§

pub use diff::HashRangeQueryable;
pub use hrtree::HRTree;
pub use service::DatedMaybeTombstone;
pub use service::Service;

Modules§

diff
Provides two traits: HashRangeQueryable and Diffable.
gen_ip
Provides utility methods to generate IP addresses from a CIDR.
hrtree
Provides a Hash Range Tree, a key-value store based on a BTree structure.
hrtree_iter
Module hrtree_iter provides iteration utilities for HRTree<K, V>, including:
map
Provides the Map trait and the related implementation for HRTree.
reconcilable
Provides the Reconcilable trait.
service
Provides the Service, a wrapper to a key-value map to enable reconciliation between different instances over a network.