Commit Graph

4059 Commits

Author SHA1 Message Date
Stephen Akridge f77788447c Debug for Account
Derive prints the full userdata vec which is questionably useful.
2019-02-21 14:57:32 -08:00
Michael Vines d25fc7a649 Stop passing blob_index unnecessarily into ReplayStage 2019-02-21 15:33:01 -07:00
Sagar Dhawan bf3d2bd2ec Update Gossip entry in the book 2019-02-21 15:32:21 -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
Carl 9e1c5e1ab0 switch vote program to use slot height instead of tick height, change confirmation computation to use slots 2019-02-21 15:31:53 -07:00
Greg Fitzgerald 20fffd8abf Delete BankForks::finalized_bank() 2019-02-21 13:21:08 -08:00
Michael Vines 98ed785711
Cargo.lock 2019-02-21 13:00:19 -08:00
Michael Vines 7cb695df12
RetransmitStage now gets a BankForks 2019-02-21 12:56:56 -08:00
Michael Vines c94bc2a0b6 Remove dead code 2019-02-21 12:38:43 -08:00
Greg Fitzgerald 511085b747 Make trait pub 2019-02-21 13:32:25 -07:00
Greg Fitzgerald f76ac94d70 Remove leader_schedule_offset public method
Also,

* Rename the private variable to include units.
* Better doc
2019-02-21 12:28:11 -08:00
Greg Fitzgerald 32caa55d67 Offer a way to get the leader_schedule from any Bank instance 2019-02-21 12:28:11 -08:00
Jack May b69475937f
Program tests depend on native/noop (#2873) 2019-02-21 12:22:55 -08:00
Rob Walker f6ff33db8e
* add merge_parents(), which means 'eat your parent' (#2851)
* add is_root(), which is false if the bank has a parent
* use is_root() for store_slow and store_accounts to decide whether to purge on zero balance
2019-02-21 12:08:50 -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
Greg Fitzgerald 40977fa99f More forward-looking test 2019-02-21 10:54:25 -07:00
Greg Fitzgerald f4df8ff5b3 Add slot_height() and epoch_height() methods to Bank 2019-02-21 10:54:25 -07: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
Sagar Dhawan 13d018e3e1
Fix stake selection for the Data Plane (#2863)
* Update data-plane to use stakes instead of a bank directly

* Rename get_stakes to staked_nodes
2019-02-20 21:38:16 -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
Greg Fitzgerald a4411ef6a1 Generate a schedule from a bank 2019-02-20 20:33:33 -08:00
Sagar Dhawan 3c62e2332e
Cleanup stakes for gossip (#2860) 2019-02-20 20:02:47 -08:00
Michael Vines 1cd88968cf Remove get_leader_for_next_tick() 2019-02-20 19:33:03 -08:00
Michael Vines 28a53959e0 Remove dead types 2019-02-20 18:39:32 -08:00
carllin 7c26a4d0a0
Add weighted sampling based on stakes (#2854)
* Add weighted sampling based on stakes
2019-02-20 18:21:08 -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 33c7f92f56 Dial down CI timeouts 2019-02-20 16:43:13 -08:00
Greg Fitzgerald b8f6280fe5 Move hash_internal_state tests into runtime
This was intended as a Bank test, but only in blocktree_processor
because of its dependency on Entry, which solana_runtime doesn't
know about.
2019-02-20 16:13:26 -08:00
Greg Fitzgerald 822bebea46 Allow multiple forks without regenerating the hash 2019-02-20 16:13:26 -08:00
Greg Fitzgerald 582a7192ec Hold Bank's own parent hash instead of the parent's 2019-02-20 16:13:26 -08:00
Anatoly Yakovenko 5492aad61e Cache ticks until a working bank can pick them up 2019-02-20 14:14:38 -08:00
Anatoly Yakovenko 27f973c923 github review 2019-02-20 14:19:25 -07:00
Anatoly Yakovenko 3357cebcdb Added notes from discussion on discord 2019-02-20 14:19:25 -07:00
Anatoly Yakovenko 7ce9c0a2e9 cleanup runtime chapter 2019-02-20 14:18:43 -07:00
Greg Fitzgerald e9daf57d7f Absorb LeaderScheduler's rank_active_set()
Delete overly-complicated tests
2019-02-20 13:13:31 -07:00
Greg Fitzgerald 1c2169aec7 Use rank_stakes() in LeaderScheduler 2019-02-20 13:13:31 -07:00
Greg Fitzgerald cf163a9dab Remove unutilized cuteness 2019-02-20 13:13:31 -07:00
Greg Fitzgerald dfcf3f94dc Absorb LeaderScheduler::get_active_set()
No functional changes
2019-02-20 13:13:31 -07:00
Greg Fitzgerald b13fb6097f Get rid of the HashSet special case
ActiveSet ranks on construction. get_active_set() is on its way out.
This is a stepping stone.
2019-02-20 13:13:31 -07:00
Greg Fitzgerald 6e24a4aa50 Less copy pasta 2019-02-20 13:13:31 -07:00
Greg Fitzgerald fb1c6cf4da Drop a bunch of dependencies on VotingKeypair
And de-Arc
2019-02-20 13:13:31 -07:00
Greg Fitzgerald af1b8f8a26 Absorb vote utilities
But drop dependency on VotingKeypair. Only pass in VotingKeypair
in VotingKeypair tests or integration tests.
2019-02-20 13:13:31 -07:00
Greg Fitzgerald 88d6db8537 And ranking and simplify 2019-02-20 13:13:31 -07:00
Greg Fitzgerald 6ce2c06fd6 Add primitive ActiveStakers and LeaderSchedule objects 2019-02-20 13:13:31 -07:00
Tyera Eulberg 136f7e4b3b Update test to validate entry height 2019-02-20 11:42:06 -07:00
Tyera Eulberg 0a73bb7efd Add tick-height field to entry event payload 2019-02-20 11:42:06 -07:00
Michael Vines 2cf00021d9 Update golden hash to account for tick_height removal 2019-02-20 07:47:04 -08:00