Tracking: Enable zebra-scan
to run as a separate independent process from zebrad
#8573
Closed
9 tasks done
Labels
A-blockchain-scanner
Area: Blockchain scanner of shielded transactions
A-compatibility
Area: Compatibility with other nodes or wallets, or standard rules
C-feature
Category: New features
C-tracking-issue
Category: This is a tracking issue for other tasks
P-Medium ⚡
S-needs-design
Status: Needs a design decision
S-needs-investigation
Status: Needs further investigation
Milestone
Motivation
In order to keep private key material outside of zebra, we need to decouple zebra-scan functionality from zebrad.
Design
Some diagrams for the design can be found in https://github.com/oxarbitrage/zebra-grpc-scan-spec/blob/main/zebra-scanner-process.md
We want to get started with the finalized state (reading from the database) part of the blockchain:
ReadStateService::init
method: Add aninit
function for a standalone ReadStateService #8520ChainTipChange
so we can use it inzebra_scanner::spawn_init
: Add acurrent_tip()
or similar toReadState
#8580zebra-scanner
#8581zebra-scanner
binary #8585zebra-scanner
binary #8586Non finalized state:
sync::init_read_state_with_syncer()
in the zebra-scanner #8633We should also evaluate if it makes sense to keep the zebra-scan crate inside the zebra repo as it is now or whether we need to move it to another repo.
Related work
This a step towards enabling zcashd deprecation by replacing the zcashd built in wallet with a zebra backed equivalent as per zcash/wallet#7 .
The text was updated successfully, but these errors were encountered: