Commit Graph
121 Commits
Author SHA1 Message Date
Paul Hauner 3a384d93f8 Allow state processing to compile under v0.5.0 2019-03-17 17:47:12 +11:00
Paul Hauner 3b8c1df5da Fix bug in per block processing. 2019-03-17 12:49:55 +11:00
Paul Hauner 6bd2055a0a Update block processing to v0.5.0 2019-03-17 12:25:37 +11:00
Paul Hauner ed49023b87 Merge branch 'faster-rewards' into sane-case 2019-03-14 16:11:41 +11:00
Paul Hauner 1c1c15a122 Tidy per epoch processing
- Add comments to ValidatorStatuses
- Add some checks to guard against a bad statuses list
- Remove unused attester_sets.rs file.
2019-03-14 16:00:22 +11:00
Paul Hauner 10aee6214c Tidy per_epoch_processing
Mainly renaming variables and files for readability.
2019-03-14 14:59:30 +11:00
Paul Hauner 95599ddc66 Update Attesters struct
- Renames variables
- Moves total balance calculation into struct
2019-03-14 12:49:48 +11:00
Paul Hauner a319144835 Improve crosslink reward processing 2019-03-14 12:17:43 +11:00
Paul Hauner 6f919e6f7d Add first iteration on faster rewards processing. 2019-03-14 11:53:50 +11:00
Paul Hauner 6cd3c4bd1a Add a cache for public keys to BeaconState
This allows for a fast lookup of "is this public key already in the
validator registry".
2019-03-13 16:40:28 +11:00
Paul Hauner f949919b9b Add comments to epoch_processing 2019-03-12 18:02:53 +11:00
Paul Hauner cce88c9923 Improve DX for loading validator keys from file 2019-03-12 14:39:16 +11:00
Paul Hauner f34ae86cde Add support for loading keypairs from file 2019-03-12 12:46:44 +11:00
Paul Hauner e81f1c31c9 Fix proof-of-possession issues.
These were introduced in an earlier commit
2019-03-11 19:47:33 +11:00
Paul Hauner 0b7082e2b9 Move benching_utils structs into types 2019-03-11 11:17:27 +11:00
Paul Hauner 53456a6c79 Remove last inclusion_slot(..) call 2019-03-10 21:06:40 +11:00
Paul Hauner f27b62d410 Add optimisation for epoch processing 2019-03-10 17:49:06 +11:00
Paul Hauner 89fc386264 Add extra checks for epoch benches finalization 2019-03-10 13:38:57 +11:00
Paul Hauner 3f98849362 Optimise attester slashing processing. 2019-03-10 08:55:45 +11:00
Paul Hauner e7fba3a473 Process transfers in parallel. 2019-03-10 08:36:49 +11:00
Paul Hauner 1ca99b8c4c Optimise deposits processing. 2019-03-10 08:33:17 +11:00
Paul Hauner 6250c81bb9 Fix bug in attestation verification
We were ensuring that a validator was present on the aggregation
bitfield before adding their signature to the agg pub
2019-03-09 20:09:17 +11:00
Paul Hauner 73ebb4bc2e Add incomplete per-block processing benchmarks
Still needs to fill block with operations
2019-03-09 14:11:49 +11:00
Paul Hauner 63743a962c Add per-epoch benchmarks, optimise function. 2019-03-09 10:38:53 +11:00
Paul Hauner f479beb87e Implement deposit merkle root verification.
It is currently disabled, but it's there for later.
2019-03-08 09:26:03 +11:00
Paul Hauner 1ef2652cac Add transfer processing to BeaconChain 2019-03-07 17:23:11 +11:00
Paul Hauner 15e4aabd8a Add deposit processing, fix clippy lints 2019-03-07 16:15:38 +11:00
Paul Hauner 195cb16a41 Update test_harness for spec v0.4.0 2019-03-07 14:29:21 +11:00
Paul Hauner 20ac1bf1f0 Remove unused files
They were accidentally introduced by a merge
2019-03-07 13:53:17 +11:00
Paul Hauner 93ce7b59e7 Merge branch 'master' into v0.4.0-types 2019-03-07 12:03:27 +11:00
Paul Hauner e6526c9895 Refactor winning root logic 2019-03-07 11:32:53 +11:00
Paul Hauner 5a225d2983 Update per-slot processing to v0.4.0 2019-03-07 08:37:13 +11:00
Paul Hauner 8a25fd48cf Fix per_epoch_processing so it compiles again 2019-03-06 18:57:41 +11:00
Paul Hauner 17210faf3a Start reorg of per_epoch_processing 2019-03-06 17:14:54 +11:00
Paul Hauner 521d48d37c Break per-block-processing into smaller fns
Will enable benchmarking of each individual fn
2019-03-06 17:03:18 +11:00
Paul Hauner 599948b26b Add comments to block_processing code 2019-03-06 16:24:56 +11:00
Paul Hauner 40f74c9b26 First compiling version of per-block-proc refactor 2019-03-06 15:22:45 +11:00
Paul Hauner a15ed0acd3 Start new Error structure in state_processing 2019-03-06 10:22:19 +11:00
Michael Sproul 6253167cac Update ethereum-types to 0.5 2019-03-06 10:08:35 +11:00
Paul Hauner 262e9cf0bc Additional spec updates 2019-03-05 09:51:29 +11:00
Paul Hauner 663d39739f Do project-wide s/epoch_length/slots_per_epoch/g 2019-03-04 17:51:54 +11:00
Paul Hauner ec0e13b764 Add comments to new functions 2019-03-03 15:32:44 +11:00
Paul Hauner ede5685bc2 Fix warnings and clippy lints 2019-03-03 11:47:09 +11:00
Paul Hauner 76a0ba2d6c Add attester slashing support to block processing
At spec v0.2.0
2019-03-03 11:18:12 +11:00
Paul Hauner 3561d44cbe Update per-block processing for new AggPub wrapper
AggregatePublicKey newtype was introduced in previous commit
2019-03-03 11:12:18 +11:00
Paul Hauner e2dd753f05 Merge branch 'master' into yaml-chain-tests 2019-03-02 20:18:09 +11:00
Paul Hauner 867dce34cd Remove domain constants from block_processable
The information is gather from the `spec` object, not the constants.
2019-03-02 11:26:39 +11:00
Paul Hauner 1097c8089b Add naive deposit-handling to BeaconChain 2019-03-01 16:56:27 +11:00
Paul Hauner 073be906da Remove cache operations from epoch processing.
- Don't build the next cache at all.
- Call `advance_caches()` in per-slot processing.
2019-02-28 16:37:12 +11:00
Paul Hauner af17fb1d03 Update BeaconStateBuilder API 2019-02-26 22:00:07 +13:00