You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Backport of linera-io#4706.
Merge conflicts:
* `linera-client/src/benchmark.rs`
* `linera-service/src/cli_wrappers/wallet.rs`
## Motivation
`find_received_certificates_from_validator` and
`find_received_certificates` can take a lot of time (and memory) if
there are a lot of incoming messages.
## Proposal
Only do them as part of `synchronize_from_validators`. On notification,
`prepare_chain` and when we're about to propose a block, only download
what's necessary.
Download and process sender certificates in batches, to avoid the high
memory usage.
Download them in a background task in the node service, with some sleep
time in between, to limit interference with the other node service
tasks.
(Mostly written with Claude Sonnet 4.5.)
## Test Plan
CI
A new test was added for the updated `prepare_chain`.
`test_sparse_sender_chain` already exists, and tests notification
handling with a sparse chain.
## Release Plan
- These changes should be released in a new SDK.
## Links
- PR to main: linera-io#4706
- [reviewer
checklist](https://github.com/linera-io/linera-protocol/blob/main/CONTRIBUTING.md#reviewer-checklist)
0 commit comments