Commit Graph

456 Commits

Author SHA1 Message Date
Paul Hauner
058829b64d Update beacon_chain to latest DB 2019-05-21 17:27:06 +10:00
Paul Hauner
f1584dada4 Update BeaconChain struct to use new store 2019-05-21 13:36:14 +10:00
Paul Hauner
658b425cce Merge branch 'master' into disk-db 2019-05-20 16:56:04 +10:00
Paul Hauner
6660311b2b Rename EpochCache to CommitteeCache 2019-05-20 14:36:54 +10:00
Paul Hauner
fcabef91da Use E for EthSpec trait, instead of B 2019-05-13 14:44:43 +10:00
Paul Hauner
ce8ebeccbc Rename BeaconStateTypes to EthSpec 2019-05-10 14:47:09 +10:00
Paul Hauner
2a938f2fd5 Fix clippy lints 2019-05-09 13:35:00 +10:00
Paul Hauner
51dc97ee42 Allow fork_choice and beacon_chain to compile 2019-05-08 18:18:17 +10:00
Paul Hauner
05df7702d3 Merge branch 'master' into disk-db 2019-04-30 16:02:23 +10:00
Michael Sproul
32547373e5 spec: simplify cache_state
The `latest_block_root` input argument was unnecessary as we were always setting it to something
almost equivalent to `state.latest_block_root` anyway, and more importantly, it was messing up the
caching of the state root. Previously it was possible for the function to update the state's latest
block root, and then hash the outdated block root that was passed in as an argument.
2019-04-17 12:00:23 +10:00
Paul Hauner
b8c4c3308a Update types to new tree_hash crate 2019-04-16 14:14:38 +10:00
Paul Hauner
1913be0c6f Fix clippy lints 2019-04-03 16:23:09 +11:00
Paul Hauner
08b1808745 Modify runtime to allow memory or disk db
DiskDB is not working yet, but we'll get there!
2019-03-31 18:57:48 +11:00
Age Manning
f03259991d Merge remote-tracking branch 'origin/paul-gossip-test' into validator-enhancements 2019-03-31 15:37:23 +11:00
Age Manning
c85da612f6 Remove debugging statements 2019-03-31 15:35:54 +11:00
Paul Hauner
c6fc4f0769 Fix bug in attestation production 2019-03-31 15:35:27 +11:00
Age Manning
b4c21ccca3 Merge remote-tracking branch 'origin/paul-gossip-test' into validator-enhancements 2019-03-31 13:58:38 +11:00
Paul Hauner
b26f1f8e1c Add build_all_caches method to BeaconState
Also adds a few more cache builds in BeaconChain.
2019-03-31 13:42:49 +11:00
Age Manning
ae8e470d21 Add patch for attestation crosslinks 2019-03-31 13:06:01 +11:00
Paul Hauner
4e71ed6972 Fix produce_attestation bug.
It was referencing the wrong crosslink.
2019-03-31 12:54:42 +11:00
Age Manning
e0680f9771 Correct compile error 2019-03-31 11:04:50 +11:00
Age Manning
77fb738c78 Merge latest gossip branch 2019-03-31 11:02:57 +11:00
Age Manning
fc5142c09a Registers the attester service to the beacon node RPC client 2019-03-30 19:32:32 +11:00
Paul Hauner
65ae8fda47 Remove old attestation aggregator 2019-03-30 19:15:15 +11:00
Paul Hauner
935c64deef Adds attestation validation to SimpleSync 2019-03-30 19:11:52 +11:00
Age Manning
a952acb86f Add committee_len to attestation data 2019-03-30 17:20:33 +11:00
Paul Hauner
dbcc88ad67 Ensure BitVec is initialized using a multiple of 8
I found it was panic-ing when supplied a non-power-of-zero len.
2019-03-30 17:13:23 +11:00
Paul Hauner
7b3f317abf Fix bug with attestation production
It was being produced with the wrong source root. I will raise an issue
on the spec as it's a tricky one.
2019-03-30 17:12:43 +11:00
Age Manning
bc305cacc2 Merge branch 'blop-pool' into validator-enhancements 2019-03-30 16:16:30 +11:00
Paul Hauner
397e104f9b Implement Attestation building in test harness 2019-03-30 16:02:09 +11:00
Age Manning
6e254551af Implement produce beacon block on gRPC beacon node server 2019-03-30 15:58:31 +11:00
Paul Hauner
cd9494181c Push RwLock down into OperationPool
There used to be one massive lock on `BeaconChain.op_pool`, however that
would cause unnecessary blocking.
2019-03-30 12:26:25 +11:00
Paul Hauner
1840248af8 Remove old queues from BeaconChain 2019-03-30 12:00:31 +11:00
Paul Hauner
8bf7a83f37 Rename op processing methods on BeaconChain 2019-03-29 19:09:01 +11:00
Paul Hauner
2b53851062 Pass errors back from block ops processing 2019-03-29 18:54:01 +11:00
Paul Hauner
8b1a91e9ee Add process_attestation to BeaconChain 2019-03-29 18:40:50 +11:00
Paul Hauner
46a978a5a9 Implement op pool for all ops execpt attestations 2019-03-29 18:30:03 +11:00
Luke Anderson
ba71e8adca Merged age-validator-client into luke's changes on validator_client, and fixed all the merge conflicts. 2019-03-28 20:55:07 +11:00
Luke Anderson
c9e8fe53bc Merged Age's changes and ripped out heaps of now obsolete stuff in the validator client.
- Replaced most instances of PublicKey with KeyPair, since they need to be passed into each validator thread now.
 - Pulled out a bunch of FreeAttestations, and replaced with regular Attestations (as per Paul's suggestion)
 - Started generalising pubkeys to 'signers' (though they are still just Keypairs)
 - Added validator_index into a few structs where relevant
 - Removed the SlotClock and DutiesReader from the BlockProducer and Attester services, since this logic is now abstracted to the higher level process.
 - Added a Hash trait to the Keypair (rather than just pubkey) which assumes the Pubkey uniquely defines it.
2019-03-28 15:50:57 +11:00
Age Manning
6f0c0e47c3 Update Validator RPC and cache building 2019-03-28 14:32:02 +11:00
Luke Anderson
c9a7977d69 Renamed some functions, trying to get beaconnode attestation stuff to work. 2019-03-27 14:30:09 +11:00
Paul Hauner
b006586d19 Add slot timer to beacon node 2019-03-27 10:36:20 +11:00
Paul Hauner
c82bad7602 Add cache builds when advancing chain slot 2019-03-27 10:34:52 +11:00
Paul Hauner
c27fdbe37f Try to load keys from file when starting client 2019-03-27 10:28:27 +11:00
Paul Hauner
00b546e6b8 Update slot clock to use genesis slot 2019-03-26 15:44:28 +11:00
Age Manning
214fb5b8ff Merge RPC branch 2019-03-25 21:31:49 +11:00
Luke Anderson
4cdeb6abe5 Progress towards validator signing attestations.
- Added a 'beacon_attester' RPC endpoint, so the BeaconNode can supply attestation data.
 - Renamed 'attestation_data' to just 'attestation' throughout (except where it is actually just the data structure).
2019-03-25 18:32:27 +11:00
Paul Hauner
708d9b5674 Add basic Gossip sync handlers 2019-03-25 14:27:20 +11:00
Paul Hauner
3dc5595a6f Fix last errors stopping full chain sync 2019-03-24 16:35:07 +11:00
Paul Hauner
5f4f67f46f Swap ImportQueue from a Map to a Vec
There's an edge case where different blocks can have the same block
body.
2019-03-24 14:22:12 +11:00