Kristofer Peterson
e23340d89e
Clippy cleanup for all targets and nighly rust (also support 1.44.0) ( #10445 )
...
* address warnings from 'rustup run beta cargo clippy --workspace'
minor refactoring in:
- cli/src/cli.rs
- cli/src/offline/blockhash_query.rs
- logger/src/lib.rs
- runtime/src/accounts_db.rs
expect some performance improvement AccountsDB::clean_accounts()
* address warnings from 'rustup run beta cargo clippy --workspace --tests'
* address warnings from 'rustup run nightly cargo clippy --workspace --all-targets'
* rustfmt
* fix warning stragglers
* properly fix clippy warnings test_vote_subscribe()
replace ref-to-arc with ref parameters where arc not cloned
* Remove lock around JsonRpcRequestProcessor (#10417 )
automerge
* make ancestors parameter optional to avoid forcing construction of empty hash maps
Co-authored-by: Greg Fitzgerald <greg@solana.com>
2020-06-09 09:38:14 +09:00
carllin
d9366776b2
Add operating mode gating ( #10332 )
...
Co-authored-by: Carl <carl@solana.com>
2020-05-30 00:03:19 -07:00
carllin
778078e1dc
Distinguish switch/non-switching votes in ReplayStage ( #10218 )
...
* Add SwitchForkDecision, change vote instruction based on decision
* Factor out SelectVoteAndResetForkResult
Co-authored-by: Carl <carl@solana.com>
2020-05-29 14:40:36 -07:00
Kristofer Peterson
fb4d8e1f62
cleanup clippy tests ( #10172 )
...
automerge
2020-05-29 00:26:06 -07:00
Tyera Eulberg
bac4aec16f
Trigger RPC notifications after block commitment cache update ( #10077 )
...
* Fixup commitment-aggregation metric
* Trigger notifications after commitment-cache update
* Fixup fn name
* Add single-confirmation commitment level
* Rename to highest_confirmed_slot
* Pass commitment-cache info directly to notifications
* Use match
* Update commitment docs
* Update out of date pubsub docs
2020-05-18 12:49:01 -06:00
Kristofer Peterson
58ef02f02b
9951 clippy errors in the test suite ( #10030 )
...
automerge
2020-05-15 09:35:43 -07:00
Jack May
eb1acaf927
Remove archiver and storage program ( #9992 )
...
automerge
2020-05-14 18:22:47 -07:00
carllin
59de1b3b62
Compute Switch Threshold ( #9218 )
...
* Add switching threshold check
Co-authored-by: Carl <carl@solana.com>
2020-05-11 22:20:11 -07:00
carllin
01ab1d1369
Add metrics for logging time taken in replaystage steps ( #9933 )
...
automerge
2020-05-08 03:46:29 -07:00
carllin
e970c58330
Properly handle ancestor/descendant maps ( #9932 )
...
* Account for descendants < root not existing in BankForks, purge ancestors/descendants map for consistency with BankForks and progress map
Co-authored-by: Carl <carl@solana.com>
2020-05-07 23:39:57 -07:00
Tyera Eulberg
754c65c066
Refactor RPC subscriptions account handling ( #9888 )
...
* Switch subscriptions to use commitment instead of confirmations
* Add bank method to return account and last-modified slot
* Add last_modified_slot to subscription data and use to filter account subscriptions
* Update tests to non-zero last_notified_slot
* Add accounts subscriptions to test; fails at higher tx load
* Pass BankForks to RpcSubscriptions
* Use BankForks on add_account_subscription to properly initialize last_notified_slot
* Bundle subscriptions
* Check for non-equality
* Use commitment to initialize last_notified_slot; revert context.slot chage
2020-05-07 00:23:06 -06:00
carllin
445e6668c2
Fix ( #9896 )
...
Co-authored-by: Carl <carl@solana.com>
2020-05-06 11:44:49 -07:00
Michael Vines
72312ad615
Avoid holding the entire rooted path while loading bank forks ( #9885 )
2020-05-05 19:45:41 -07:00
carllin
3442f36f8a
Repair alternate versions of dead slots ( #9805 )
...
Co-authored-by: Carl <carl@solana.com>
2020-05-05 14:07:21 -07:00
Tyera Eulberg
a7f33b5014
Cache banks in BankForks until optional largest_confirmed_root ( #9678 )
...
automerge
2020-04-24 15:49:57 -07:00
Greg Fitzgerald
76b1c2baf0
One less alloc per transaction ( #9705 )
...
* One less alloc per transaction
* Fix benches
* Fix compiler warnings in bench build
* Fix move build
* Fix bench
2020-04-24 13:03:46 -06:00
Tyera Eulberg
d5abff82e0
Add largest_confirmed_root to BlockCommitmentCache ( #9640 )
...
* Add largest_confirmed_root to BlockCommitmentCache
* clippy
* Add blockstore to BlockCommitmentCache to check root
* Add rooted_stake helper fn and test
* Nodes that are behind should correctly id confirmed roots
* Simplify rooted_stake collector
2020-04-22 12:22:09 -06:00
carllin
bab3502260
Push down cluster_info lock ( #9594 )
...
* Push down cluster_info lock
* Rework budget decrement
Co-authored-by: Carl <carl@solana.com>
2020-04-21 12:54:45 -07:00
carllin
1607891b29
log proper slot ( #9576 )
...
Co-authored-by: Carl <carl@solana.com>
2020-04-19 14:24:45 -07:00
sakridge
66abe45ea1
Decouple accounts hash calculation from snapshot hash ( #9507 )
2020-04-16 15:12:20 -07:00
carllin
3037eb8d4f
Remove slot field, add test ( #9444 )
...
Co-authored-by: Carl <carl@solana.com>
2020-04-10 23:52:37 -07:00
carllin
aa8dfac313
Simplify vote simulation ( #9435 )
...
Co-authored-by: Carl <carl@solana.com>
2020-04-10 15:16:12 -07:00
carllin
4522e85ac4
Add Metrics/Dashboards tracking block production ( #9342 )
...
* Add metric tracking blocks/dropped blocks
Co-authored-by: Carl <carl@solana.com>
2020-04-08 14:35:24 -07:00
Michael Vines
ad0997e15f
RPC: add `err` field to TransactionStatus, alongside the now deprecated `status` field ( #9296 )
...
automerge
2020-04-04 16:13:26 -07:00
carllin
0139236464
ReplayStage fixes ( #9271 ) ( #9279 )
...
automerge
2020-04-02 21:05:33 -07:00
Jack May
268e04cb4a
Rename CustomError to Custom ( #9207 )
2020-04-01 09:01:11 -07:00
Michael Vines
0e2722c638
solana-validator now supports multiple --authorized-voter arguments ( #9174 )
...
* Use Epoch type
* Vote account's authorized voter is now supported without a validator restart
2020-03-31 08:23:42 -07:00
carllin
66946a4680
Check ClusterSlots for confirmation of block propagation ( #9115 )
2020-03-30 19:57:11 -07:00
Tyera Eulberg
50fa577af8
Use cluster confirmations in rpc and pubsub ( #9138 )
...
* Add runtime methods to simply get status and slot
* Add helper function to get slot confirmation_count from BlockCommitmentCache
* Return cluster confirmations in getSignatureStatus
* Remove use of invalid get_signature_confirmation_status
* Remove unused methods
* Update pubsub to use cluster confirmations
* Fix test_check_signature_subscribe failure
* Refactor confirmations to read commitment cache only once
* Review comments
* Use bank, root from BlockCommitmentCache
* Update docs
* Add metric for block-commitment aggregations
Co-authored-by: Justin Starry <justin@solana.com>
2020-03-30 17:53:25 -06:00
Tyera Eulberg
62040cef56
Store BlockCommitmentCache slot and root metadata ( #9154 )
...
automerge
2020-03-30 10:29:30 -07:00
Justin Starry
c1a3b6ecc2
Add RPC subscription api for rooted slots ( #9118 )
...
automerge
2020-03-27 09:33:40 -07:00
carllin
d47262d233
Reduce transmit frequency ( #9113 )
...
Co-authored-by: Carl <carl@solana.com>
2020-03-26 23:33:28 -07:00
carllin
5a8658283a
Add check for propagation of leader block before generating further blocks ( #8758 )
...
Co-authored-by: Carl <carl@solana.com>
2020-03-26 19:57:27 -07:00
carllin
f3d556e3f9
Refactor VoteTracker ( #9084 )
...
* Refactor VoteTracker
Co-authored-by: Carl <carl@solana.com>
2020-03-26 17:55:17 -07:00
sakridge
b7b4aa5d4d
move rpc types from client to client-types crate ( #9039 )
...
* Separate client types into own crate, so ledger does not need it
Removes about 50 crates of dependency from ledger
* Drop Rpc name from transaction-status types
2020-03-26 13:29:30 -07:00
Michael Vines
aa24181a53
Remove blockstream unix socket support. RPC or bust ( #9004 )
...
automerge
2020-03-21 20:17:11 -07:00
Michael Vines
18c1f0dfe9
Remove stub core/src/genesis_utils.rs ( #8999 )
2020-03-21 10:54:40 -07:00
carllin
dc1db33ec9
Add Capabilities to Signal BroadcastStage to Retransmit ( #8899 )
2020-03-19 23:35:01 -07:00
sakridge
dc347dd3d7
Add Accounts hash consistency halting ( #8772 )
...
* Accounts hash consistency halting
* Add option to inject account hash faults for testing.
Enable option in local cluster test to see that node halts.
2020-03-16 08:37:31 -07:00
Carl
ead6dc553a
If let
2020-03-16 07:57:07 -07:00
Carl
009c124fac
Remove generic
2020-03-16 07:57:07 -07:00
Carl
9411fc00b8
Lower error level
2020-03-16 07:57:07 -07:00
carllin
53b8d0d528
Remove holding Poh lock ( #8838 )
...
automerge
2020-03-13 15:15:13 -07:00
carllin
9872430bd2
Add VoteTracker for tracking cluster's votes in gossip ( #8327 )
...
Track votes by slot in cluster_vote_listener
2020-03-09 22:03:09 -07:00
carllin
f23dc11a86
compute_bank_stats needs to return newly computed ForkStats ( #8608 )
...
* Fix broken confirmation, add test
2020-03-04 11:49:56 -08:00
carllin
8ef8c9094a
Add ReplayStage changes for checking switch threshold ( #8504 )
...
* Refactor for supporting switch threshold check
2020-03-02 12:43:43 -08:00
carllin
5f766cd20b
Remove loop ( #8493 )
2020-02-26 19:59:28 -08:00
carllin
d47a47924a
Update voting simulation ( #8460 )
2020-02-26 14:09:07 -08:00
carllin
7a2bf7e7eb
Limit leader schedule search space ( #8468 )
...
* Limit leader schedule search space
* Fix and add test
* Rename
2020-02-26 13:35:50 -08:00
carllin
d821fd29d6
Add versioning ( #8348 )
...
automerge
2020-02-25 17:12:01 -08:00