Commit Graph

3852 Commits

Author SHA1 Message Date
662d62f561 Always assert on the main test thread to abort quickly 2019-02-13 12:54:06 -08:00
cf4813a1ec Add tests to transact with a cluster rotating at 1 tick per slot 2019-02-13 12:54:06 -08:00
b03636dc33 Bolster test_fullnode_rotate() checks 2019-02-13 12:54:06 -08:00
6187779d10 Wait for monitor threads to exit before Blocktree destruction 2019-02-13 12:54:06 -08:00
ddc8bfed29 Fix bad window_send_test channel logic
Test could hang if the blobs are not sent in the right order.
2019-02-13 11:23:54 -08:00
f1221d724d Consolidate logic with entry helper function
Creates an entry and updates the hash.
Also cleanup blobs creation in test_replay
2019-02-13 11:23:54 -08:00
aec44e3761 Add design for the leader validator loop (#2650) 2019-02-13 12:00:43 -07:00
aed07f0f48 Bump jsonrpc-derive from 10.0.2 to 10.1.0 (#2748)
* Bump jsonrpc-derive from 10.0.2 to 10.1.0

Bumps [jsonrpc-derive](https://github.com/paritytech/jsonrpc) from 10.0.2 to 10.1.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases)
- [Commits](https://github.com/paritytech/jsonrpc/compare/v10.0.2...v10.1.0)

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

* Bump version for all jsonrpc crates; remove pubsub dependency in vote-signer
2019-02-13 10:44:22 -07:00
c178fc7249 Rewrite get_votes()
Panic if deserialize fails.
2019-02-13 10:05:28 -07:00
41554f433b Fix VoteTransaction::get_votes() 2019-02-13 10:05:28 -07:00
863956d09c Add multinode test for two nodes rotating at 1 tick per slot 2019-02-12 21:17:06 -08:00
7118178e2c Correctly compute max_tick_height when starting up a node 2019-02-12 21:17:06 -08:00
1eabe66c85 setup_leader_validator: remove unnecessary ticks_per_slot parameter 2019-02-12 21:17:06 -08:00
2de0a9e453 Log on bogus blobs 2019-02-12 21:17:06 -08:00
0bb6940c1a Faster exit for storage_stage client
Shorten the timeout and check for exit on every iteration
of fetching a last id.
2019-02-12 20:45:22 -08:00
e341b33f21 Remove ticks_per_slot from Blocktree::write_entries(), it already knows 2019-02-12 15:52:27 -08:00
6abdd6401d clippy: passing BlocktreeConfig by ref is ok 2019-02-12 15:52:27 -08:00
6632c7026d Pass a BlocktreeConfig into all ledger helper functions 2019-02-12 15:52:27 -08:00
c474cf1eef Pass BlocktreeConfig around as a reference 2019-02-12 15:52:27 -08:00
e26cd2eb26 Make Genesis block handle extra tokens for the leader (#2743) 2019-02-12 15:49:23 -08:00
b33becabca rename flag 2019-02-12 15:06:52 -08:00
3c8a8640aa restructure test_broadcast_last_tick test to check for is_last_blob 2019-02-12 15:06:52 -08:00
a1b5ea9cb1 test for is_last_blob at end of broadcast 2019-02-12 15:06:52 -08:00
bc162637a6 Add is_last_blob flag to blob to signal the end of a slot 2019-02-12 15:06:52 -08:00
8f1b7c3fff Enable test_replay (#2741)
* Enable test_replay

* Refactor get_last_id

* Fix test ledger path
2019-02-12 15:03:11 -08:00
be71f49d80 Change write_entries() and create_tmp_ledger() to take ticks_per_slot (#2736)
* Change write_entries() and create_tmp_ledger() to take ticks_per_slot

* PR nits
2019-02-12 13:14:33 -08:00
8b39eb5e4e Replace Blob Ids with Forward property (#2734)
* Replace Blob Id with Blob forwarding

* Update simulation to properly propagate blobs
2019-02-12 10:56:48 -08:00
1173cf7ed4 review comments 2019-02-12 08:41:02 -08:00
b4fd141105 fix broken test 2019-02-12 08:41:02 -08:00
0002b5dd02 Write to ledger in BroadcastService
- Also disconnect the channel between TPU and TVU
2019-02-12 08:41:02 -08:00
709598541f Remove stale TODO comment 2019-02-11 22:13:07 -08:00
aa781811af Add mulitnode tests demonstrating leader rotation at 1 tick per slot 2019-02-11 19:50:33 -08:00
b595bf8f44 Set blob_index correctly when tick_height is at the last tick of a slot 2019-02-11 19:50:33 -08:00
f6979a090e leader_scheduler: reduce the amount of special case handling for tick_height 0 2019-02-11 19:05:14 -08:00
2e1dcd84f9 Add Avalanche Simulation (#2727)
- No packet drops yet
- Optimistic retransmits without leader-id
2019-02-11 16:20:31 -08:00
144d321193 Remove Box for RPC pubsub subscriptions 2019-02-11 15:47:29 -08:00
d41dec9395 Make EntryStreamStage optional 2019-02-11 14:07:24 -08:00
f977327c7b Move EntryStream into its own Tvu stage 2019-02-11 14:07:24 -08:00
aac1a58651 Try harder to keep LeaderSchedulerConfig and BlocktreeConfig in sync 2019-02-11 13:10:12 -08:00
095afdfe47 Merge leader_to_validator/validator_to_leader 2019-02-11 08:57:44 -08:00
4ae1783b97 Remove code duplication between leader_to_validator/validator_to_leader 2019-02-10 17:53:42 -08:00
cd92adb1c6 Stop sending metrics by default
`source scripts/configure-metrics.sh` can be used at any time to easily
activate metrics if desired for local development and test.
2019-02-10 17:24:45 -08:00
7dec40ff05 slot 0 now contains the same number of ticks as all subsequent slots 2019-02-10 16:34:10 -08:00
4b38ecd916 fix tpu tvu bank race (#2707)
* Fix tpu tvu bank race

* Test highlighting race between tvu and tpu banks during leader to leader transitions
2019-02-10 16:28:52 -08:00
02c0098d57 Less --verbose by default 2019-02-10 10:19:16 -08:00
1e58c585d3 Add retry_get_balance function
clients don't need to know about json
2019-02-10 09:08:16 -08:00
ed4e9febe0 Refactor wallet processing
Yuge functions
2019-02-10 09:08:16 -08:00
1c61415cee Remove stale TODO. #1899 was resolved a while ago 2019-02-09 16:57:46 -08:00
c02625f91a Ban Default::default() 2019-02-09 10:12:32 -08:00
da5b777ee7 Purge Default::default() 2019-02-09 10:12:32 -08:00