Tyera Eulberg
1b8f9e75dd
Update getSignatureStatus: support multiple signatures, include slot in each response item ( #9022 )
...
* Rename enable-rpc-get-confirmed-block
* Rename RpcTransactionStatus -> RpcTransactionStatusMeta
* Return simplified RpcTransactionStatus; Add support for multiple transactions
* Update docs
* typo
2020-03-23 11:25:39 -06:00
sakridge
4d2b83d01f
Add option to disable rocks compaction ( #9011 )
2020-03-23 08:42:32 -07:00
Michael Vines
88ba8439fc
Add frozen account support ( #8989 )
...
automerge
2020-03-22 11:10:04 -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
Michael Vines
29fb79382c
Rework validator vote account defaults to half voting fees
2020-03-13 20:13:33 -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
Michael Vines
36fa3a1a0a
Wait for 80% of the active stake instead of 75%
2020-03-09 20:31:09 -07:00
Michael Vines
f992ee3140
Remove unnecessary snapshot hash verification ( #8711 )
2020-03-07 09:04:52 -07:00
Michael Vines
cb6848aa80
Publish initial snapshot hash in gossip on validator startup ( #8679 )
...
automerge
2020-03-05 22:52:31 -08:00
Michael Vines
306783c661
Don't advertise the snapshot that the node was loaded from
...
snapshot_packager_service will remove this snapshot hash from gossip
when it starts
2020-03-02 18:58:53 -07:00
Michael Vines
13551885c2
--wait-for-supermajority now requires a SLOT
2020-03-02 12:59:35 -07:00
Michael Vines
1ca4913328
Avoid is_x86_feature_detected when not building for x86
2020-03-01 18:10:43 -07:00
Michael Vines
ae817722d8
Include validator version in log
2020-02-28 23:23:59 -07:00
Trent Nelson
90bedd7e06
Split signature throughput tracking out of `FeeCalculator` ( #8447 )
...
* SDK: Split new `FeeRateGovernor` out of `FeeCalculator`
Leaving `FeeCalculator` to *only* calculate transaction fees
* Replace `FeeCalculator` with `FeeRateGovernor` as appropriate
* Expose recent `FeeRateGovernor` to clients
* Move `burn()` back into `FeeCalculator`
Appease BPF tests
* Revert "Move `burn()` back into `FeeCalculator`"
This reverts commit f3035624307196722b62ff8b74c12cfcc13b1941.
* Adjust BPF `Fee` sysvar test to reflect removal of `burn()` from `FeeCalculator`
* Make `FeeRateGovernor`'s `lamports_per_signature` private
* rebase artifacts
* fmt
* Drop 'Recent'
* Drop _with_commitment variant
* Use a more portable integer for `target_signatures_per_slot`
* Add docs for `getReeRateCalculator` JSON RPC method
* Don't return `lamports_per_signature` in `getFeeRateGovernor` JSONRPC reply
2020-02-28 13:27:01 -07: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
Michael Vines
fbf78b83c4
Add retry mechanism when downloading genesis and snapshots
2020-02-26 14:21:37 -07:00
Justin Starry
8839dbfe5b
Use runtime executor to send pubsub notifications ( #8353 )
...
automerge
2020-02-25 20:23:54 -08:00
Michael Vines
2059af822d
Remove unnecessary new_banks_from_blockstore() argument ( #8433 )
...
automerge
2020-02-24 23:27:19 -08:00
carllin
39282be486
Determine vote_state ahead of time ( #8303 )
...
automerge
2020-02-24 19:27:04 -08:00
Michael Vines
73063544bd
Move shred_version module to sdk/
2020-02-24 14:46:12 -07:00
sakridge
b7386f9d84
Add --trusted-validator support for snapshot hash validation ( #8390 )
2020-02-21 18:42:24 -08:00
Michael Vines
18fd52367e
If the node was loaded from a snapshot, advertise it in gossip ( #8364 )
...
automerge
2020-02-20 18:53:26 -08:00
Tyera Eulberg
ab361a8073
Rename KeypairUtil to Signer ( #8360 )
...
automerge
2020-02-20 13:28:55 -08:00
anatoly yakovenko
17fb8258e5
Datapoints overwhelm the metrics queue and blow up ram usage. ( #8272 )
...
automerge
2020-02-14 11:11:55 -08:00
Michael Vines
c4fd81fc1c
The getConfirmedBlock RPC API is now disabled by default
...
The --enable-rpc-get-confirmed-block flag allows validators to opt-in to
the higher disk usage and IOPS.
2020-02-11 22:24:08 -07:00
Michael Vines
72b11081a4
Report validator rewards in getConfirmedBlock JSON RPC
2020-02-11 17:25:45 -07:00
carllin
d3712dd26d
Factor repair from gossip ( #8044 )
2020-02-11 13:11:48 -07:00
Michael Vines
60877f9ba4
Revert "Check for AVX512 at runtime to avoid invalid opcode trap ( #8166 )"
...
This reverts commit ef5fb6fa46
.
2020-02-11 12:56:02 -07:00
Trent Nelson
fc15f74c3c
CLI: Harden offline signing and tests ( #8052 )
...
* CLI: Don't sanity-check stake account when offline
* Add test helper returning vote pubkey with validator
* Delegate to the BSL. No need to force
* Be sure our offline ops are truly offline
* Specify our authorities correctly
* checks
2020-02-10 18:59:05 -07:00
Michael Vines
ef5fb6fa46
Check for AVX512 at runtime to avoid invalid opcode trap ( #8166 )
...
automerge
2020-02-07 15:01:45 -08:00
Michael Vines
8b5598fabd
Surface shred version more in tools ( #8163 )
...
automerge
2020-02-07 08:57:54 -08:00
Trent Nelson
5b070ad014
CLI: Support offline fee payers ( #8009 )
...
* CLI: Support offline fee-payer
* Add some knobs to test genesis/validator helpers
* Add tests
2020-02-07 09:14:26 -07:00
carllin
fe590da3b6
Revert "Factor repair from gossip ( #8044 )" ( #8143 )
...
This reverts commit e61257695f
.
2020-02-06 11:44:20 -08:00
carllin
e61257695f
Factor repair from gossip ( #8044 )
2020-01-31 14:23:50 -08:00
Michael Vines
a03d441e6f
Add rpc port sanity checks, fix tests
2020-01-30 20:57:58 -07:00
Michael Vines
e218f4e56e
Clean up Validator::new()
2020-01-30 20:57:58 -07:00
Michael Vines
81ba18eea6
Add --private-rpc flag
2020-01-30 20:57:58 -07:00
Michael Vines
bea9cd9684
Add --expected-shred-version option
2020-01-29 20:08:42 -07:00
Michael Vines
fd7d5cbe0d
Fix compute_shred_version() ( #7989 )
...
automerge
2020-01-27 17:05:31 -08:00
sakridge
7058287273
Consensus fix, don't consider threshold check if.. ( #7948 )
...
* Consensus fix, don't consider threshold check if
lockouts are not increased
* Change partition tests to wait for epoch with > lockout slots
* Use atomic bool to signal partition
2020-01-27 16:49:25 -08:00
Michael Vines
989355e885
Add ability to hard fork at any slot ( #7801 )
...
automerge
2020-01-24 17:27:04 -08:00
Michael Vines
c0f0fa24f8
Increase --wait-for-supermajority to wait for 75% online stake
2020-01-23 22:41:46 -07:00
Michael Vines
006cbee88a
Uninteresting cleanup
2020-01-22 21:24:20 -07:00
Greg Fitzgerald
3aabeb2b81
Rename bootstrap leader ( #7906 )
...
* Rename bootstrap leader to bootstrap validator
It's a normal validator as soon as other validators enter the
leader schedule.
* cargo fmt
* Fix build
Thanks @CriesofCarrots!
2020-01-22 09:22:09 -07:00
Sunny Gleason
5cf090c896
feat: implement RPC notification queue ( #7863 )
2020-01-20 16:08:29 -05:00
Michael Vines
e6af4511a8
Include shred version in gossip
2020-01-14 14:32:40 -07:00
Greg Fitzgerald
b5dba77056
Rename blocktree to blockstore ( #7757 )
...
automerge
2020-01-13 13:13:52 -08:00
Michael Vines
43897de12e
Account for stake held by the current node while waiting for the supermajority to join gossip
2020-01-07 22:29:31 -07:00
Michael Vines
47dd293904
supermajority is one word
2020-01-07 15:50:59 -07:00
Michael Vines
c4220a4853
clippy
2020-01-07 15:50:59 -07:00
Michael Vines
48ab88a2af
Add --wait-for-super-majority to facilitate asynchronous cluster restarts
2020-01-07 15:50:59 -07:00
Rob Walker
a7040896f0
Update to rust 1.40.0 ( #7572 )
...
* Update to rust 1.40.0
* fixups
2019-12-19 23:27:54 -08:00
anatoly yakovenko
97589f77f8
Pipeline broadcast socket transmit and blocktree record ( #7481 )
...
automerge
2019-12-16 17:11:18 -08:00
Justin Starry
b7d4330dd4
Fail fast if account paths cannot be canonicalized ( #7300 )
...
* Canonicalize account paths to avoid symlink issues
* fixes
2019-12-05 21:41:29 -05:00
TristanDebrunner
fae9c08815
Add ReplayStageConfig ( #7195 )
2019-12-04 11:17:17 -07:00
carllin
f0a40862d6
Support local cluster edge case testing ( #7135 )
...
* Refactor local cluster to support killing a partition
* Rework run_network_partition
* Introduce fixed leader schedule
* Plumb fixed schedule into test
2019-12-03 16:31:59 -08:00
Tyera Eulberg
c965a110f2
Use unbounded channel ( #7081 )
2019-11-21 14:23:40 -07:00
Tyera Eulberg
97ca6858b7
Write transaction status and fee into persistent store ( #7030 )
...
* Pass blocktree into execute_batch, if persist_transaction_status
* Add validator arg to enable persistent transaction status store
* Pass blocktree into banking_stage, if persist_transaction_status
* Add validator params to bash scripts
* Expose actual transaction statuses outside Bank; add tests
* Fix benches
* Offload transaction status writes to a separate thread
* Enable persistent transaction status along with rpc service
* nudge
* Review comments
2019-11-20 16:43:10 -07:00
Sagar Dhawan
6bfe0fca1f
Add a version field to shreds ( #7023 )
...
* Add a version field to shreds
* Clippy
* Fix Chacha Golden
* Fix shredder bench compile
* Fix blocktree bench compile
2019-11-18 18:05:02 -08:00
anatoly yakovenko
59413b3124
Fix rules for fork selection ( #6906 )
...
automerge
2019-11-15 08:36:33 -08:00
Sagar Dhawan
79d7090867
Remove obsolete references to Blob ( #6957 )
...
* Remove the name "blob" from archivers
* Remove the name "blob" from broadcast
* Remove the name "blob" from Cluset Info
* Remove the name "blob" from Repair
* Remove the name "blob" from a bunch more places
* Remove the name "blob" from tests and book
2019-11-14 11:49:31 -08:00
Parth
7b05b3dbb3
rent collector improvments ( #6888 )
...
* avoid account copying + pre-empt rent
* adding support for base rent
2019-11-14 10:56:49 +05:30
Greg Fitzgerald
a3a830e1ab
Delete Service trait ( #6921 )
2019-11-13 11:12:09 -07:00
Greg Fitzgerald
30a08f4282
Cleanup ledger macros ( #6916 )
...
automerge
2019-11-13 07:14:09 -08:00
Ryo Onodera
3faeb7fa79
Rename solana-netutil to solana-net-utils for consistency ( #6895 )
...
* sed -i -e 's/netutil/net_utils/g' $(git grep --files-with-matches netutil :**.rs)
* sed -i -e 's/netutil/net-utils/g' $(git grep --files-with-matches netutil)
* git mv netutil/ net-utils
* Tweak a bit
* Fix rustfmt & clippy
2019-11-12 13:37:13 -07:00
Michael Vines
c6b108ef4f
Don't panic in sdk/ when genesis fails to load ( #6892 )
2019-11-12 10:24:49 -07:00
Tyera Eulberg
cc6e1ea200
Stub out `getBlocksSince` and `getBlock` methods ( #6853 )
...
* Add getBlocksSince rpc method, and initial stub of getBlock method
* Return test transactions from getBlock method
* clippy
* Add comment on get_block method
2019-11-11 13:18:34 -05:00
Justin Starry
9807f47d4e
Rename genesis block to genesis config ( #6816 )
2019-11-08 23:56:57 -05:00
Tyera Eulberg
b3a75a60a4
Use rooted bank by default in rpc bank selection ( #6759 )
...
* Name anonymous parameters for clarity
* Add CommitmentConfig to select bank for rpc
* Add commitment information to jsonrpc docs
* Update send_and_confirm retries as per commitment defaults
* Pass CommitmentConfig into client requests; also various 'use' cleanup
* Use _with_commitment methods to speed local_cluster tests
* Pass CommitmentConfig into Archiver in order to enable quick confirmations in local_cluster tests
* Restore solana ping speed
* Increase wallet-sanity timeout to account for longer confirmation time
2019-11-06 14:15:00 -07:00
Michael Vines
7203036e3e
Adjust nofiles within Blocktree::open() for all ledger/ users ( #6737 )
...
automerge
2019-11-05 11:18:49 -08:00
Michael Vines
fba1af6ea9
ledger-tool can now load a ledger snapshot ( #6729 )
2019-11-04 22:14:55 -07:00
anatoly yakovenko
b825d04597
Pull perf into a separate module. ( #6718 )
...
automerge
2019-11-04 20:13:43 -08:00
Michael Vines
4d52f47f87
Move get_bank_forks() into ledger/ so its available for use by ledger-tool/ ( #6720 )
2019-11-04 19:10:06 -07:00
Tyera Eulberg
33f4aaf3fd
Rename confidence to commitment ( #6714 )
2019-11-04 16:44:27 -07:00
Michael Vines
5e3697807c
Fail gracefully if AVX support is missing ( #6705 )
2019-11-04 11:03:39 -07:00
Rob Walker
fa12a5f70b
kill rent calculator ( #6625 )
2019-10-30 16:25:12 -07:00
anatoly yakovenko
34a9619806
SigVerify stage for shreds. ( #6563 )
2019-10-28 16:07:51 -07:00
Michael Vines
35cc74ef25
Add GenesisBlock::OperatingMode to control how cluster features are activated ( #6430 )
2019-10-23 11:50:10 -07:00
Greg Fitzgerald
2636418659
Move blocktree_processor to solana_ledger ( #6460 )
...
* Drop core::result dependency in bank_forks
* Move blocktree_processor into solana_ledger
2019-10-20 09:54:38 -06:00
Greg Fitzgerald
e81ba8e79f
Split snapshot_package module ( #6447 )
...
automerge
2019-10-18 14:58:16 -07:00
Greg Fitzgerald
5468be2ef9
Add solana-ledger crate ( #6415 )
...
automerge
2019-10-18 09:28:51 -07:00
Tyera Eulberg
5d99853502
Add getBlockConfidence rpc endpoint ( #6350 )
...
automerge
2019-10-14 15:24:10 -07:00
Greg Fitzgerald
322fcea6e5
More fullnode to validator renaming ( #6337 )
2019-10-11 13:30:52 -06:00
sakridge
1b775044f7
Use multiple retransmit stage threads/sockets ( #6279 )
2019-10-10 13:24:03 -07:00
Justin Starry
5e31565574
Expand blocktree processor options ( #6248 )
...
* Refactor blocktree processor args and support full leader cache
* Add entry callback option
* Rename num_threads to override_num_threads
* Add test for entry callback
* Refactor cached leader schedule changes
* Add tests for blocktree process options
* Refactor test
* @mvines feedback
2019-10-08 17:58:49 -04:00
Michael Vines
f9f5bc2eb5
More clippy
2019-10-02 21:21:07 -07:00
Parth
2c8c2029d8
cli: enforce rent-exemption balance for stake, vote and program accounts in cli ( #6118 )
...
* require minimum balance for stake, vote and program accounts
2019-10-01 01:14:49 +05:30
Michael Vines
e5a7d08966
Add --expected-genesis-blockhash validator argument ( #6174 )
...
automerge
2019-09-29 19:09:24 -07:00
Michael Vines
b4da83a3ab
Remove CUDA feature ( #6094 )
2019-09-26 13:36:51 -07:00
Sagar Dhawan
d379786c90
Fix bind errors ( #5986 )
...
* Add ability to bind to a common tcp/udp port
* Extend port range for local-net sanity and fix validator executable
2019-09-19 17:16:22 -07:00
sakridge
ceacc42126
Call gpu init earlier to force compilation. ( #5902 )
2019-09-14 12:32:57 -07:00
Jack May
e8d88f3237
Split SDK's timing.rs ( #5823 )
2019-09-06 14:30:56 -07:00
Pankaj Garg
05d2eec45c
Remove unnecessary erasure config references ( #5809 )
2019-09-05 14:46:41 -07:00
carllin
bd74e63702
Offload remaining confidence cache computation to separate thread ( #5792 )
...
* Move remaining confidence cache computation to separate thread
* Move confidence cache out of bank forks
2019-09-04 23:10:25 -07:00
Pankaj Garg
3b0d48e3b8
Remove blocktree blob references ( #5691 )
...
* Remove blocktree blob references
* fixes and cleanup
* replace uninitialized() call with MaybeUninit
* fix bench
2019-09-03 21:32:51 -07:00
Michael Vines
4786143524
Add a more helpful error on genesis block mismatch ( #5744 )
...
automerge
2019-08-30 09:10:22 -07:00
Michael Vines
52da207f83
test_snapshots_restart_validity now passes ( #5644 )
...
automerge
2019-08-25 21:33:41 -07:00