307 Commits

Author SHA1 Message Date
Michael Vines
55a76ed4b0 Populate test ledgers with a full slots to reduce test boilerplate 2019-02-26 22:08:17 -08:00
Pankaj Garg
789fff2ae2 Replace LeaderScheduler with LeaderScheduler1 (#2962)
* Migrate to LeaderScheduler1 (and added some missing methods)
* Delete LeaderScheduler
* Rename LeaderScheduler1 to LeaderScheduler
2019-02-26 22:16:18 -07:00
Michael Vines
a669241cb1 Add/use get_tmp_ledger_path!() and tmp_copy_blocktree!() 2019-02-26 17:50:43 -08:00
Michael Vines
6de5354b8e Update the RPC bank on fullnode rotation 2019-02-26 14:07:39 -08:00
anatoly yakovenko
6dcb97af9e
Move PohService and PohRecorder out of banking_stage and into fullnode (#2852)
* Move PohService out of banking_stage and into fullnode.

* 10 second slots
2019-02-26 10:48:18 -08:00
Michael Vines
897279eddb Encapsulate log::Level so counter macro users don't need to use it 2019-02-25 20:01:30 -08:00
Carl
5f5725a4ea Re-add leader scheduler 2019-02-25 19:28:24 -08:00
Carl
3e893ffddc Remove max_tick_height, leader_scheduler from broadcast_service 2019-02-25 18:17:36 -08:00
Pankaj Garg
2f44555437 Fix fullnode test 2019-02-25 16:55:22 -08:00
Pankaj Garg
299b642803 Cleanup fullnode rotate integration test, and unignore two tests 2019-02-25 16:55:22 -08:00
Michael Vines
6088b3bfc8 Replace DEFAULT_SLOT_HEIGHT with 0 2019-02-25 13:09:13 -08:00
Carl
c13ae10d31 Fix replay_stage to 1) skip leader slots, 2) create/set working banks properly 2019-02-25 11:38:46 -08:00
Greg Fitzgerald
d26f836212 tmp_copy_ledger -> tmp_copy_blocktree 2019-02-23 08:32:05 -07:00
Greg Fitzgerald
e19dbdc527 Use Bank for ticks_per_slot 2019-02-22 22:02:23 -07:00
Greg Fitzgerald
2d03ae2fae Migrate fullnode to create_tmp_sample_blocktree 2019-02-22 11:18:01 -07:00
Greg Fitzgerald
4602d3bf46 Unit-tests can use ordinary keypairs 2019-02-21 22:01:20 -08:00
Greg Fitzgerald
778583ad08 Inline BlockConfig::ticks_per_slot 2019-02-21 20:37:21 -08:00
Michael Vines
b501090443 Route BankForks into the ReplayStage 2019-02-21 19:25:17 -08:00
Pankaj Garg
5c9777970d moved fee collection code to runtime 2019-02-21 16:35:23 -08:00
Tyera Eulberg
d8f6865338 Rename EntryStream to Blockstream 2019-02-21 17:24:29 -07:00
Carl
fc48062867 Rename active_window_length to active_window_num_slots 2019-02-21 15:48:13 -08:00
Michael Vines
d25fc7a649 Stop passing blob_index unnecessarily into ReplayStage 2019-02-21 15:33:01 -07:00
Carl
60a6ff80ee Change votes and associated test/helper functions to vote based on slot height 2019-02-21 15:31:53 -07:00
Michael Vines
7cb695df12
RetransmitStage now gets a BankForks 2019-02-21 12:56:56 -08:00
Michael Vines
dcf1200d2a Make Fullnode do less work on rotation, ReplayStage can just pass along more details 2019-02-21 11:13:06 -08:00
Michael Vines
080db1c62d Plumb BankForks into GossipService 2019-02-20 22:19:51 -08:00
Michael Vines
4d5e2c8a4d Plumb BankForks into RPC subsystem 2019-02-20 21:46:48 -08:00
Michael Vines
59ee2b8892 Fullnode now holds a BankForks instead of a Bank 2019-02-20 21:13:04 -08:00
Michael Vines
0dde79f42b Push BankForks into Fullnode::new() 2019-02-20 21:13:04 -08:00
Michael Vines
28a53959e0 Remove dead types 2019-02-20 18:39:32 -08:00
Michael Vines
6ed2e4c187 process_blocktree now loads forks 2019-02-20 17:27:02 -08:00
Sagar Dhawan
a484c87354
Make gossip selection stake based (#2848) 2019-02-20 17:08:56 -08:00
Michael Vines
a17903a89f Tweak process_blocktree() signature to return a BankForks 2019-02-19 20:01:22 -08:00
Greg Fitzgerald
dde886f058 Move Bank to its own crate
Also:
* counters.rs to solana_metrics
* genesis_block.rs to solana_sdk
2019-02-19 07:17:04 -07:00
Greg Fitzgerald
ad9cd23202 Notify subscribers from ReplayStage 2019-02-18 20:04:30 -07:00
Greg Fitzgerald
5916177dc8 Drop RpcPubSubService's dependency on the Bank
Pass in RpcSubscriptions instead, which let's you choose a
bank fork when it's time to send notifications.
2019-02-18 20:04:30 -07:00
Greg Fitzgerald
e0b8f4202d Use slot height for BankForks ids 2019-02-18 17:27:20 -07:00
Greg Fitzgerald
e4119268ca Delete expensive integration test in unit-test suite 2019-02-18 09:27:09 -07:00
Carl
f33c6eb95f delete leader rotation signal from banking stage 2019-02-17 19:30:45 -07:00
Anatoly Yakovenko
5f55a9be84 fmt 2019-02-17 15:43:13 -08:00
Anatoly Yakovenko
300e3d151d remove the signal sender since its superfelous to a recv error 2019-02-17 15:43:13 -08:00
Anatoly Yakovenko
54dfe708c1 use ref for new_from_parent; test that transactions don't leak to parent 2019-02-17 15:02:08 -07:00
Anatoly Yakovenko
8166925f04 copy a new bank 2019-02-17 15:02:08 -07:00
Anatoly Yakovenko
64f1d93cc3 Use the accounts list from parents up to finalized bank for Account::load apis.
Borrow checker

query the previous parents accounts

cleanup!

s/tree/parents

Tests!  Last_ids need to be inherited as well otherwise nothing works.

new_from_parent
2019-02-17 15:02:08 -07:00
Greg Fitzgerald
c646845cd3 Move RpcService into its own module 2019-02-17 12:20:05 -07:00
Greg Fitzgerald
eb483bc053 Move RpcPubSubService into its own module 2019-02-17 12:20:05 -07:00
Greg Fitzgerald
9fa8105ae8 Add a way to make a DAG of checkpointed Banks 2019-02-16 21:49:06 -07:00
Greg Fitzgerald
ac35fe9ed1 Flip the dependency; Create bank before scheduler 2019-02-16 14:16:48 -07:00
Greg Fitzgerald
3d70afc578 Boot leader scheduler from the bank
Functional change: the leader scheduler is no longer implicitly
updated by PohRecorder via register_tick(). That's intended to
be a "feature" (crossing fingers).
2019-02-16 14:16:48 -07:00
Greg Fitzgerald
97c93629a5 Don't use the Bank's LeaderScheduler 2019-02-16 10:55:58 -07:00