block scanning should use block acceleration features of the TCT #1576
Labels
performance
Related to speed improvements
refactor
Improving existing system with new design
sync
V2
features required after mainnet
clients stream compact blocks and construct a filtered instance of the SCT. Currently, we're trial-decrypting every encrypted payload for every block retrieved from the full node. However, our wasm view server implementation doesn't yet take advantage of the TCT acceleration features detailed in Penumbra issue #842. In that context, we can use the fact that penumbra commits the intermediate root hash of every block, and client synchronization can stream the root hashes of each block without needing to know the individual commitments. This approach would reduce the number of Merkle hashing operations needed to insert a block into the SCT.
our scan_block implementation was built using
mock_client
as a template. Instead, we should employ the TCT's API, specifically the insert_block and insert_epoch methods, to accelerate block syncing.we've essentially built this highly optimized merkle tree (Tierd Commitment Tree) designed for efficient client sync, but we're not taking advantage of it's fundamental properties.
The text was updated successfully, but these errors were encountered: