Commit Graph

2200 Commits

Author SHA1 Message Date
teor c6358b157c Reduce inbound concurrency to limit memory usage
Inbound malicious blocks can use a large amount of RAM when
deserialized. Limit inbound concurrency, so that the total amount
of RAM remains small.
2021-03-11 06:24:46 -05:00
teor 475deaf655
Adjust the crawl interval and acceptance test timeout (#1878) 2021-03-11 07:53:37 +10:00
teor ac4611ffc4 Revert "Disable unreliable `sync_large_checkpoints_testnet` (#1789)"
This reverts commit bae49e54df.
2021-03-10 02:14:09 -05:00
teor e50692bd51 CandidateSet: Add Listener Port Connections
Inbound connections on the Zcash protocol listener port
perform a handshake. If the handshake is successful, it
adds the peer to the AddressBook.
2021-03-09 23:05:18 -05:00
Jane Lusby 03aa6f671f
Implement outbound connection rate limiting - includes config rename with alias (#1855)
* Implement outbound connection rate limiting
* fix breaking change on config

Co-authored-by: teor <teor@riseup.net>
2021-03-10 01:36:05 +00:00
dependabot[bot] d1ab8e9cf4 build(deps): bump pretty_assertions from 0.6.1 to 0.7.1
Bumps [pretty_assertions](https://github.com/colin-kiegel/rust-pretty-assertions) from 0.6.1 to 0.7.1.
- [Release notes](https://github.com/colin-kiegel/rust-pretty-assertions/releases)
- [Changelog](https://github.com/colin-kiegel/rust-pretty-assertions/blob/main/CHANGELOG.md)
- [Commits](https://github.com/colin-kiegel/rust-pretty-assertions/compare/v0.6.1...v0.7.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-09 03:59:28 -05:00
dependabot[bot] 466a7f8f44 build(deps): bump indexmap from 1.6.1 to 1.6.2
Bumps [indexmap](https://github.com/bluss/indexmap) from 1.6.1 to 1.6.2.
- [Release notes](https://github.com/bluss/indexmap/releases)
- [Commits](https://github.com/bluss/indexmap/compare/1.6.1...1.6.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-09 03:48:20 -05:00
dependabot[bot] 83b9f12b05 build(deps): bump serde from 1.0.123 to 1.0.124
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.123 to 1.0.124.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.123...v1.0.124)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-09 01:23:53 -05:00
Deirdre Connolly 159d5a22f2 auto-delete manual deploy disks
If you need to keep them from being deleted, you can update them manually from the gcloud console, as the instance will not be deleted automatically.
2021-03-06 01:54:00 -05:00
Deirdre Connolly b29294b4ee Explicitly auto-delete additional cache disks
This property is supposedly set to 'true' by default, but we are still leaving disks behind. 
Perhaps because: "...if the disk is later detached from the instance, this option won't apply."
https://cloud.google.com/sdk/gcloud/reference/compute/instance-templates/create-with-container#--disk

Resolves #1845
2021-03-06 01:54:00 -05:00
Deirdre Connolly 5b1a0b8658 Update and rename zcashd-cd.yml to zcashd-manual-deploy.yml
And rename the job name
2021-03-05 23:53:51 -05:00
Deirdre Connolly c2e42d06d2 Fix grep in zcashd-cd.yml 2021-03-05 23:48:17 -05:00
Deirdre Connolly 8f9e993fab Fix grep now that `gcloud compute instance-groups list` has more than one result 2021-03-05 23:48:17 -05:00
Jane Lusby db52d63b86 change machine type to one available in central region 2021-03-05 23:20:05 -05:00
Jane Lusby 3e60f9064f fix bash syntax error 2021-03-05 23:20:05 -05:00
Jane Lusby 418d4ce9ce Apply suggestions from code review
Co-authored-by: Deirdre Connolly <deirdre@zfnd.org>
2021-03-05 23:20:05 -05:00
Jane Lusby 42c5a7559e Add manual deploy workflow for zcashd images 2021-03-05 23:20:05 -05:00
dependabot[bot] 57745facf6 build(deps): bump hex from 0.4.2 to 0.4.3
Bumps [hex](https://github.com/KokaKiwi/rust-hex) from 0.4.2 to 0.4.3.
- [Release notes](https://github.com/KokaKiwi/rust-hex/releases)
- [Commits](https://github.com/KokaKiwi/rust-hex/compare/v0.4.2...v0.4.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-04 14:44:12 -05:00
Alfredo Garcia d8165ccb4d Apply suggestions from code review
Co-authored-by: Deirdre Connolly <deirdre@zfnd.org>
2021-03-03 18:06:00 -05:00
Alfredo Garcia 97f400ff96 remove redundant step 2021-03-03 18:06:00 -05:00
Alfredo Garcia efba34786c re-enable docs CI with different firebase project IDs 2021-03-03 18:06:00 -05:00
teor 2e64409d78 Make checkpoint restart test automatically use extra blocks
Also use block 10. (The previous version only really used blocks 0-9.)
2021-03-04 08:06:31 +10:00
teor e1002ce2ce Test checkpoints on mainnet and testnet 2021-03-04 08:06:31 +10:00
teor b8cc3bfb23 Delete duplicate test code for chain verifier
This code was commented-out, so the tests weren't actually running.
2021-03-04 08:06:31 +10:00
teor 436a4e9a5b Add better diagnostics for the checkpoint restart tests 2021-03-04 08:06:31 +10:00
teor db23258216 Re-enable the checkpoint restart tests 2021-03-04 08:06:31 +10:00
Alfredo Garcia 8883543a85
Add transaction version 5 stubs (#1824)
* add transaction V5 stub
* add v5_strategy
* deduplicate version group ids
* Update comment for V5 transactions
* Add V5 transactions to non_finalized_state

Currently these are all `unimplemented!(...)`

* Fix struct matches
* Apply trivial panic message changes
* add zcash_deserialize for V5
* make all tx versions explicit in sprout and sapling nullifier functions
* match exhaustively in sprout and sapling nullifier functions
* fix matches in zebra-consensus
* fix NU5 strategy
* We're still deciding if v5 transactions support Sprout

Co-authored-by: teor <teor@riseup.net>
2021-03-04 07:56:41 +10:00
Alfredo Garcia 65fa1c6bd9 replace canopy.pdf with protocol.pdf 2021-03-02 16:07:04 -05:00
Jane Lusby e541746a50
Add initial support for NU5 to zebra (#1823)
* Add NU5 variant to NetworkUpgrade
* Add consensus branch ID for NU5
* Add network protocol versions for NU5
* Add NU5 to the protocol::version_consistent test
* Make unimplemented panic messages more specific
* Block target spacing doesn't change in NU5
* add comments for future updates for NU5

Co-authored-by: teor <teor@riseup.net>
2021-03-03 06:22:11 +10:00
dependabot[bot] 3c4cd31ce0 build(deps): bump once_cell from 1.7.1 to 1.7.2
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.7.1 to 1.7.2.
- [Release notes](https://github.com/matklad/once_cell/releases)
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.7.1...v1.7.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-02 12:37:36 -05:00
dependabot[bot] d0873da150 build(deps): bump once_cell from 1.7.0 to 1.7.1
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.7.0 to 1.7.1.
- [Release notes](https://github.com/matklad/once_cell/releases)
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.7.0...v1.7.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-02 11:28:55 -05:00
Alfredo Garcia ca44fbd7b8
upgrade ed25519-zebra to v2 (#1811)
This implements ZIP-215
2021-03-02 17:45:55 +10:00
teor 895bb43ead Clippy: Fix inconsistent struct member orders lint 2021-03-01 23:31:18 -05:00
teor f2bdebee07 Clippy: Use Option::map instead of a manual impl 2021-03-01 23:31:18 -05:00
dependabot[bot] c5958dbb3d build(deps): bump rlimit from 0.5.3 to 0.5.4
Bumps [rlimit](https://github.com/Nugine/rlimit) from 0.5.3 to 0.5.4.
- [Release notes](https://github.com/Nugine/rlimit/releases)
- [Commits](https://github.com/Nugine/rlimit/compare/v0.5.3...v0.5.4)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-01 18:32:49 -05:00
dependabot[bot] 45e22cd6eb build(deps): bump serde_json from 1.0.63 to 1.0.64
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.63 to 1.0.64.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.63...v1.0.64)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-01 18:08:29 -05:00
teor 4a812af5d7 Move design/data-flow to rfcs/drafts 2021-03-01 17:58:50 -05:00
teor 9736abdf07 Update grafana instructions 2021-03-01 16:50:06 -05:00
teor c466bd47ec Add grafana configs
Add checkpoint, block, and network health grafana configs.
2021-03-01 16:50:06 -05:00
teor 0ed372703d Fix a typo in Transaction
We parse v1, v2, and v3 transactions, but we don't validate them,
due to the Sapling checkpoint.
2021-02-25 20:42:25 -05:00
dependabot[bot] 1b02f2d327
build(deps): bump serde_json from 1.0.62 to 1.0.63 (#1819)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.62 to 1.0.63.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.62...v1.0.63)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-02-26 10:22:01 +10:00
teor 2587a4e272
Fix a peer DNS resolution edge case (#1796)
* Retry each peer DNS a few times individually

We retry each peer individually, as well as retrying if there are no
peers in the combined list.

DNS failures are correlated, so all peers can fail DNS, leaving Zebra
with a small list of custom-configured IP address peers.

Individual retries avoid this issue.

* Rename parse_peers to resolve_peers

Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com>
2021-02-26 09:06:27 +10:00
dependabot[bot] 70327dc9f5 build(deps): bump once_cell from 1.6.0 to 1.7.0
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.6.0 to 1.7.0.
- [Release notes](https://github.com/matklad/once_cell/releases)
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.6.0...v1.7.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-25 15:32:03 -05:00
teor 9c3f236075 Stop sending blocks and transactions on error 2021-02-25 08:44:57 -08:00
dependabot[bot] bf1e2bd3b8
build(deps): bump tracing from 0.1.24 to 0.1.25 (#1815)
Bumps [tracing](https://github.com/tokio-rs/tracing) from 0.1.24 to 0.1.25.
- [Release notes](https://github.com/tokio-rs/tracing/releases)
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-0.1.24...tracing-0.1.25)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-02-25 09:28:26 +10:00
teor fb6acfaff7
Update the acceptance test port range (#1812)
Windows can reserve or use ports up to 53500.

Windows and macOS sequentially allocate ephemeral ports,
starting at 41952.
2021-02-25 09:27:56 +10:00
teor 78f162733d Revert "leverage return value for propagating errors"
This reverts commit e6cb20e13f.
2021-02-24 13:07:31 -08:00
teor 72e2e83828 Revert "introduce Transition enum"
This reverts commit 6906f87ead.
2021-02-24 13:07:31 -08:00
teor a5e89f4f2b Revert "accidental drop on mustusesender"
This reverts commit 5ec8d09e0d.
2021-02-24 13:07:31 -08:00
teor d60226a3cf Revert "rustfmt"
This reverts commit 9d9734ea81.
2021-02-24 13:07:31 -08:00