This is the 2nd installment for the AccountsDb replication. Summary of Changes The basic google protocol buffer protocol for replicating updated slots and accounts. tonic/tokio is used for transporting the messages. The basic framework of the client and server for replicating slots and accounts -- the persisting of accounts in the replica-side will be done at the next PR -- right now -- the accounts are streamed to the replica-node and dumped. Replication for information about Bank is also not done in this PR -- to be addressed in the next PR to limit the change size. Functionality used by both the client and server side are encapsulated in the replica-lib crate. There is no impact to the existing validator by default. Tests: Observe the confirmed slots replicated to the replica-node. Observe the accounts for the confirmed slot are received at the replica-node side.
6 lines
201 B
Rust
6 lines
201 B
Rust
fn main() -> Result<(), Box<dyn std::error::Error>> {
|
|
// compiling protos using path on build time
|
|
tonic_build::configure().compile(&["proto/accountsdb_repl.proto"], &["proto"])?;
|
|
Ok(())
|
|
}
|