Paul Hauner
2527252248
Merge branch 'master' into 0.5.1-tests
2019-04-17 21:21:07 +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
f69b56ad60
Add new tree_hash
crate project wide.
2019-04-16 14:25:43 +10:00
Paul Hauner
b8c4c3308a
Update types
to new tree_hash crate
2019-04-16 14:14:38 +10:00
Paul Hauner
89bc15f77e
Move some long-running tests to release-only
2019-04-15 09:59:35 +10:00
Paul Hauner
1913be0c6f
Fix clippy lints
2019-04-03 16:23:09 +11:00
Paul Hauner
3fe7dd80e2
Merge branch 'validator-enhancements' into testnet-client
2019-04-02 14:29:43 +11:00
Paul Hauner
206f651895
Merge pull request #293 from michaelsproul/operation-pool
...
Implement Operation Pool
2019-04-02 13:53:22 +11:00
Paul Hauner
d6664cb4ac
Implement all methods on Store
2019-04-02 13:41:04 +11:00
Age Manning
3f160d3b99
Correct bootnodes cli parameter
2019-04-01 16:29:11 +11:00
Age Manning
8e5829c0ba
Merge remote-tracking branch 'origin/paul-gossip-test' into validator-enhancements
2019-04-01 15:53:51 +11:00
Paul Hauner
5e80b90301
Extend queue stale time, queue more blocks
2019-04-01 15:51:48 +11:00
Age Manning
4fec387047
Merge remote-tracking branch 'origin/paul-gossip-test' into validator-enhancements
2019-04-01 15:40:33 +11:00
Paul Hauner
a7df4f1800
Add log when block not processed in queue
2019-04-01 15:38:22 +11:00
Age Manning
d84f95fe8a
Merge remote-tracking branch 'origin/paul-gossip-test' into validator-enhancements
2019-04-01 15:33:42 +11:00
Paul Hauner
a3ca3ec50d
Break block proc. loop if we get a bad block
2019-04-01 15:32:04 +11:00
Age Manning
c117659b2d
Merge remote-tracking branch 'origin/paul-gossip-test' into validator-enhancements
2019-04-01 15:25:49 +11:00
Paul Hauner
111c81f428
Add ParentUnknown block processing to SimpleSync
2019-04-01 15:23:38 +11:00
Paul Hauner
ebe47a5b34
Add Store
and db_encode_derive
.
...
Implementation is not complete, but what is here works.
2019-04-01 14:56:32 +11:00
Age Manning
9f8850d0a1
Adds bootnode CLI parameter
2019-04-01 12:14:44 +11:00
Age Manning
170f993032
Clean up warnings
2019-04-01 12:14:23 +11:00
Paul Hauner
b03dfdce59
Fix genesis time issue, add logs
2019-04-01 08:59:59 +11:00
Paul Hauner
f4bd46fe66
Fix rocks db startup issues
2019-03-31 19:16:45 +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
Paul Hauner
9a0ebac687
Merge branch 'validator-enhancements' into paul-gossip-test
2019-03-31 17:47:35 +11:00
Paul Hauner
a93f898946
Improve gossipsub block processing
2019-03-31 17:27:04 +11:00
Paul Hauner
c596e3f7d7
Change log levels of gossipsub events
2019-03-31 17:26:28 +11:00
Age Manning
e0b5e74e7c
Removes further unneccessary debug output
2019-03-31 15:48:11 +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
33473892f2
Validator client fixes. Hack fix for genesis start time
2019-03-31 14:26:58 +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
Paul Hauner
2c1fa86cd3
Swap to gossiping whole block.
...
Processing for gossiped blocks is broken in `SimpleSync`, will be fixed
next.
2019-03-31 12:28:35 +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
Paul Hauner
c99a742aae
Fix bug in SimpleSync queue.
...
It was not completing partials with bodies.
2019-03-31 10:15:42 +11:00
Paul Hauner
5cc2fdd3d4
Change beacon_node
and network
slog features
...
Allows printing debug messages in --release
2019-03-31 10:15:01 +11:00
Paul Hauner
d2b5cf5a32
Improve queueing in SimpleSync
2019-03-31 09:44:58 +11:00
Age Manning
ee693fb3e3
Add committe_len to gRPC parameters
2019-03-31 00:34:35 +11:00
Age Manning
4fb95d06d1
Correct cache race condition
2019-03-31 00:08:55 +11:00
Age Manning
51ffbc07d2
Correct attestation error handling
2019-03-30 19:48:45 +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
d8fd7c8803
Implement beacon node side of attestation production gRPC
2019-03-30 18:36:38 +11:00
Paul Hauner
c2b6f949c0
Restrict blop pool from re-including attestations
2019-03-30 18:25:32 +11:00
Paul Hauner
64507950dd
Use committe_len in test_harness
2019-03-30 17:31:58 +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
Age Manning
ba771282fa
Merges in validator client branch
2019-03-30 13:17:24 +11:00
Paul Hauner
89cc92572a
Add test_harness
tests for attestation count
2019-03-30 13:03:05 +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
Kirk Baird
023b4e8c92
Merge master and remove ssz length encoding from FakeBLS
2019-03-29 11:47:22 +11:00
Luke Anderson
be592c86d1
Started migrating FreeAttestation to Attestation in the harnesses - doesn't compile yet.
2019-03-29 10:39:37 +11:00
Luke Anderson
87acaac8a0
Ran cargo fmt.
2019-03-28 21:01:47 +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
Age Manning
2a2660ce62
Cleanup debug issues, corrects RPC server logic
2019-03-28 17:24:49 +11:00
Age Manning
cc4ccd4017
Corrects read/write race condition
2019-03-28 17:16:43 +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
Age Manning
d7289ab55e
Add gossip-test branch
2019-03-28 14:31:35 +11:00
Age Manning
4caaf82892
Correct validator get duties RPC server logic
2019-03-28 13:14:41 +11:00
Age Manning
086ebb1485
Fix beacon node rpc compilation issues
2019-03-27 21:32:53 +11:00
Age Manning
1f437a3e7b
Implements RPC Server side of epoch duties
2019-03-27 21:08:28 +11:00
Luke Anderson
16706d322f
Merge remote-tracking branch 'origin/master' into validator_client-luke_wip
2019-03-27 19:10:36 +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
12936e73a7
Set gossip logs to info
2019-03-27 12:57:05 +11:00
Paul Hauner
c52da489cb
Merge branch 'master' into paul-gossip-test
2019-03-27 11:26:06 +11:00
Paul Hauner
f18941a01c
Block client startup until state is ready
2019-03-27 11:25:15 +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
Luke Anderson
1584469b7c
Renamed attestation -> attestation_data for fetch, but not publish, to acknowledge the difference in the spec. Also started implementing the gRPC get_attestation_data functionality in the BeaconNode.
2019-03-26 17:41:43 +11:00
Age Manning
96ccd58414
Merge branch 'libp2p-patch'
2019-03-26 16:49:43 +11:00
Kirk Baird
e12ce2bd5c
Merge branch 'master' into yaml-test-downloads
2019-03-26 16:47:24 +11:00
Age Manning
507c8efbfb
Update to latest gossipsub
2019-03-26 16:38:50 +11:00
Paul Hauner
7cba9f4126
Merge branch 'master' into paul-gossip-test
2019-03-26 16:09:47 +11:00
Paul Hauner
00b546e6b8
Update slot clock to use genesis slot
2019-03-26 15:44:28 +11:00
Paul Hauner
0768d24ffc
Add untested block processing from GRPC
2019-03-26 15:26:05 +11:00
Age Manning
6955330f6c
Merge branch 'libp2p-patch'
2019-03-26 15:14:29 +11:00
Age Manning
b2ae54043c
Fix libp2p version to specific commit
2019-03-26 15:06:41 +11:00
Paul Hauner
3756d8d681
Rename proto NodeInfo -> NodeInfoResponse
2019-03-26 15:04:39 +11:00
Age Manning
5b40152873
Update to latest libp2p and gossipsub
2019-03-26 15:01:05 +11:00
Kirk Baird
116d995960
Merge current master and fix ssz-fuzzing
2019-03-26 14:53:50 +11:00
Paul Hauner
e702896bee
Fix ssz decoding bug
2019-03-26 13:28:21 +11:00
Paul Hauner
56c9a29593
Add logging
2019-03-26 13:28:01 +11:00
Paul Hauner
d4fecd8a84
Set GRPC block to be just SSZ
2019-03-26 12:32:38 +11:00