Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add retries for the sapling and sprout parameter downloads #3239

Closed
Tracked by #2310
teor2345 opened this issue Dec 15, 2021 · 2 comments · Fixed by #3306
Closed
Tracked by #2310

Add retries for the sapling and sprout parameter downloads #3239

teor2345 opened this issue Dec 15, 2021 · 2 comments · Fixed by #3306
Assignees
Labels
A-network Area: Network protocol updates or fixes C-bug Category: This is a bug C-testing Category: These are tests I-integration-fail Continuous integration fails, including build and test failures I-panic Zebra panics with an internal error message I-usability Zebra is hard to understand or use

Comments

@teor2345
Copy link
Contributor

teor2345 commented Dec 15, 2021

Motivation

A build of PR #3191 failed with:

Dec 15 21:55:10.404 INFO {zebrad="de6b673" net="Main"}: zebra_consensus::primitives::groth16::params: downloading Zcash Sapling parameters
Dec 15 21:56:15.162 INFO {zebrad="de6b673" net="Main"}: zebra_consensus::primitives::groth16::params: downloading Zcash Sprout parameters
The application panicked (crashed).
Message: error downloading Sprout parameter files: IoError(Custom { kind: InvalidData, error: "sprout-groth16.params failed validation: expected: e9b238411bd6c0ec4791e9d04245ec350c9c5744f5610dfcce4365d5ca49dfefd5054e371842b3f88fa1b9d7e8e075249b3ebabd167fa8b0f3161292d36c180a hashing 725523612 bytes, actual: 980ecfb84bef129ff5547a5462e29c2cbff91ecf717d17aec15c6d506a12297e28a8b1c7cac9e3faddce712d02575980e8d29ee232bba3e32f438c14c256e69f hashing 609221143 bytes from "https://download.z.cash/downloads/sprout-groth16.params.part.1 + https://download.z.cash/downloads/sprout-groth16.params.part.2\"" }). Hint: try deleting "/root/.zcash-params", then running 'zebrad download' to re-download the parameters
Location: zebra-consensus/src/primitives/groth16/params.rs:88

Designs

  • Add a retry to Zebra's parameter downloads
  • Only retry the downloads that actually failed

zcash_proofs::download_sapling_parameters(Some(PARAMETER_DOWNLOAD_TIMEOUT))

zcash_proofs::download_sprout_parameters(Some(PARAMETER_DOWNLOAD_TIMEOUT))

@teor2345 teor2345 added C-bug Category: This is a bug S-needs-triage Status: A bug report needs triage P-Medium I-panic Zebra panics with an internal error message I-integration-fail Continuous integration fails, including build and test failures A-network Area: Network protocol updates or fixes C-testing Category: These are tests labels Dec 15, 2021
@mpguerra
Copy link
Contributor

@teor2345 teor2345 added the I-usability Zebra is hard to understand or use label Dec 21, 2021
@teor2345
Copy link
Contributor Author

This caused another CI build to fail, so I'm moving it to this sprint.

@mpguerra mpguerra removed the S-needs-triage Status: A bug report needs triage label Dec 22, 2021
@oxarbitrage oxarbitrage self-assigned this Dec 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-network Area: Network protocol updates or fixes C-bug Category: This is a bug C-testing Category: These are tests I-integration-fail Continuous integration fails, including build and test failures I-panic Zebra panics with an internal error message I-usability Zebra is hard to understand or use
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants