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
linera_core::client: batch downloading of missing blobs (#4755)
Currently, when we synchronize a chain, even though we receive the
certificates in a batch to `process_certificates`, we handle them one by
one at the local node level, and if a certificate is missing blobs we
stop, download the blobs for that certificate, then retry, making the
download of the blobs sequential. This makes startup time for the client
linear in the number of certificates-with-blobs present in its initial
chains (notably, the admin chain).
We already have an ahead-of-time indicator of which blobs will be
required by the certificates, so there's no need to download them one at
a time. If we don't have some blobs marked as required by the
certificate batch, try to download them (concurrently) before proceeding
to process the batch. ~Thereafter, `BlobsNotFound` when processing the
batch is a hard error.~ `required_blob_ids()` is conservative, so we
still need to download blobs and retry if we get a `BlobsNotFound` error
thereafter.
CI.
- These changes should be backported to the latest `testnet` branch,
then
- be released in a new SDK.
0 commit comments