behzad nouri
42f1ef8acb
moves gossip-work thread pool cons to ClusterInfo::new ( #12402 )
2020-09-24 18:36:31 +00:00
Justin Starry
6601ec8f26
Record and store invoked instructions in transaction meta ( #12311 )
...
* Record invoked instructions and store in transaction meta
* Enable cpi recording if transaction sender is some
* Rename invoked to innerInstructions
2020-09-24 22:36:22 +08:00
Justin Starry
731a943239
Remove transaction encoding from storage layer ( #12404 )
2020-09-24 13:10:29 +08:00
sakridge
68e5a2ef56
Add RPC notify and banking keys debug ( #12396 )
2020-09-23 18:46:42 -07:00
Tyera Eulberg
e1a212fb79
Bump spl-token ( #12395 )
2020-09-22 17:08:54 -06:00
Josh
65a6bfad09
Add blockstore column to store performance sampling data ( #12251 )
...
* Add blockstore column to store performance sampling data
* introduce timer and write performance metrics to blockstore
* introduce getRecentPerformanceSamples rpc
* only run on rpc nodes enabled with transaction history
* add unit tests for get_recent_performance_samples
* remove RpcResponse from rpc call
* refactor to use Instant::now and elapsed for timer
* switch to root bank and ensure not negative subraction
* Add PerfSamples to purge/compaction
* refactor to use Instant::now and elapsed for timer
* switch to root bank and ensure not negative subraction
* remove duplicate constants
Co-authored-by: Tyera Eulberg <tyera@solana.com>
2020-09-22 12:26:32 -07:00
Michael Vines
208dd1de3a
Move TestValidator into its own module
2020-09-19 08:35:26 -07:00
Michael Vines
1a03afccb1
validator/ cleanup
2020-09-19 08:35:26 -07:00
Ryo Onodera
cb8661bd49
Persistent tower ( #10718 )
...
* Save/restore Tower
* Avoid unwrap()
* Rebase cleanups
* Forcibly pass test
* Correct reconcilation of votes after validator resume
* d b g
* Add more tests
* fsync and fix test
* Add test
* Fix fmt
* Debug
* Fix tests...
* save
* Clarify error message and code cleaning around it
* Move most of code out of tower save hot codepath
* Proper comment for the lack of fsync on tower
* Clean up
* Clean up
* Simpler type alias
* Manage tower-restored ancestor slots without banks
* Add comment
* Extract long code blocks...
* Add comment
* Simplify returned tuple...
* Tweak too aggresive log
* Fix typo...
* Add test
* Update comment
* Improve test to require non-empty stray restored slots
* Measure tower save and dump all tower contents
* Log adjust and add threshold related assertions
* cleanup adjust
* Properly lower stray restored slots priority...
* Rust fmt
* Fix test....
* Clarify comments a bit and add TowerError::TooNew
* Further clean-up arround TowerError
* Truly create ancestors by excluding last vote slot
* Add comment for stray_restored_slots
* Add comment for stray_restored_slots
* Use BTreeSet
* Consider root_slot into post-replay adjustment
* Tweak logging
* Add test for stray_restored_ancestors
* Reorder some code
* Better names for unit tests
* Add frozen_abi to SavedTower
* Fold long lines
* Tweak stray ancestors and too old slot history
* Re-adjust error conditon of too old slot history
* Test normal ancestors is checked before stray ones
* Fix conflict, update tests, adjust behavior a bit
* Fix test
* Address review comments
* Last touch!
* Immediately after creating cleaning pr
* Revert stray slots
* Revert comment...
* Report error as metrics
* Revert not to panic! and ignore unfixable test...
* Normalize lockouts.root_slot more strictly
* Add comments for panic! and more assertions
* Proper initialize root without vote account
* Clarify code and comments based on review feedback
* Fix rebase
* Further simplify based on assured tower root
* Reorder code for more readability
Co-authored-by: Michael Vines <mvines@gmail.com>
2020-09-19 14:03:54 +09:00
Michael Vines
c4913e3c9e
SendTransactionServices now exit their thread on channel drop instead of by a flag
2020-09-18 17:29:10 +00:00
Michael Vines
75c3690ccd
Give the duplicate send_transaction_service a different thread name
2020-09-18 17:29:10 +00:00
behzad nouri
9b866d79fb
shards crds values based on their hash prefix ( #12187 )
...
filter_crds_values checks every crds filter against every hash value:
https://github.com/solana-labs/solana/blob/ee646aa7/core/src/crds_gossip_pull.rs#L432
which can be inefficient if the filter's bit-mask only matches small
portion of the entire crds table.
This commit shards crds values into separate tables based on shard_bits
first bits of their hash prefix. Given a (mask, mask_bits) filter,
filtering crds can be done by inspecting only relevant shards.
If CrdsFilter.mask_bits <= shard_bits, then precisely only the crds
values which match (mask, mask_bits) bit pattern are traversed.
If CrdsFilter.mask_bits > shard_bits, then approximately only
1/2^shard_bits of crds values are inspected.
Benchmarking on a gce cluster of 20 nodes, I see ~10% improvement in
generate_pull_responses metric, but with larger clusters, crds table and
2^mask_bits are both larger, so the impact should be more significant.
2020-09-17 14:05:16 +00:00
Trent Nelson
32dcce0ac1
RPC: Limit request payload size to 50kB
2020-09-16 20:21:59 +00:00
Justin Starry
f6cda2579f
Fix off-by-one max payload checks
2020-09-16 12:46:06 -07:00
Michael Vines
c6eea94edc
Remove stale comment
2020-09-16 08:42:26 -07:00
Michael Vines
749208fa32
RPC sendTransaction now returns transaction logs on simulation failure
2020-09-16 08:42:26 -07:00
sakridge
3930cb865a
Add keccak-secp256k1 instruction ( #11839 )
...
* Implement keccak-secp256k1 instruction
Verifies eth addreses with ecrecover function
* Move secp256k1 test
2020-09-15 18:23:21 -07:00
Michael Vines
daae638781
Add --gossip-validator argument
2020-09-14 20:18:27 -07:00
behzad nouri
d6ec03f13c
patches default impl for crds filter ( #12199 )
...
In CrdsFilter.mask all bits after mask_bits are set to 1:
https://github.com/solana-labs/solana/blob/555252f4/core/src/crds_gossip_pull.rs#L65
However the default implementation, sets both mask and mask_bits to zero
which is inconsistent with CrdsFilter::compute_mask for a mask_bits of
zero.
This commit changes the default implementation by setting mask to
`!0u64` (i.e all bits set to one). As a result, for the default crds
filter, `test_mask` will always return true, whereas previously it was
always returning false.
https://github.com/solana-labs/solana/blob/555252f4/core/src/crds_gossip_pull.rs#L85
This is only used in tests and benchmarks, but causes some benchmarks to
be misleading by short circuiting in this line:
https://github.com/solana-labs/solana/blob/555252f4/core/src/crds_gossip_pull.rs#L429
2020-09-13 13:08:25 +00:00
Ryo Onodera
de4a613610
Check bank capitalization ( #11927 )
...
* Check bank capitalization
* Simplify and unify capitalization calculation
* Improve and add tests
* Avoid overflow and inhibit automatic restart
* Fix test
* Tweak checked sum for cap. and add tests
* Fix broken build after merge conflicts..
* Rename to ClusterType
* Rename confusing method
* Clarify comment
* Verify cap. in rent and inflation tests
Co-authored-by: Stephen Akridge <sakridge@gmail.com>
2020-09-12 01:48:06 +09:00
carllin
9c490e06b0
Fix propagation on startup from snapshot ( #12177 )
2020-09-11 02:03:11 -07:00
Michael Vines
6f325d4594
`solana-validator --rpc-bind-address` argument now works as expected
2020-09-10 13:36:13 -07:00
Michael Vines
10ce839ec0
Speed up `bigtable transaction-history` command
2020-09-10 05:22:10 +00:00
Tyera Eulberg
4431080066
Program subscriptions now properly check results len and token program id ( #12139 )
2020-09-09 21:07:29 +00:00
Tyera Eulberg
05db41fe9c
Cache block time in Blockstore ( #11955 )
...
* Add blockstore column to cache block times
* Add method to cache block time
* Add service to cache block time
* Update rpc getBlockTime to use new method, and refactor blockstore slightly
* Return block_time with confirmed block, if available
* Add measure and warning to cache-block-time
2020-09-09 09:33:14 -06:00
behzad nouri
28f2fa3fd5
uses rust intrinsics to convert hashes to u64 ( #12097 )
2020-09-09 15:28:17 +00:00
Michael Vines
9e96180ce4
getMinimumBalanceForRentExemption now only responds to valid account lengths
2020-09-08 17:48:09 +00:00
Ryo Onodera
53b8ea4464
Rename to ClusterType and restore devnet compat. ( #12068 )
...
* Rename to ClusterType and restore devnet compat.
* De-duplicate parse code and add comments
* Adjust default Devnet genesis & reduce it in tests
2020-09-08 23:55:09 +09:00
anatoly yakovenko
c67f8bd821
Forward transactions to the expected leader instead of your own TPU port ( #12004 )
...
* Use PoHRecorder to send to the right leader
* cleanup
* fmt
* clippy
* Cleanup, fix bug
Co-authored-by: Carl <carl@solana.com>
2020-09-08 17:00:49 +08:00
Justin Starry
9940870c89
Fix RPC transaction method configs serialization ( #12100 )
2020-09-08 13:08:09 +08:00
Justin Starry
369d376d10
Fix signaure subscription panic ( #12077 )
2020-09-06 14:33:12 +08:00
Ryo Onodera
eabc63cdcd
Fix bad predicate with malformed gossip votes ( #12072 )
2020-09-06 13:27:50 +09:00
Michael Vines
b64fb295a1
Add LARGEST_CONFIRMED_ROOT_UPLOAD_DELAY
2020-09-04 16:01:49 -07:00
Michael Vines
4ba43c29ce
Request correct access
2020-09-04 16:01:49 -07:00
Michael Vines
d3611f74c8
Add exit flag for bigtable upload operations
2020-09-04 16:01:49 -07:00
Michael Vines
bafdcf24f5
Add BigTableUploadService
2020-09-04 16:01:49 -07:00
Michael Vines
bc7731b969
Add BigTableUploadService
2020-09-04 16:01:49 -07:00
Michael Vines
d8e2038dda
Add --enable-bigtable-ledger-upload flag
2020-09-04 16:01:49 -07:00
behzad nouri
114c211b66
adds new CrdsFilterSet type for Vec<CrdsFilter> ( #12029 )
2020-09-04 13:04:47 +00:00
Tyera Eulberg
39246f9dd7
Revert signature-notification format change ( #12032 )
...
* Use untagged RpcSignatureResult enum to avoid breaking downstream consumers of current signature subscriptions
* Clean up client duplication
* Clippy
2020-09-03 18:14:45 -06:00
Greg Fitzgerald
2c091e4fca
Mark a withdraw authority as non-circulating ( #12033 )
2020-09-03 23:45:49 +00:00
behzad nouri
bc7adb97ed
builds crds filters without looping over filters ( #11998 )
2020-09-03 20:32:23 +00:00
Tyera Eulberg
90fad36613
Use new_response for consistency
2020-09-03 12:02:26 -06:00
Tyera Eulberg
b22de369b7
Rpc: add getMultipleAccounts endpoint ( #12005 )
...
* Add rpc endpoint to return the state of multiple accounts from the same bank
* Add docs
* Review comments: Dedupe account code, default to base64, add max const
* Add get_multiple_accounts to rpc-client
2020-09-03 11:35:06 -06:00
carllin
3f39ab1e04
Fix forwarding calculation ( #12014 )
...
Co-authored-by: Carl <carl@solana.com>
2020-09-03 02:31:28 -07:00
carllin
1c1a3f979d
Detect and notify when deserializable shreds are available ( #11816 )
...
* Add logic to check for complete data ranges
* Add RPC signature notification
Co-authored-by: Carl <carl@solana.com>
2020-09-01 22:06:06 -07:00
Michael Vines
7341e60043
Ensure that the spl-token 2 native mint account is owned by the spl-token 2 program.
...
Workaround for https://github.com/solana-labs/solana-program-library/issues/374 until spl-token 3 is shipped
2020-09-01 17:09:36 +00:00
carllin
7641b60a2b
Remove log ( #11949 )
...
Co-authored-by: Carl <carl@solana.com>
2020-08-31 16:40:22 -07:00
Tyera Eulberg
60c7ac6f95
Fix get_parsed_token_accounts ( #11907 )
2020-08-29 12:38:27 -06:00
Tyera Eulberg
befd99edac
Bump spl-token version
2020-08-29 03:20:38 -06:00
Tyera Eulberg
2eff9a19c3
Update to token pack/unpack changes ( #11900 )
2020-08-28 22:06:30 -06:00
sakridge
c4253dc0f9
Update to rayon 1.4.0 ( #11898 )
2020-08-28 21:00:11 -07:00
Tyera Eulberg
76be36c9ce
Update spl-token to v2.0 ( #11884 )
...
* Update account-decoder to spl-token v2.0
* Update transaction-status to spl-token v2.0
* Update rpc to spl-token v2.0
* Update getTokenSupply to pull from Mint directly
* Fixup to spl-token v2.0.1
2020-08-28 15:54:57 -06:00
Ryo Onodera
d8c529a9b8
Small cleaning around consensus/bank_forks ( #11873 )
2020-08-28 08:56:53 +09:00
Tyera Eulberg
5c7d743883
Timestamp first vote ( #11856 )
2020-08-26 18:34:02 +00:00
Tyera Eulberg
1988ee9cd6
Rpc: Filter accounts with invalid mints from get_parsed_token_accounts ( #11844 )
...
* Filter out accounts with invalid mints from get_parsed_token_accounts
* Explicit docs
2020-08-26 11:39:42 -06:00
Michael Vines
a1e2357d12
`solana-gossip spy` can now be given an identity keypair (`--identity` argument)
2020-08-22 17:00:50 -07:00
Michael Vines
b660704faa
Allow the sendTransaction preflight commitment level to be configured
2020-08-22 08:19:50 -07:00
behzad nouri
418b483af6
Fix filter_crds_values output alignment with the inputs ( #11734 )
2020-08-21 12:32:37 -07:00
Michael Vines
247f27af37
Submit a vote timestamp every vote ( #10630 )
...
* Submit a timestamp for every vote
* Submit at most one vote timestamp per second
* Submit a timestamp for every new vote
Co-authored-by: Tyera Eulberg <tyera@solana.com>
2020-08-21 11:10:51 -06:00
carllin
c8d67aa8eb
Add option for repairing only from trusted validators ( #11752 )
...
Co-authored-by: Carl <carl@solana.com>
2020-08-21 00:35:11 -07:00
Tyera Eulberg
747f8d5877
Rpc: Return error if block does not exist ( #11743 )
...
* Return error if block does not exist
* Update docs
2020-08-20 15:05:30 -06:00
Tyera Eulberg
2fd2aceeb2
Bump spl-token to clean up magic number ( #11726 )
2020-08-20 09:51:12 -06:00
carllin
b7ed06b17a
Cleanup test utilities ( #11723 )
...
* Add voting utility
* Add blockstore utility
Co-authored-by: Carl <carl@solana.com>
2020-08-20 05:04:38 +00:00
carllin
5f8d34feb3
Skip grace blocks if previous leader was on different fork ( #11679 )
...
* Start leader blocks if previous leader was on different fork
* Fix test
Co-authored-by: Carl <carl@solana.com>
2020-08-19 08:16:24 +00:00
carllin
0f0a2ddafe
Filter push/pulls from spies ( #11620 )
...
* Filter push/pulls from spies
* Don't pull from peers with shred version == 0, don't push to people with shred_version == 0
Co-authored-by: Carl <carl@solana.com>
2020-08-18 18:52:45 -07:00
Michael Vines
d15173ad9d
Address latest nightly clippy lints, but globally disable stable_sort_primitive
2020-08-17 22:36:10 -07:00
Michael Vines
adc984a225
Rename Binary64 to Base64. Establish Base58 encoding
2020-08-17 17:26:29 -07:00
Michael Vines
757e147b3b
Rework UiAccountData encode/decode such that it works from Rust
2020-08-17 17:26:29 -07:00
Ryo Onodera
23fa84b322
Re-do rent collection check on rent-exempt account ( #11349 )
...
* wip: re-do rent collection check on rent-exempt account
* Let's see how the ci goes
* Restore previous code
* Well, almost all new changes are revertable
* Update doc
* Add test and gating
* Fix tests
* Fix tests, especially avoid to change abi...
* Fix more tests...
* Fix snapshot restore
* Align to _new_ with better uninitialized detection
2020-08-17 14:22:16 +09:00
Tyera Eulberg
6c5b8f324a
Rpc: Add until parameter for getConfirmedSignaturesForAddress2 ( #11644 )
...
* Refactor bigtable apis to accept start and end keys
* Make helper fn to deserialize cell data
* Refactor get_confirmed_signatures_for_address to use get_row_data range
* Add until param to get_confirmed_signatures_for_address
* Add until param to blockstore api
* Plumb until through client/cli
* Simplify client params
2020-08-15 10:42:17 -06:00
Jack May
7c736f71fe
Make BPF Loader static ( #11516 )
2020-08-14 12:32:45 -07:00
Tyera Eulberg
4da1e9833c
Ensure highest_confirmed_root only grows ( #11596 )
...
* Split out commitment-cache update for unit testing
* Add failing test
* Ensure highest_confirmed_root only grows
2020-08-13 00:59:44 -06:00
sakridge
f519fdecc2
generate_pull_response optimization ( #11597 )
2020-08-12 22:45:19 -07:00
Greg Fitzgerald
574c356863
Add CommitmentSlots::new_from_slot() ( #11600 )
2020-08-13 03:51:15 +00:00
Tyera Eulberg
b1e452f876
Return blockstore signatures-for-address despite bigtable error ( #11594 )
2020-08-12 17:57:05 -06:00
sakridge
54137e3446
Add incoming pull response counter ( #11591 )
2020-08-12 14:07:05 -07:00
carllin
473b5249e3
Fix assertion failure ( #11572 )
...
Co-authored-by: Carl <carl@solana.com>
2020-08-12 12:10:24 -07:00
Jack May
9290e561e1
Align host addresses ( #11384 )
...
* Align host addresses
* support new program abi
* update epoch rollout
* Enforce aligned pointers in cross-program invocations
2020-08-11 16:11:52 -07:00
carllin
1b238dd63e
Gossip log ( #11555 )
...
Co-authored-by: Carl <carl@solana.com>
2020-08-11 21:03:54 +00:00
carllin
7ef50a9352
Move cluster slots update to separate thread ( #11523 )
...
* Add cluster_slots_service
Co-authored-by: Carl <carl@solana.com>
2020-08-11 12:48:13 -07:00
Ryo Onodera
2910fd467f
Fix rust fmt ( #11537 )
2020-08-11 22:53:55 +09:00
anatoly yakovenko
713851b68d
filter out old gossip pull requests ( #11448 )
...
* init
* builds
* stats
* revert
* tests
* clippy
* add some jitter
* shorter jitter timer
* update
* fixup! update
* use saturating_sub
* fix filters
2020-08-11 06:26:42 -07:00
dependabot[bot]
191a2eb088
chore: bump indexmap from 1.4.0 to 1.5.1
...
Bumps [indexmap](https://github.com/bluss/indexmap ) from 1.4.0 to 1.5.1.
- [Release notes](https://github.com/bluss/indexmap/releases )
- [Commits](https://github.com/bluss/indexmap/compare/1.4.0...1.5.1 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-08-10 22:49:55 -07:00
Tyera Eulberg
88ca04dbdb
Add config param to specify offset/length for single and program account info ( #11515 )
...
* Add config param to specify dataSlice for account info and program accounts
* Use match instead of if
2020-08-10 22:35:29 +00:00
Tyera Eulberg
da210ddd51
Fix parsing of spl-token Mint ( #11512 )
...
* Add failing test
* Fix jsonParsed mint
2020-08-10 20:35:36 +00:00
Tyera Eulberg
a9f76862fb
Decode native-program and sysvar accounts ( #11463 )
...
* Pass pubkey in to account-decoder for sysvars
* Decode sysvar accounts
* Decode config accounts; move validator-info lower
* Decode stake accounts
* Review comments
* Stringify any account lamports and epochs that can be set to u64::MAX
2020-08-09 07:50:45 +00:00
sakridge
068d23f298
Add Binary64 option for account data ( #11474 )
...
* Add Binary64 option for account data
* Decode into binary64
* Reword docs
2020-08-08 22:40:13 -07:00
Greg Fitzgerald
edadd5d6d5
Remove Budget from CLI ( #11451 )
...
* Remove support for Budget
Also:
* Make "pay" command a deprecated alias for the "transfer" command
* chore: remove budget from web3.js
* Drop Budget depedency from core
Validators no longer ship with builtin Budget
2020-08-07 16:01:51 -06:00
carllin
7e25130529
Send votes from banking stage to vote listener ( #11434 )
...
* Send votes from banking stage to vote listener
Co-authored-by: Carl <carl@solana.com>
2020-08-07 11:21:35 -07:00
Tyera Eulberg
b7c2681903
Token Accounts: return ui_amount, decimals with decoded account ( #11407 )
...
* Return ui_amount, decimals from token client methods
* Return ui_amount, decimals in RPC jsonParsed token accounts
* Fixup docs
* Return ui_amount, decimals in pubsub jsonParsed token accounts
* Remove unnecessary duplicate struct
* StringAmount rename
2020-08-07 11:37:39 -06:00
Greg Fitzgerald
bad486823c
Add a client for BankForks ( #10728 )
...
Also:
* Use BanksClient in solana-tokens
2020-08-07 08:45:17 -06:00
Greg Fitzgerald
3fdd8ffdf0
Remove circular dep between InstructionError and SystemError ( #11427 )
2020-08-06 22:04:43 +00:00
Michael Vines
4222932e08
Plug getConfirmedSignaturesForAddress2 into bigtable storage
2020-08-05 23:04:16 -07:00
Michael Vines
02c0981ecf
Rename startAfter to before
2020-08-05 14:33:14 -07:00
Michael Vines
087fd32ce3
Reimplement transaction-history command with getConfirmedSignaturesForAddress2
2020-08-05 14:33:14 -07:00
Michael Vines
1b2276520b
Add getConfirmedSignaturesForAddress2 RPC method
2020-08-05 14:33:14 -07:00
Michael Vines
dfae9a9864
Plumb Bigtable ledger storage into the RPC subsystem
2020-08-05 14:27:12 -07:00
Michael Vines
0e02740565
Setup a tokio 0.2 runtime for RPC usage
2020-08-05 14:27:12 -07:00
Michael Vines
b876fb84ba
Make room for tokio 0.2
2020-08-05 14:27:12 -07:00
Trent Nelson
e12ab9d0dd
Bump version to 1.4.0
2020-08-05 12:04:15 -06:00
Tyera Eulberg
86e3f96f16
Return token amounts as floats ( #11370 )
...
* Return token amounts as floats
* Floating-point equality
* Return float and raw token amounts
* Fix decimals and token rpcs for native-mint tokens
* Fixup docs and review comments
2020-08-05 06:48:09 +00:00
Trent Nelson
14339dec0a
Harden RPC preflight test inputs
2020-08-05 06:06:57 +00:00
Trent Nelson
e25846e1ad
Add failing test for unsane tx in RPC preflight
2020-08-05 06:06:57 +00:00
Tyera Eulberg
d0144ce382
Fix token rpc-client methods ( #11361 )
...
* Convert None to error in parse_keyed_accounts
* Allow encoding configuration in getTokenAccounts methods
2020-08-04 11:11:30 -06:00
carllin
5b4cb083f1
Add integration test for optimistic confirmation failure detection ( #11353 )
...
* Add optimistic conf failure test
* Add check for optimistic failure log
Co-authored-by: Carl <carl@solana.com>
2020-08-03 20:01:52 -07:00
Michael Vines
1d40685b8e
Remove support for 1.1.0 version snapshots
2020-08-04 01:01:50 +00:00
Michael Vines
eefcf484cb
clippy
2020-08-03 18:35:15 +00:00
Tyera Eulberg
0bc9bcc8b9
Fix bad rebase
2020-08-02 12:09:06 -06:00
Tyera Eulberg
d1b2e6cdf2
Add getTokenLargestAccounts endpoint ( #11322 )
2020-08-02 10:23:44 -06:00
Michael Vines
ffbd859c42
Update spl-token and spl-memo
2020-08-02 07:53:42 -07:00
Tyera Eulberg
9bcfc51df1
Add token rpc endpoints to rpc-client ( #11315 )
2020-07-31 20:53:49 +00:00
carllin
d7e961dac4
Enable new fork choice on mainnet, 400_000 slots into epoch 61 ( #11312 )
...
Co-authored-by: Carl <carl@solana.com>
2020-07-31 20:37:58 +00:00
Greg Fitzgerald
61d9d219f9
Withdraw authority no longer implies a custodian ( #11302 )
...
* Withdraw authority no longer implies a custodian
Before this change, if the withdraw authority and custodian had
the same public key, then a withdraw authority signature would
imply a custodian signature and lockup would be not be enforced.
After this change, the client's withdraw instruction must
explictly reference a custodian account in its optional sixth
account argument.
Likewise, the fee-payer no longer implies either a withdraw
authority or custodian.
* Fix test
The test was configuring the stake account with the fee-payer as
the withdraw authority, but then passing in a different key to
the withdraw instruction's withdraw authority parameter. It only
worked because the second transaction was signed by the fee-payer.
2020-07-31 13:37:53 -06:00
Michael Vines
c78e12a262
Avoid spl-sdk dependency, which inhibits crate publishing
2020-07-30 23:47:26 +00:00
Greg Fitzgerald
1d2426ddbc
Move simulate_transaction from rpc to bank ( #11294 )
2020-07-30 19:15:45 +00:00
carllin
a23e1129a9
Switch to optimistic conf for notifying gossip subscribers ( #11289 )
...
Co-authored-by: Carl <carl@solana.com>
2020-07-30 02:52:27 -07:00
carllin
bf18524368
Add hook for getting vote transactions on replay ( #11264 )
...
* Add hook for getting vote transactions on replay
Co-authored-by: Carl <carl@solana.com>
2020-07-29 23:17:40 -07:00
Trent Nelson
a888f2f516
Reject TXs sent via RPC with no signatures
2020-07-30 00:07:33 -06:00
Trent Nelson
9778fedd7a
Add new RPC error for TXs with no signatures
2020-07-30 00:07:33 -06:00
Trent Nelson
a7079e4dde
Dereplicode send_transaction and request_airdrop RPC handlers
2020-07-30 00:07:33 -06:00
Trent Nelson
b962b2ce2d
Add failing test for TX sent via RPC with no signatures
2020-07-30 00:07:33 -06:00
carllin
ebe367f722
Add utility function ( #11262 )
...
Co-authored-by: Carl <carl@solana.com>
2020-07-28 23:44:10 -07:00
Tyera Eulberg
b45ac5d4db
Add SPL Token-specific rpc endpoints ( #11231 )
...
* Simplify account-decoder program ids + spl_token helper
* Spl program namespace version
* Add getTokenAccountBalance endpoint
* Remove token program id from getTokenAccountBalance request
* Add getTokenSupply endpoint
* Remove token program id from getTokenSupply request
* Add getTokenAccountsByOwner/Delegate endpoints
* Remove token program id from getTokenAccountsByOwner/Delegate requests
* Named parameter
2020-07-28 23:00:48 -06:00
Trent Nelson
678f94903b
Fill out missing RPC request received debug logging
2020-07-29 01:51:20 +00:00
carllin
a7ea340f22
Track votes from gossip for optimistic confirmation ( #11209 )
...
* Add check in cluster_info_vote_listenere to see if optimstic conf was achieved
Add OptimisticConfirmationVerifier
* More fixes
* Fix merge conflicts
* Remove gossip notificatin
* Add dashboards
* Fix rebase
* Count switch votes as well toward optimistic conf
* rename
Co-authored-by: Carl <carl@solana.com>
2020-07-28 09:33:27 +00:00
carllin
c0dc21620b
Test cleanup ( #11192 )
...
Co-authored-by: Carl <carl@solana.com>
2020-07-24 09:55:25 +00:00
carllin
6578ad7d08
Speed up local cluster partitioning tests ( #11177 )
...
* Fix long local cluster partition tests by skipping slot warmup
Co-authored-by: Carl <carl@solana.com>
2020-07-23 18:50:42 -07:00
Greg Fitzgerald
7484202282
Return root when bank not found ( #11188 )
...
* Return root when bank not found
* Apply suggestions from code review
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2020-07-24 00:57:15 +00:00
Greg Fitzgerald
8ccce1e543
Upgrade ed25519-dalek ( #11183 )
2020-07-23 17:23:51 -06:00
Tyera Eulberg
c90de8978d
Add encoding and filters parameters to rpc Subscriptions ( #11065 )
...
* Plumb account configs and enable encoding
* Enable filters for pubsub program accounts
* Update docs
2020-07-23 13:38:28 -06:00
Tyera Eulberg
ca6480a8ac
Use OrderedIterator in collect_balances ( #11166 )
2020-07-23 13:35:10 -06:00
Tyera Eulberg
b5a6a2f461
Initialize BlockCommitmentCache slot and root on node boot ( #11178 )
...
* Initialize commitment-cache slot and root on node boot
* Ignore long tests
2020-07-23 11:44:57 -06:00
carllin
e556f85178
Add test for making sure switch doesn't happen past failure threshold ( #11138 )
...
Fix switch threshold
Co-authored-by: Carl <carl@solana.com>
2020-07-21 23:04:24 -07:00
Tyera Eulberg
6c38369042
Use OrderedIterator in TransactionStatusService ( #11149 )
...
* Split out get-first-err for unit testing
* Add failing test
* Add missing ordering
2020-07-21 20:06:49 +00:00
carllin
73f3d04798
Add replay votes to gossip vote tracking ( #11119 )
...
* Plumb replay vote channel for notifying vote listener of replay votes
* Keep gossip only notification for debugging gossip in the future
Co-authored-by: Carl <carl@solana.com>
2020-07-20 17:29:07 -07:00
Greg Fitzgerald
23c2e55cbf
Use BlockCommitmentCache for RPC slots, take 2 ( #11137 )
...
* Use BlockCommitmentCache for RPC slots (#11103 )
* Add BankForks::highest_descendant(slot)
* Update debug messages
* Update core/src/rpc.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* cargo fmt
* Remove highest_descendant
* Fix test
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Fix crossed-in-flight compilation error
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2020-07-20 23:03:40 +00:00
Michael Vines
d19cd3a18a
Revert "Use BlockCommitmentCache for RPC slots ( #11103 )" ( #11122 )
...
This reverts commit 815b0f31b4
.
2020-07-18 16:39:12 -07:00
Greg Fitzgerald
815b0f31b4
Use BlockCommitmentCache for RPC slots ( #11103 )
...
* Add BankForks::highest_descendant(slot)
* Update debug messages
* Update core/src/rpc.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* cargo fmt
* Remove highest_descendant
* Fix test
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2020-07-17 16:22:27 -06:00
Tyera Eulberg
a255b0fc86
Rename CacheSlotInfo to CommitmentSlots ( #11111 )
2020-07-17 17:54:49 +00:00
Tyera Eulberg
fdff681bcc
Simplify BlockCommitmentCache slot info ( #11106 )
...
* Refactor BlockCommitmentCache, store a CacheSlotInfo
* Comma
2020-07-17 09:24:51 -06:00
Dan Albert
7958dd88c2
Update non_circulating_supply.rs
2020-07-16 12:57:13 -06:00
sakridge
7fe870ba48
Make accounts file clean faster ( #11071 )
2020-07-15 09:37:40 -07:00
Tyera Eulberg
9a80e31bae
Expose tss to the other blockstore_processor path ( #11070 )
2020-07-14 21:14:48 -06:00
dependabot-preview[bot]
5055028231
Bump serde_json from 1.0.54 to 1.0.56
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.54 to 1.0.56.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.54...v1.0.56 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-14 11:13:22 -07:00
carllin
e9cbdf711b
Add TreeDiff trait to reuse tree functions ( #11046 )
...
Co-authored-by: Carl <carl@solana.com>
2020-07-14 07:38:48 +00:00
Kristofer Peterson
ed5a2f2a90
Fold bank serialisation into serde snapshot ( #10581 )
...
* Move bank (de)serialisation logic from bank and snapshot_utils to serde_snapshot.
Add sanity assertions between genesis config and bank fields on deserialisation.
Atomically update atomic bool in quote_for_specialization_detection().
Use same genesis config when restoring snapshots in test cases.
* Tidy up namings and duplicate structs to version
* Apply struct renames to tests
* Update abi hashes
Co-authored-by: Ryo Onodera <ryoqun@gmail.com>
2020-07-13 23:00:59 +09:00
Greg Fitzgerald
145906123a
Simplify use of SendTransactionService ( #10999 )
...
* Send transaction upon recv
This will allow us to move the channel to the public interface
* Use a channel, not a method, to communicate
* Pipeline the services
* Ignore unused return values
* Fix clippy warning
2020-07-11 01:14:41 +00:00
Michael Vines
25ca99cdcf
largest -> highest
2020-07-10 12:57:32 -07:00
Michael Vines
aef6bf272e
getConfirmedBlocks now has an upper limit on slot range
2020-07-10 12:18:31 -07:00
sakridge
631f051c68
Add jitter to cleanup to prevent all nodes cleaning at the same time ( #10936 )
2020-07-10 11:54:45 -07:00
carllin
7a14e359d7
Switch to using weighted repair in RepairService ( #10735 )
...
* Plumb votes into repair service
* Remove refactoring
* Fix tests
* Switch to using RepairWeight for generating repairs
* Revert "Weight repair slots based on vote stake (#10741 )"
This reverts commit cabd0a09c3
.
* Update logging
Co-authored-by: Carl <carl@solana.com>
2020-07-10 05:52:54 +00:00
Greg Fitzgerald
16eeea4f82
Move SendTransactionService to solana_runtime ( #10972 )
2020-07-09 18:28:26 +00:00
Greg Fitzgerald
17a8cc862b
Remove core dependencies from SendTransactionService ( #10965 )
...
* Remove core dependencies from SendTransactionService
* Fix clippy warnings
2020-07-08 19:13:42 -06:00
Greg Fitzgerald
ebadbce920
Drop bank from BlockCommitmentCache ( #10959 )
...
* Remove bank reference from BlockCommitmentCache
* Don't use a Bank to create BlockCommitmentCache
* Rename recent_slot to slot
2020-07-09 00:50:13 +00:00
dependabot-preview[bot]
841ecfd927
chore(deps): bump bincode from 1.2.1 to 1.3.1 ( #10867 )
...
* chore(deps): bump bincode from 1.2.1 to 1.3.1
Bumps [bincode](https://github.com/servo/bincode ) from 1.2.1 to 1.3.1.
- [Release notes](https://github.com/servo/bincode/releases )
- [Commits](https://github.com/servo/bincode/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
* Switch from deprecated method
* Add options to maintain behavior with bincode::options()
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
Co-authored-by: Tyera Eulberg <tyera@solana.com>
2020-07-09 00:08:05 +00:00
Tyera Eulberg
1a6bbd2867
Limited Deserialize isn't limiting anything ( #10952 )
...
* Add failing test
* Use deserialize_from to enable limit
2020-07-08 15:54:42 -06:00
Greg Fitzgerald
930162a079
Drop dependency on BlockCommitmentCache bank ( #10946 )
...
* Drop dependency on BlockCommitmentCache bank
* cargo fmt
2020-07-07 20:13:30 -06:00
Greg Fitzgerald
2fdbb97244
Rename largest_confirmed_root to highest_confirmed_root ( #10947 )
2020-07-07 23:59:46 +00:00
sakridge
d492f4f15b
Clean accounts path on validator startup ( #10929 )
2020-07-07 09:41:45 -07:00
carllin
3f6042d8b3
Add RepairWeight to track votes seen in gossip for weighted repair ( #10903 )
...
* Add RepairWeight
Co-authored-by: Carl <carl@solana.com>
2020-07-06 22:49:40 -07:00
sakridge
58a475b789
Add db recovery methods ( #10838 )
2020-07-06 12:43:45 -07:00
Tyera Eulberg
4de0713aa3
Rpc: Add getStakeActivation endpoint ( #10902 )
...
* Add getStakeActivation endpoint
* Add docs
* Update docs/src/apps/jsonrpc-api.md
Co-authored-by: Michael Vines <mvines@gmail.com>
* Rework return type
* Update docs
* Rebase
Co-authored-by: Michael Vines <mvines@gmail.com>
2020-07-06 13:28:40 -06:00
Ryo Onodera
39b3ac6a8d
Introduce automatic ABI maintenance mechanism (2/2; rollout) ( #8012 )
...
* Introduce automatic ABI maintenance mechanism (2/2; rollout)
* Fix stable clippy
* Change to symlink
* Freeze abi of Tower
* fmt...
* Improve dev-experience!
* Update BankSlotDelta
$ diff -u /tmp/abi8/*7dg6BreYxTuxiVz6aLvk3p2Z7GQk2cJqfGvC9h4FAoSj* /tmp/abi8/*9chBcbXVJ4fK7uGgydQzam5aHipaAKFw6V4LDFpjbE4w*
--- /tmp/abi8/bank__BankSlotDelta_frozen_abi__test_abi_digest_7dg6BreYxTuxiVz6aLvk3p2Z7GQk2cJqfGvC9h4FAoSj 2020-06-18 18:01:22.831228087 +0900
+++ /tmp/abi8/bank__BankSlotDelta_frozen_abi__test_abi_digest_9chBcbXVJ4fK7uGgydQzam5aHipaAKFw6V4LDFpjbE4w 2020-07-03 15:59:58.430695244 +0900
@@ -140,7 +140,7 @@
field u8
primitive u8
field solana_sdk::instruction::InstructionError
- enum InstructionError (variants = 34)
+ enum InstructionError (variants = 35)
variant(0) GenericError (unit)
variant(1) InvalidArgument (unit)
variant(2) InvalidInstructionData (unit)
@@ -176,6 +176,7 @@
variant(31) CallDepth (unit)
variant(32) MissingAccount (unit)
variant(33) ReentrancyNotAllowed (unit)
+ variant(34) MaxSeedLengthExceeded (unit)
variant(9) CallChainTooDeep (unit)
variant(10) MissingSignatureForFee (unit)
variant(11) InvalidAccountIndex (unit)
* Fix some merge conflicts...
2020-07-06 20:22:23 +09:00
Ryo Onodera
92697973d0
Document lockout_intervals and tiny niceties ( #10925 )
2020-07-06 08:59:17 +00:00
carllin
28e15a63e5
Repair timing ( #10913 )
...
Co-authored-by: Carl <carl@solana.com>
2020-07-03 18:37:01 -07:00
Greg Fitzgerald
2922494b4f
Cleanup rpc ( #10910 )
...
* Remove unreachable error case
* Inline Ok
* Hoist Ok
2020-07-03 17:39:14 -06:00
Tyera Eulberg
8d951776ab
Rpc: add filter to getProgramAccounts ( #10888 )
...
* Add RpcFilterType, and implement CompareBytes for getProgramAccounts
* Accept bytes in bs58
* Rename to memcmp
* Add Memcmp optional encoding field
* Add dataSize filter
* Update docs
* Clippy
* Simplify tests that don't need to test account contents; add multiple-filter tests
2020-07-03 07:46:29 +00:00
sakridge
832d47317e
Move clean accounts to background service ( #10898 )
2020-07-02 22:25:17 -07:00
carllin
f1699721ef
Bench RaptorQ ( #10886 )
...
Co-authored-by: Carl <carl@solana.com>
2020-07-02 18:31:32 -07:00
carllin
f17ac70bb2
Add weighted traversal ( #10877 )
...
Co-authored-by: Carl <carl@solana.com>
2020-07-02 14:33:04 -07:00
Michael Vines
d53228e69d
getInflationRate now only supports the current epoch
2020-07-02 02:11:31 +00:00
Tyera Eulberg
2669ccb864
Update struct prefixes to Ui ( #10874 )
...
* Update comments
* Use Ui prefix
2020-07-01 20:06:40 +00:00
dependabot-preview[bot]
4deec51703
chore(deps): bump rayon from 1.3.0 to 1.3.1 ( #10605 )
...
* chore(deps): bump rayon from 1.3.0 to 1.3.1
Bumps [rayon](https://github.com/rayon-rs/rayon ) from 1.3.0 to 1.3.1.
- [Release notes](https://github.com/rayon-rs/rayon/releases )
- [Changelog](https://github.com/rayon-rs/rayon/blob/master/RELEASES.md )
- [Commits](https://github.com/rayon-rs/rayon/compare/rayon-core-v1.3.0...v1.3.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-07-01 08:09:28 -07:00
carllin
7a71580d53
Add heaviest subtree utility functions ( #10863 )
...
Co-authored-by: Carl <carl@solana.com>
2020-07-01 08:45:32 +00:00
Ryo Onodera
ecf6fb2cd2
Rename new_banks_from_blockstore => new_banks_from_ledger ( #10864 )
2020-07-01 06:19:40 +00:00
Tyera Eulberg
d97850f1d9
Add account-decoder utilities ( #10846 )
...
* Fix comment and make less pub
* Add account-decoder crate and use to decode vote and system (nonce) accounts
* Update docs
* Rename RpcAccount struct
* s/Rpc/Display
* Call it jsonParsed and update docs
* Revert "s/Rpc/Display"
This reverts commit 6e7149f503f560f1e9237981058ff05642bb7db5.
* s/Rpc/Ui
* Add tests
* Ui more things
* Comments
2020-07-01 04:55:11 +00:00
sakridge
1ffad2d051
More guard rails for restart with ledger procedure ( #10853 )
...
* Add expected_bank_hash required for supermajority
* Print snapshot hash in ledger-tool create-snapshot.
2020-06-30 12:43:48 -07:00
carllin
4b93a7c1f6
Fix fork detection ( #10839 )
...
* Fix fork detection
Co-authored-by: Carl <carl@solana.com>
2020-06-29 18:49:57 -07:00
sakridge
d9b389f510
Reduce logging lines ( #10835 )
2020-06-29 15:57:28 -07:00
sakridge
583cec922b
Remove ledger purge batching ( #10830 )
2020-06-29 14:44:35 -07:00
sakridge
17a2128a8f
More replay stage timing metrics ( #10828 )
2020-06-28 10:04:15 -07:00
carllin
fb8e2d8cdb
Add debugging ( #10822 )
...
Co-authored-by: Carl <carl@solana.com>
2020-06-26 10:23:11 +00:00
Greg Fitzgerald
50b3fa83a0
Move BankCommitmentCache to solana_runtime ( #10816 )
...
* Remove Blockstore member variable from BlockCommitmentCache
* Hoist is_confirmed_rooted() to its only caller
BlockCommitmentCache no longer depends on Blockstore
* Move BlockCommitmentCache to solana_runtime
2020-06-25 22:06:58 -06:00
Greg Fitzgerald
62b873b054
Clean up rpc module ( #10812 )
...
* Clean up rpc module
* Simplify getting bank
2020-06-25 17:08:55 -06:00
carllin
84954ad0a0
Fix leaf propagation in case of no votes in HeaviestForkChoice ( #10803 )
...
* Fix leaf propagation logic
Co-authored-by: Carl <carl@solana.com>
2020-06-25 04:08:18 -07:00
Ryo Onodera
4164c69683
Tiny cleanups in preparation for persistent tower ( #10805 )
2020-06-25 18:24:16 +09:00
Dan Albert
b3e382ab3f
Add non-circulating withdraw authority ( #10798 )
...
Co-authored-by: publish-docs.sh <maintainers@solana.com>
2020-06-25 04:17:49 +00:00
Greg Fitzgerald
1c498369b5
Remove fee-payer guesswork from Message and Transaction ( #10776 )
...
* Make Message::new_with_payer the default constructor
* Remove Transaction::new_[un]signed_instructions
These guess the fee-payer instead of stating it explicitly
2020-06-24 14:52:38 -06:00
carllin
764c7b0403
Disable entire codepath ( #10767 )
...
Co-authored-by: Carl <carl@solana.com>
2020-06-24 12:09:55 -07:00
sakridge
a1ef921b88
Rework backup and clear function ( #10751 )
2020-06-23 21:29:07 +00:00
Ryo Onodera
685becad13
Further expand last_voted_slot terminology ( #10747 )
2020-06-23 21:52:45 +09:00
sakridge
cabd0a09c3
Weight repair slots based on vote stake ( #10741 )
...
* Weight repair slots based on vote stake
* Add test
2020-06-22 20:27:45 -07:00
sakridge
2ba8fc5243
Remove slots past wait-for-supermajority slot. ( #10720 )
2020-06-22 20:27:25 -07:00
Ryo Onodera
0952b76f02
Add {Vote, Tower}::last_voted_slot() ( #10734 )
2020-06-23 11:59:54 +09:00
Ryo Onodera
44f5452013
Remove unused StakeLockout::lockout ( #10719 )
...
* Remove unused StakeLockout::lockout
* Revert...
* Really revert to the original behavior...
* Use consistent naming after StakeLockout removal
* Furhter clean up
* Missed type aliases...
* More...
* Even more...
2020-06-23 10:30:09 +09:00
Kristofer Peterson
a87f490b5e
nit removal ( #10721 )
2020-06-21 16:12:21 +09:00
carllin
a33fef9af2
Add repair breakdown by slot and index ( #10717 )
...
* Slot full logging
* Repair stats logging
Co-authored-by: Carl <carl@solana.com>
2020-06-19 18:28:15 -07:00
Tyera Eulberg
fd2508b09e
Add jsonParsed option for EncodedTransactions; add memo parser ( #10711 )
...
* Add jsonParsed option for EncodedTransactions; add memo parser
* Use kebab case for program names
* Add account-key parsing
* Add parse test
2020-06-19 16:15:13 -06:00
Kristofer Peterson
6d81eede93
Add CLI options and runtime support for selection of output snapshot version. ( #10536 )
2020-06-19 14:38:37 +09:00
Greg Fitzgerald
ed4c71fe2d
Merge heaviest bank modules ( #10672 )
...
* Merge heaviest bank modules
* Merge heaviest fork choice modules
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-06-18 03:59:08 +00:00
Greg Fitzgerald
0550b893b0
Fix typos ( #10675 )
...
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-06-17 20:54:52 -07:00
Justin Starry
39984cdcc3
Wait until bank is frozen before sending RPC notifications ( #10654 )
2020-06-18 00:44:51 +08:00
Greg Fitzgerald
6ee222363e
Move BankForks to solana_runtime ( #10637 )
...
* Move BankForks to solana_runtime
* Update imports
2020-06-17 15:27:03 +00:00
sakridge
0de6c444d6
Simd poh ( #10604 )
...
* Simd poh
* Fix poh verify bench
2020-06-16 23:03:26 -07:00
Greg Fitzgerald
891aa8c13e
Add RequestProcessor constructor to simplify testing ( #10631 )
...
* Add JsonRpcRequestProcessor constructor
* Avoid start_rpc_handler_with_tx monolith in rpc tests
* pub
* Pass an Arc, so that caller can poke the bank
2020-06-16 23:30:59 -06:00
publish-docs.sh
5673343f49
Add address to non-circulating supply
2020-06-16 21:20:33 -07:00
sakridge
1eca9b19ab
Entry verify cleanup and gossip counters ( #10632 )
...
* Add prune message counter
* Switch to us verification time to match other counters
* Add separate transaction/poh verify timing
2020-06-16 14:00:29 -07:00
carllin
f8b88d717e
Enable fork choice and switch votes, devnet => now, testnet => epoch 63 ( #10615 )
...
* Enable fork choice, devnet => now, testnet => epoch 63
* Set development to 0
* Enable switch vote slot
Co-authored-by: Carl <carl@solana.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-06-16 09:55:36 +00:00
dependabot-preview[bot]
480f69cc5e
Bump serde from 1.0.111 to 1.0.112
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.111 to 1.0.112.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.111...v1.0.112 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-15 07:58:16 -07:00
Ryo Onodera
a0692c9b4c
Further fix the ci ( #10559 )
2020-06-14 14:53:49 +09:00
Ryo Onodera
d159bc71e7
Fix trailing whitespace ( #10558 )
2020-06-14 14:43:43 +09:00
anatoly yakovenko
ba83e4ca50
Fix fannout gossip bench ( #10509 )
...
* Gossip benchmark
* Rayon tweaking
* push pulls
* fanout to max nodes
* fixup! fanout to max nodes
* fixup! fixup! fanout to max nodes
* update
* multi vote test
* fixup prune
* fast propagation
* fixups
* compute up to 95%
* test for specific tx
* stats
* stats
* fixed tests
* rename
* track a lagging view of which nodes have the local node in their active set in the local received_cache
* test fixups
* dups are old now
* dont prune your own origin
* send vote to tpu
* tests
* fixed tests
* fixed test
* update
* ignore scale
* lint
* fixup
* fixup
* fixup
* cleanup
Co-authored-by: Stephen Akridge <sakridge@gmail.com>
2020-06-13 22:03:38 -07:00
R. M. Shea
48febf153b
Change documentation introduction to indicate Foundation IP transfer ( #10440 )
2020-06-13 14:41:05 -07:00
Jack May
b6a9573748
Route all loader messages to log collector ( #10528 )
2020-06-13 13:20:08 -07:00
Greg Fitzgerald
8dd5384d6d
Split commitment module ( #10541 )
...
automerge
2020-06-12 17:16:10 -07:00
Michael Vines
f54c049b43
Add FdGYQ... to non-circulation withdrawer authority list ( #10542 )
...
automerge
2020-06-12 16:45:20 -07:00
Greg Fitzgerald
2eb6f498a8
Remove redundant BankForks parameter ( #10537 )
2020-06-12 11:04:17 -06:00
Ryo Onodera
dfe72d5242
Optimize stale slot shrinking for previously cleaned roots ( #10099 )
...
* Prioritize shrinking of previously cleaned roots
* measure time of stale slot shrinking
* Disable shrink for test
* shrink: budgeting, store count, force for snapshot
* Polish implementation and fix tests
* Fix ci..
* Clean up a bit
* Further polish implementation and fix/add tests
* Rebase fixes
* Remove unneeded Default for AccountStorageEntry
* Address review comments
* More cleanup
* More cleanup
2020-06-12 14:51:43 +09:00
Greg Fitzgerald
fb8612be49
Update non-circulating pubkeys ( #10524 )
...
automerge
2020-06-11 16:30:25 -07:00
Greg Fitzgerald
9077c4a776
Enable jsonrpc client ( #10522 )
2020-06-11 16:51:25 -06:00
carllin
526eefac97
Fix clippy ( #10521 )
...
Co-authored-by: Carl <carl@solana.com>
2020-06-11 15:26:00 -06:00
carllin
2e1d59ff85
Adopt heaviest subtree fork choice rule ( #10441 )
...
* Add HeaviestSubtreeForkChoice
* Make replay stage switch between two fork choice rules
Co-authored-by: Carl <carl@solana.com>
2020-06-11 12:16:04 -07:00
sakridge
4c140acb3b
ClusterInfo cleanup ( #10504 )
...
automerge
2020-06-10 17:00:17 -07:00
sakridge
6eb5ef6ac7
Add back missing pull_response success counter ( #10491 )
2020-06-10 09:17:57 -07:00
sakridge
ecb6959720
Optimize process pull responses ( #10460 )
...
* Batch process pull responses
* Generate pull requests at 1/2 rate
* Do filtering work of process_pull_response in read lock
Only take write lock to insert if needed.
2020-06-09 17:08:13 -07:00
dependabot-preview[bot]
a264a9dd0b
Bump serde_json from 1.0.53 to 1.0.54
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.53 to 1.0.54.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.53...v1.0.54 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-09 16:57:46 -07:00
Michael Vines
8e2745c2a2
Clean up delinquency slot distance computation
2020-06-09 11:27:30 -07:00
Michael Vines
ed351400b2
Add SendTransactionService
2020-06-09 07:46:40 -07:00
anatoly yakovenko
832d324a23
Revert "Gossip PullRequests tend to return a lot of duplicates. ( #10326 )" ( #10455 )
...
This reverts commit 31e20eff82
.
2020-06-09 07:27:00 -07:00
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
Greg Fitzgerald
af8c21c559
Remove lock around JsonRpcRequestProcessor ( #10417 )
...
automerge
2020-06-07 20:54:03 -07:00
sakridge
0645a0c96d
Gossip cleanup remove duplicate gossip metrics and name worker threads ( #10435 )
...
Refactor into functions
2020-06-06 15:05:45 -07:00
sakridge
ebb612ab4e
Enable and add tick rate to metrics ( #10430 )
2020-06-06 11:47:11 -07:00
Michael Vines
7e2651ca51
RPC simulateTransaction endpoint now returns program log output ( #10432 )
2020-06-06 10:18:28 -07:00
sakridge
2725acebea
Lower counter level ( #10428 )
2020-06-05 15:53:09 -07:00
dependabot-preview[bot]
2e37eccfc4
Bump jsonrpc-core-client from 14.1.0 to 14.2.0 ( #10425 )
...
Bumps [jsonrpc-core-client](https://github.com/paritytech/jsonrpc ) from 14.1.0 to 14.2.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/v14.1.0...v14.2.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-05 15:51:01 -06:00
sakridge
3d2230f1a9
Add pull request count metrics ( #10421 )
2020-06-05 09:36:31 -07:00
anatoly yakovenko
31e20eff82
Gossip PullRequests tend to return a lot of duplicates. ( #10326 )
...
* filter messages that are likely to be pushed from the response
* tests
* tests
* wait to start filtering responses, and push stats to influx
* wait to start filtering responses, and push stats to influx
* reduce the timers to match the publish self timeout
* fmt
* fmt
2020-06-05 08:01:45 -07:00
Michael Vines
aa6832964c
ledger_cleanup_service: compact at a slower rate than purging ( #10414 )
2020-06-04 21:06:06 -07:00
dependabot-preview[bot]
318835e3a0
Merge pull request #10410 from solana-labs/dependabot/cargo/jsonrpc-pubsub-14.2.0
...
Bump jsonrpc-pubsub from 14.1.0 to 14.2.0
2020-06-04 19:06:14 -07:00
Justin Starry
754f25ae99
Avoid AccountInUse errors when simulating transactions ( #10391 )
...
automerge
2020-06-04 19:06:01 -07:00
dependabot-preview[bot]
68f95c791a
Bump jsonrpc-ws-server from 14.1.0 to 14.2.0
...
Bumps [jsonrpc-ws-server](https://github.com/paritytech/jsonrpc ) from 14.1.0 to 14.2.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/v14.1.0...v14.2.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-04 19:02:30 -07:00
dependabot-preview[bot]
8736247554
Bump jsonrpc-http-server from 14.1.0 to 14.2.0
...
Bumps [jsonrpc-http-server](https://github.com/paritytech/jsonrpc ) from 14.1.0 to 14.2.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/v14.1.0...v14.2.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-04 19:00:28 -07:00
dependabot-preview[bot]
ea9b958dff
Bump jsonrpc-derive from 14.1.0 to 14.2.1
...
Bumps [jsonrpc-derive](https://github.com/paritytech/jsonrpc ) from 14.1.0 to 14.2.1.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-03 12:16:54 -07:00
dependabot-preview[bot]
f58b6b3431
Bump jsonrpc-core from 14.1.0 to 14.2.0
...
Bumps [jsonrpc-core](https://github.com/paritytech/jsonrpc ) from 14.1.0 to 14.2.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-03 09:02:07 -07:00
dependabot-preview[bot]
6cf30c38a4
Bump reqwest from 0.10.5 to 0.10.6
...
Bumps [reqwest](https://github.com/seanmonstar/reqwest ) from 0.10.5 to 0.10.6.
- [Release notes](https://github.com/seanmonstar/reqwest/releases )
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md )
- [Commits](https://github.com/seanmonstar/reqwest/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-03 09:01:36 -07:00
sakridge
2cf719ac2c
Cache tvu peers for broadcast ( #10373 )
2020-06-03 08:24:05 -07:00
dependabot-preview[bot]
f901571026
Bump serde from 1.0.110 to 1.0.111
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.110 to 1.0.111.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.110...v1.0.111 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-02 23:29:14 -07:00
dependabot-preview[bot]
8498b75d6c
Bump indexmap from 1.3.2 to 1.4.0
...
Bumps [indexmap](https://github.com/bluss/indexmap ) from 1.3.2 to 1.4.0.
- [Release notes](https://github.com/bluss/indexmap/releases )
- [Commits](https://github.com/bluss/indexmap/compare/1.3.2...1.4.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-02 23:28:57 -07:00
Tyera Eulberg
eee9a08376
Purge TransactionStatus and AddressSignatures exactly from ledger-tool ( #10358 )
...
* Add failing test
* Add execution path to purge primary-index columns exactly
* Fail gracefully if older TransactionStatus rocksdb keys are present
* Remove columns_empty check for special columns
* Move blockstore purge methods to submodule
* Remove unused column empty check
2020-06-02 19:49:31 -06:00
Michael Vines
ebf8a65526
Add test_rpc_send_transaction_preflight
2020-06-01 17:51:04 -07:00
Michael Vines
9158479dc4
Add node health check to transaction preflight
2020-06-01 17:51:04 -07:00
Michael Vines
9dbf3d5430
Factor out RpcHealth module
2020-06-01 17:51:04 -07:00
Michael Vines
189aa7962e
Add preflight checks to sendTransaction RPC method
2020-06-01 17:51:04 -07:00
sakridge
ef37b82ffa
More cluster stats and add epoch stakes cache in retransmit stage ( #10345 )
...
* More cluster info metrics for push request/response counts
* Cache staked peers for the epoch
2020-06-01 08:37:54 -07:00
carllin
d9366776b2
Add operating mode gating ( #10332 )
...
Co-authored-by: Carl <carl@solana.com>
2020-05-30 00:03:19 -07:00
Greg Fitzgerald
19d11800bf
Remove WithSigner ( #10325 )
...
automerge
2020-05-29 23:17:44 -07:00
Michael Vines
eb45aaa6c3
Added --health-check-slot-distance ( #10324 )
2020-05-29 15:31:52 -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
Tyera Eulberg
b563b49ed5
Improve Rpc inflation tooling ( #10309 )
...
automerge
2020-05-29 11:50:25 -07:00
Kristofer Peterson
fb4d8e1f62
cleanup clippy tests ( #10172 )
...
automerge
2020-05-29 00:26:06 -07:00
dependabot-preview[bot]
a71833c17b
Bump regex from 1.3.8 to 1.3.9 ( #10308 )
...
* Bump regex from 1.3.8 to 1.3.9
Bumps [regex](https://github.com/rust-lang/regex ) from 1.3.8 to 1.3.9.
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/1.3.8...1.3.9 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-05-28 21:48:39 -07:00
Michael Vines
9eefb2c929
Bump version to 1.3.0
2020-05-28 15:01:13 -07:00
carllin
e68621b8bb
Fix repair dos ( #10299 )
...
Co-authored-by: Carl <carl@solana.com>
2020-05-28 14:16:24 -07:00
Michael Vines
0442c45d5b
Feign RPC health while in a `--wait-for-supermajority` holding pattern ( #10295 )
2020-05-28 12:22:19 -07:00
sakridge
3f508b37fd
Skip gossip requests with different shred version and split lock ( #10240 )
2020-05-28 11:38:13 -07:00
dependabot-preview[bot]
9227874ada
Bump regex from 1.3.7 to 1.3.8 ( #10293 )
...
* Bump regex from 1.3.7 to 1.3.8
Bumps [regex](https://github.com/rust-lang/regex ) from 1.3.7 to 1.3.8.
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/regex-1.3.7...1.3.8 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-05-28 10:02:23 -07:00
Tyera Eulberg
3f0995d3b4
Add commitment parameter to getFeeCalculatorForBlockhash ( #10255 )
...
* Accept commitment parameter on getFeeCalculatorForBlockhash
* Update docs
* Add get_fee_calculator_for_blockhash_with_commitment to rpc client
2020-05-26 17:23:58 -06:00
Tyera Eulberg
4e431bc818
Add mechanism to get blockhash's last valid slot ( #10239 )
...
automerge
2020-05-26 12:06:21 -07:00
sakridge
7ebd8ee531
Cluster info metrics ( #10215 )
2020-05-25 15:03:34 -07:00
Michael Vines
156387aba4
LedgerCleanupService no longer causes an OOM and actually purges ( #10199 )
...
* cleanup_ledger() now services new_root_receiver while purging
* purge_slots() now fully deletes before compacting
* Add ledger pruning grafana graph
2020-05-24 21:41:54 -07:00
carllin
3aae98c8be
Add switching vote instruction ( #10197 )
...
* Add switching vote
* Make sure vote size stays under gossip limit
Co-authored-by: Carl <carl@solana.com>
2020-05-24 15:38:35 -07:00
carllin
42aaacf520
Factor out LockedPubkeyReferences ( #10198 )
...
Co-authored-by: Carl <carl@solana.com>
2020-05-22 23:23:17 -07:00
Michael Vines
48c0845359
Update another non-circulating account
2020-05-22 15:11:33 -07:00
sakridge
10b1895357
Optimize banking processing of AccountInUse ( #10154 )
...
* Optimize banking processing of AccountInUse and thread count
* Add more options to banking-bench
2020-05-22 15:01:01 -07:00
sakridge
f1e932c90a
Trigger notifications on supermajority votes confirmation ( #10137 )
...
automerge
2020-05-22 14:53:47 -07:00
Michael Vines
e2b5cd6d47
Add another non-circulating account ( #10186 )
...
automerge
2020-05-22 13:06:03 -07:00
Tyera Eulberg
2928c5d103
Add SingleGossip commitment level to use for subscriptions ( #10147 )
...
automerge
2020-05-22 12:55:17 -07:00
Kristofer Peterson
b7a32f01c0
Multi-version snapshot support ( #9980 )
...
* Multi-version snapshot support
* rustfmt
* Remove CLI options and runtime support for selection output snapshot version.
Address some clippy complaints.
* Muzzle clippy type complexity warning.
Despite clippy's suggestion, it is not currently possible to create type aliases
for traits and so everything within the 'Box<...>' cannot be type aliased.
This then leaves creating full blown traits, and either implementing
said traits by closure (somehow) or moving the closures into new structs
implementing said traits which seems a bit of a palaver.
Alternatively it is possible to define and use the type alias 'type ResultBox<T> = Result<Box<T>>'
which does seems rather pointless and not a great reduction in complexity but is enough to keep clippy happy.
In the end I simply went with squelching the clippy warning.
* Remove now unused Serialize/Deserialize trait implementations for AccountStorageEntry and AppendVec
* refactor versioned de/serialisers
* rename serde_utils to serde_snapshot
* move call to accounts_db.generate_index() back down to context_accountsdb_from_stream()
* update version 1.1.1 to 1.2.0
remove nested use of serialize_bytes
* cleanups
* Add back measurement of account storage entry serialization.
Remove construction of Vec and HashMap temporaries during serialization.
* consolidate serialisation test cases into serde_snapshot.
clean up leakage of implementation details in serde_snapshot.
* move short term / legacy snapshot code into child module
* add serialize_iter_as_tuple
* preliminary integration of following commit
commit 6d58b73c47294bfb93465d5a83cd2175660b6e6d
Author: Ryo Onodera <ryoqun@gmail.com>
Date: Wed May 20 14:02:02 2020 +0900
Confine snapshot 1.1 relic to versioned codepath
* refactored serde_snapshot, rustfmt
legacy accounts_db format now "owns" both leading u64s, legacy bank_rc format has none
* reduce type complexity (clippy)
2020-05-23 02:54:24 +09:00
Tyera Eulberg
12a3b1ba6a
Fixup deserialize_bs58_transaction, and make a few error types more targeted ( #10171 )
...
automerge
2020-05-21 17:30:02 -07:00
Michael Vines
18be7a7966
REST API now returns supply in SOL rather than lamports ( #10170 )
...
automerge
2020-05-21 15:50:06 -07:00
Michael Vines
486168b796
Revert "Add AVX2 runtime checks ( #10033 )" ( #10167 )
...
This reverts commit cf8eb7700b
.
2020-05-21 13:13:52 -07:00
Justin Starry
10d60288e8
Update default subscription commitment level from recent to single ( #10161 )
...
* Update default subscription commitment level from recent to single
* Update jsonrpc docs
* Fix failing tests
2020-05-22 00:33:24 +08:00
Michael Vines
324cfd40f0
Add v0 REST APIs for circulating and total supply ( #10102 )
2020-05-20 20:04:07 -07:00
sakridge
ce17de7d25
Add option to wait for a specific epoch length to bench-tps ( #10083 )
2020-05-20 16:42:46 -07:00
Michael Vines
417f0e41fa
Add stake-o-matic ( #10044 )
...
automerge
2020-05-20 16:15:03 -07:00
Michael Vines
ad7b113944
Ignore test_tvu_exit ( #10134 )
...
automerge
2020-05-19 23:40:27 -07:00
Greg Fitzgerald
d9919b99d2
Remove folds ( #10128 )
...
automerge
2020-05-19 18:13:41 -07:00
carllin
439fd30840
Fix erasure ( #10095 )
...
* Fix bad FEC blocks
* Add test
Co-authored-by: Carl <carl@solana.com>
2020-05-19 16:13:12 -07:00
carllin
97f2bcff69
master: Add nonce to shreds repairs, add shred data size to header ( #10109 )
...
* Add nonce to shreds/repairs
* Add data shred size to header
Co-authored-by: Carl <carl@solana.com>
2020-05-19 12:38:18 -07:00
Michael Vines
427c78d891
Add SimulateTransaction RPC endpoint ( #10106 )
...
automerge
2020-05-19 12:08:19 -07:00
Tyera Eulberg
759c0e0b03
Update accounts whitelist ( #10100 )
2020-05-18 14:17:56 -06: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
Reisen
bfcfbab818
Add Vote PubSub endpoint for live gossip votes. ( #10045 )
...
* Add Vote PubSub endpoint for live gossip votes.
* Updated tests for Vote RPC and Vote Listener
* Add JSON RPC documentation for Vote RPC.
* Base58 encode hash in Vote RPC response.
2020-05-17 15:01:08 -06:00
sakridge
f562ed4cc8
Distinguish between shred type in shred fetch stage duplicate filter ( #10068 )
...
* Shred type check
* Test
2020-05-15 13:23:56 -07:00
Kristofer Peterson
58ef02f02b
9951 clippy errors in the test suite ( #10030 )
...
automerge
2020-05-15 09:35:43 -07:00
Michael Vines
1da1667920
Forge a confirmed root before halting for RPC inspection ( #10061 )
2020-05-15 09:02:48 -07:00
Jack May
eb1acaf927
Remove archiver and storage program ( #9992 )
...
automerge
2020-05-14 18:22:47 -07:00
Michael Vines
4e4a21f9b7
`solana-gossip spy` can now specify a shred version ( #10040 )
2020-05-13 19:37:40 -07:00
Trent Nelson
cf8eb7700b
Add AVX2 runtime checks ( #10033 )
...
automerge
2020-05-13 12:19:22 -07:00
Ryo Onodera
1eb40c3fe0
Introduce eager rent collection ( #9527 )
...
* Switch AccountsIndex.account_maps from HashMap to BTreeMap
* Introduce eager rent collection
* Start to add tests
* Avoid too short eager rent collection cycles
* Add more tests
* Add more tests...
* Refacotr!!!!!!
* Refactoring follow up
* More tiny cleanups
* Don't rewrite 0-lamport accounts to be deterministic
* Refactor a bit
* Do hard fork, restore tests, and perf. mitigation
* Fix build...
* Refactor and add switch over for testnet (TdS)
* Use to_be_bytes
* cleanup
* More tiny cleanup
* Rebase cleanup
* Set Bank::genesis_hash when resuming from snapshot
* Reorder fns and clean ups
* Better naming and commenting
* Yet more naming clarifications
* Make prefix width strictly uniform for 2-base partition_count
* Fix typo...
* Revert cluster-dependent gate
* kick ci?
* kick ci?
* kick ci?
2020-05-13 16:22:14 +09:00
Tyera Eulberg
ee7f15eff1
Rpc: optionally filter getLargestAccounts by circulating/nonCirculating ( #10007 )
...
* Add circ/non-circ filter to getLargestAccounts
* Plumb largest accounts into client and cli
* Bump timeout toward CI flakiness
* Update docs
2020-05-12 21:05:05 -06:00
sakridge
a9b82cf95b
Enable disk metrics ( #10009 )
2020-05-12 15:24:39 -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
Michael Vines
84b6120983
getClusterNodes RPC API now includes the node software version ( #9990 )
2020-05-11 21:30:01 -07:00
Michael Vines
2521f75c18
Advertise node software version in gossip ( #9981 )
...
* Advertise node version in gossip
* Remove solana_clap_utils::version! macro
2020-05-11 15:02:01 -07:00
Tyera Eulberg
965204b8e0
Check slot cleaned up for RPC blockstore/slot queries ( #9982 )
...
automerge
2020-05-11 14:47:40 -07:00
sakridge
903a8a3196
Add retransmit packets_by_slot metrics ( #9975 )
2020-05-11 13:49:10 -07:00
sakridge
1a47b1cd86
Retransmit and shred fetch metrics ( #9965 )
...
* Retransmit stats
* Shred fetch stats
2020-05-10 21:37:05 -07:00
dependabot-preview[bot]
288c9751c1
Bump serde from 1.0.106 to 1.0.110 ( #9964 )
...
* Bump serde from 1.0.106 to 1.0.110
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.106 to 1.0.110.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.106...v1.0.110 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-05-10 16:24:25 -07:00
dependabot-preview[bot]
0541431ea8
Bump serde_json from 1.0.52 to 1.0.53 ( #9957 )
...
* Bump serde_json from 1.0.52 to 1.0.53
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.52 to 1.0.53.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.52...v1.0.53 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-05-10 11:46:29 -07:00
Tyera Eulberg
3ee702a922
Rpc: Add getCirculatingSupply endpoint, redux ( #9953 )
...
* Add Bank.clock() helper
* Add non-circulating calculations
* Plumb getSupply rpc endpoint
* Add docs for getSupply, and remove getTotalSupply from docs
* Add pubkeys! procedural macro
* Use procedural macro in non_circulating_supply
2020-05-09 12:05:29 -06:00
sakridge
f98bfda6f9
Security changes ( #9923 )
...
* Move test-only functions to test modules
* Remove sigverify disable
* Remove chacha CTR code
2020-05-08 10:00:23 -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
09ae61651a
Eliminate BankForksInfo ( #9887 )
2020-05-06 08:24:59 -07:00
Michael Vines
16ddd001f6
Gossip no longer pushes/pulls from nodes with a different shred version ( #9868 )
2020-05-05 20:15:19 -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
627bc7e3a9
Rpc: Filter blockstore data by cluster-confirmed root ( #9873 )
...
automerge
2020-05-04 18:39:27 -07:00
Tyera Eulberg
f5b0d13f08
Rpc: add getLargestAccounts endpoint ( #9869 )
...
automerge
2020-05-04 16:46:10 -07:00
Tyera Eulberg
6deaf649ef
Add commitment Root variant, and add fleshed out --commitment arg to Cli ( #9806 )
...
automerge
2020-04-29 21:55:33 -07:00
Ryo Onodera
a91236012d
Pass around --max-genesis-archive-unpacked-size ( #9161 )
...
automerge
2020-04-29 18:53:34 -07:00
anatoly yakovenko
a0514eb2ae
thiserror, docs, remove general Failure case ( #9741 )
...
automerge
2020-04-29 18:12:51 -07:00
Michael Vines
230df0ec0c
Upgrade to Rust 1.43.0 ( #9754 )
2020-04-29 18:02:05 -07:00
Tyera Eulberg
efb4988d10
Rpc: remove unwraps ( #9793 )
...
automerge
2020-04-29 12:06:09 -07:00
Stephen Akridge
eb24f3df84
Update dalek version
2020-04-28 21:02:47 -06:00
Tyera Eulberg
9d91cca73c
Remove commented code
2020-04-28 15:47:41 -06:00
Tyera Eulberg
655e3bc418
Rpc: Use cluster largest_confirmed_root as commitment max ( #9750 )
...
automerge
2020-04-28 10:20:43 -07:00
Tyera Eulberg
a12428a5b8
Use Blockstore lowest_slot to start root iterator ( #9738 )
2020-04-28 10:22:10 -06:00
anatoly yakovenko
193dbb1794
sanitize lowest slots ( #9747 )
2020-04-27 20:22:30 -07:00
Michael Vines
c11abf88b7
Clean up `use` to keep rust 1.43.0 from complaining ( #9740 )
2020-04-27 16:54:11 -07:00
anatoly yakovenko
8ef097bf6f
Input values are not sanitized after they are deserialized, making it far too easy for Leo to earn SOL ( #9706 )
...
* sanitize gossip protocol messages
* sanitize transactions
* crds protocol sanitize
2020-04-27 11:06:00 -07:00
Tyera Eulberg
a7f33b5014
Cache banks in BankForks until optional largest_confirmed_root ( #9678 )
...
automerge
2020-04-24 15:49:57 -07:00
dependabot-preview[bot]
d7f37a703e
Bump jsonrpc-derive from 14.0.5 to 14.1.0 ( #9702 )
...
Bumps [jsonrpc-derive](https://github.com/paritytech/jsonrpc ) from 14.0.5 to 14.1.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/jsonrpc-derive-v14.0.5...v14.1.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-04-24 15:24:18 -07:00
dependabot-preview[bot]
c92f95e0b8
Bump jsonrpc-ws-server from 14.0.6 to 14.1.0 ( #9701 )
...
Bumps [jsonrpc-ws-server](https://github.com/paritytech/jsonrpc ) from 14.0.6 to 14.1.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/ipc-14.0.6...v14.1.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-04-24 15:24:07 -07:00
sakridge
fa20963b93
Revert shred fs ( #9712 )
...
* Revert "Untar is called for shred archives that do not exist. (#9565 )"
This reverts commit 729cb5eec6
.
* Revert "Dont insert shred payload into rocksdb (#9366 )"
This reverts commit 5ed39de8c5
.
2020-04-24 15:04:23 -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
Leopold Schabel
767a0f9384
Fix comment in serve_repair ( #9703 )
...
automerge
2020-04-24 10:00:23 -07:00
sakridge
79829c98db
Fix vote listener passing bad transactions ( #9694 )
2020-04-23 17:04:09 -07:00
dependabot-preview[bot]
d2cef8ed9b
Bump num_cpus from 1.12.0 to 1.13.0 ( #9682 )
...
* Bump num_cpus from 1.12.0 to 1.13.0
Bumps [num_cpus](https://github.com/seanmonstar/num_cpus ) from 1.12.0 to 1.13.0.
- [Release notes](https://github.com/seanmonstar/num_cpus/releases )
- [Changelog](https://github.com/seanmonstar/num_cpus/blob/master/CHANGELOG.md )
- [Commits](https://github.com/seanmonstar/num_cpus/compare/v1.12.0...v1.13.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-04-23 13:08:06 -07:00
dependabot-preview[bot]
17a8b0f783
Bump jsonrpc-core-client from 14.0.5 to 14.1.0 ( #9683 )
...
Bumps [jsonrpc-core-client](https://github.com/paritytech/jsonrpc ) from 14.0.5 to 14.1.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/jsonrpc-core-client-v14.0.5...v14.1.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-04-23 13:07:50 -07:00
Michael Vines
d1cbccd9ba
solana-dos can now DoS gossip nodes ( #9652 )
...
automerge
2020-04-23 11:46:12 -07:00
Tyera Eulberg
5d2f488004
Add getLowestNonpurgedBlock rpc; use blockstore api in getConfirmedBlocks ( #9656 )
...
automerge
2020-04-22 13:33:06 -07: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
dependabot-preview[bot]
08e73e5366
Bump jsonrpc-http-server from 14.0.6 to 14.1.0 ( #9628 )
...
automerge
2020-04-22 09:21:05 -07:00
sakridge
2e8349196e
Custom epochslots debug ( #9647 )
2020-04-22 08:55:08 -07:00
dependabot-preview[bot]
2a935ec15f
Bump jsonrpc-pubsub from 14.0.6 to 14.1.0 ( #9649 )
...
Bumps [jsonrpc-pubsub](https://github.com/paritytech/jsonrpc ) from 14.0.6 to 14.1.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/ipc-14.0.6...v14.1.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-04-22 07:49:35 -07: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
Michael Vines
ad186b8652
Flag test_tvu_exit as serial to hopefully reduce CI flakiness ( #9509 )
2020-04-21 12:54:16 -07:00
Justin Starry
3023691487
RPC: Allow single slot address history queries ( #9630 )
2020-04-22 01:08:06 +08:00
dependabot-preview[bot]
64e5684d45
Bump bs58 from 0.3.0 to 0.3.1
...
Bumps [bs58](https://github.com/mycorrhiza/bs58-rs ) from 0.3.0 to 0.3.1.
- [Release notes](https://github.com/mycorrhiza/bs58-rs/releases )
- [Commits](https://github.com/mycorrhiza/bs58-rs/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-21 08:07:00 -07:00
Tyera Eulberg
18cba86f77
Wait for supermajority of cluster to have rooted a transaction to consider it finalized ( #9618 )
...
* Add rooted stake to BlockCommitment
* Use rooted stake to include cluster check
2020-04-20 23:25:49 -06:00
Michael Vines
914b022663
cli: Add transaction-history ( #9614 )
...
automerge
2020-04-20 22:01:09 -07:00
Anatoly Yakovenko
8a69ea971f
test
2020-04-20 08:44:39 -07:00
dependabot-preview[bot]
b1ca74ed30
Bump regex from 1.3.6 to 1.3.7
...
Bumps [regex](https://github.com/rust-lang/regex ) from 1.3.6 to 1.3.7.
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/1.3.6...regex-1.3.7 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-20 08:02:22 -07:00
anatoly yakovenko
77fb4230d6
Calculate distance between u64 without overflow ( #9592 )
...
* fix overflow
* fixed num_live_peers overflow
2020-04-19 23:05:26 -07:00
carllin
1607891b29
log proper slot ( #9576 )
...
Co-authored-by: Carl <carl@solana.com>
2020-04-19 14:24:45 -07:00
sakridge
65a9658b13
Budget for gossip traffic ( #9550 )
2020-04-18 22:11:17 -07:00
Michael Vines
a7aa7e172b
validator: Consider the activated stake of this node to be online again ( #9573 )
...
automerge
2020-04-18 10:16:19 -07:00
dependabot-preview[bot]
cb0a1a94a7
Bump jsonrpc-core from 14.0.5 to 14.1.0
...
Bumps [jsonrpc-core](https://github.com/paritytech/jsonrpc ) from 14.0.5 to 14.1.0.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-17 20:06:15 -07:00
Michael Vines
8509dcb8a0
Report offline/wrong-shred nodes while waiting for a super majority in gossip
2020-04-17 13:32:19 -07:00
Michael Vines
7b5cdf6adf
Reduce ReceiveUpdates log spam
2020-04-17 13:32:19 -07:00
Michael Vines
55ed52a71d
Increase the number of JSON RPC service threads ( #9551 )
...
automerge
2020-04-17 12:37:33 -07:00
Michael Vines
b58338b066
Make rpc_subscriptions.rs tests serial ( #9556 )
...
automerge
2020-04-17 10:48:39 -07:00
sakridge
e655cba5bd
Make rpc tests serial ( #9537 )
2020-04-16 22:02:55 -07:00
carllin
bcfd379f32
Simplify EpochSlots update ( #9545 )
...
Co-authored-by: Carl <carl@solana.com>
2020-04-16 19:32:19 -07:00
Michael Vines
47ae57610a
Only build x86_64-unknown-linux-gnu on docs.rs
2020-04-16 19:06:17 -07:00
anatoly yakovenko
5ed39de8c5
Dont insert shred payload into rocksdb ( #9366 )
...
automerge
2020-04-16 18:20:55 -07:00
sakridge
66abe45ea1
Decouple accounts hash calculation from snapshot hash ( #9507 )
2020-04-16 15:12:20 -07:00
carllin
7aa4d401f7
Fix broadcast metrics ( #9461 )
...
* Rework broadcast metrics to support multiple threads
* Update dashboards
Co-authored-by: Carl <carl@solana.com>
2020-04-15 15:22:16 -07:00
sakridge
a8b8c2f438
Move slow compaction test to integration ( #9506 )
2020-04-15 11:54:03 -07:00
Jack May
241a05fc52
Add native loader entry points ( #9486 )
2020-04-15 09:41:29 -07:00
Michael Vines
40737e9efa
Add health check URI
2020-04-15 09:06:24 -07:00
sakridge
69f1e487b3
Reduce cluster-info metrics. ( #9465 )
2020-04-14 21:21:58 -07:00
Michael Vines
83a96c557d
Ensure --dynamic-port-range is wide enough
2020-04-14 12:21:05 -07:00
Michael Vines
8cda974552
Fix flaky new_archiver_external_ip_test ( #9457 )
...
automerge
2020-04-12 11:49:34 -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
sakridge
ae5a6419d4
ReceiveUpdates spams the log, adjust the threshold higher ( #9429 )
2020-04-10 10:21:46 -07:00
Michael Vines
85feca305b
Avoid port conflict in new_with_external_ip_test_gossip
2020-04-09 20:27:54 -07:00
Tyera Eulberg
91159ea8e3
Rpc: Add getConfirmedSignaturesForAddress ( #9407 )
...
automerge
2020-04-09 20:21:31 -07:00
Michael Vines
d5a9ee97f2
Add --allow-dead-slots argument to `slot`/`print`/`json` commands ( #9408 )
...
automerge
2020-04-09 20:10:51 -07:00
sakridge
900933bbcc
Reduce rpc test code ( #9413 )
...
automerge
2020-04-09 18:05:56 -07:00
sakridge
be77bdef12
Allow lower shred count ( #9410 )
2020-04-09 16:36:44 -07:00
Michael Vines
f3afe5c99c
Remove dead code ( #9404 )
...
automerge
2020-04-09 13:09:59 -07:00
Tyera Eulberg
e1aa247548
Rpc: Add getConfirmedTransaction ( #9381 )
...
* Add blockstore method to return a complete transaction by signature
* Plumb getConfirmedTransaction rpc
* Add doc
2020-04-09 00:57:30 -06:00
Jack May
ad0482be73
Revert "Add native loader entry points ( #9275 )" Breaks genesis_config abi ( #9377 )
...
This reverts commit ed86d8d1fc
.
2020-04-08 14:36:18 -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
Tyera Eulberg
36e73cada4
Add blockstore address-to-signature index ( #9367 )
...
automerge
2020-04-08 12:50:39 -07:00
sakridge
4677cdb4c2
Optimize broadcast cluster_info critical section ( #9327 )
2020-04-06 17:36:22 -07:00
Tyera Eulberg
96c23110ae
Make TestValidator mint_lamports configurable ( #9337 )
...
automerge
2020-04-06 16:20:55 -07:00
dependabot-preview[bot]
62cb2cd13c
Bump serde_json from 1.0.49 to 1.0.51
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.49 to 1.0.51.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.49...v1.0.51 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-06 08:40:55 -07:00
Tyera Eulberg
acf64f8476
Update getSignatureStatuses to return historical statuses ( #9314 )
...
automerge
2020-04-06 03:04:54 -07:00
Ryo Onodera
b28ec430e4
Introduce background stale AppendVec shrink mechanism ( #9219 )
...
* Introduce background AppendVec shrink mechanism
* Support ledger tool
* Clean up
* save
* save
* Fix CI
* More clean up
* Add tests
* Clean up yet more
* Use account.hash...
* Fix typo....
* Add comment
* Rename accounts_cleanup_service
2020-04-06 17:30:23 +09:00
carllin
7b68628e6c
Remove write lock ( #9311 )
...
* Remove write lock
Co-authored-by: Carl <carl@solana.com>
2020-04-05 15:18:45 -07:00
Justin Starry
b584174d67
Deprecate `confirmTransaction`, `getSignatureStatus`, and `getSignatureConfirmation` ( #9298 )
...
* Deprecate `confirmTransaction`, `getSignatureStatus`, etc
* Rename get_signature_statuses to get_signature_statuses_with_commitment
Co-authored-by: Michael Vines <mvines@gmail.com>
2020-04-05 14:31:24 +08:00
Tyera Eulberg
49e2cc6593
Rework TransactionStatus index in blockstore ( #9281 )
...
automerge
2020-04-04 20:24:06 -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
dependabot-preview[bot]
8cdf406dd3
Bump serde from 1.0.105 to 1.0.106
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.105 to 1.0.106.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.105...v1.0.106 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-04 15:13:52 -07:00
Jack May
ed86d8d1fc
Add native loader entry points ( #9275 )
2020-04-03 17:40:59 -07:00
sakridge
9493de4443
Add snapshot compression option ( #9276 )
2020-04-03 13:13:49 -07:00
Jack May
d61191db40
fix bench warnings ( #9277 )
2020-04-02 21:56:38 -07:00
carllin
0139236464
ReplayStage fixes ( #9271 ) ( #9279 )
...
automerge
2020-04-02 21:05:33 -07:00
Michael Vines
8b14eb9020
Place AccountsHashes in same enum ordinal position as the v1.0 version ( #9251 )
...
automerge
2020-04-01 18:47:50 -07:00
Tyera Eulberg
25ee36bbba
Undo breaking rpc removal of getSignatureConfirmation ( #9245 )
2020-04-01 17:56:18 -06:00
Justin Starry
c7ba1994ac
Undo getSignatureStatus breaking change, add getSignatureStatuses ( #9228 )
...
automerge
2020-04-01 11:30:58 -07:00
Jack May
268e04cb4a
Rename CustomError to Custom ( #9207 )
2020-04-01 09:01:11 -07:00
sakridge
7605f1f540
Fix repair dos ( #9056 )
2020-04-01 06:48:35 -07:00
sakridge
a74a64084d
Fix error with account hash list getting too big for gossip ( #9197 )
...
Nodes will stop publishing hashes on gossip and also
slow memory leak.
2020-03-31 21:39:48 -07:00
sakridge
a61ddb6f61
max_ledger_slots -> max_ledger_shreds ( #9198 )
...
automerge
2020-03-31 17:21:19 -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
sakridge
73e99cc513
Ledger cleanup fixes ( #9131 )
...
* Fix purging happening every slot when cleanup service is not started at slot 0
* Purge by shred count instead of slots since slots can have variable
number of shreds
2020-03-30 19:02:12 -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
sakridge
ae66c0e497
Add repair message support to dos tool ( #9090 )
2020-03-29 14:44:25 -07:00
sakridge
c67703e7a3
Make repair metrics less chatty ( #9094 )
2020-03-29 14:43:58 -07:00
dependabot-preview[bot]
2ed3e2160d
Bump serde_json from 1.0.48 to 1.0.49 ( #9139 )
...
* Bump serde_json from 1.0.48 to 1.0.49
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.48 to 1.0.49.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.48...v1.0.49 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* Update serde_json in programs
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Justin Starry <justin@solana.com>
2020-03-28 12:19:40 -07:00
Justin Starry
8bbf6e3f54
Fix race in RPC subscriptions test ( #9142 )
2020-03-29 01:58:51 +08:00
Michael Vines
d7fa40087c
Bump version to 1.2.0
2020-03-28 09:44:13 -07:00
Michael Vines
4a8b1d9b2c
RpcClient now returns Signatures instead of Strings ( #9129 )
2020-03-27 15:46:00 -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
Tyera Eulberg
4b97e58cba
Consolidate signature-status rpcs ( #9069 )
...
* getSignatureStatus: return confirmations for non-rooted transactions
* Remove getNumConfirmations.. rpc
* Remove getSignatureConfirmation
* Review comments
* More review comments
2020-03-26 19:21:01 -06: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
sakridge
ed036b978d
Accumulate blockstore metrics and submit every 2s ( #9075 )
2020-03-26 12:51:41 -07:00
Justin Starry
e4472db33f
Unflake rpc subscriptions test by reducing sub count ( #9078 )
...
automerge
2020-03-25 20:43:38 -07:00
carllin
076fef5e57
Update Cluster Slots to support multiple threads ( #9071 )
...
Co-authored-by: Carl <carl@solana.com>
2020-03-25 18:09:19 -07:00
dependabot-preview[bot]
095c79e863
Bump regex from 1.3.5 to 1.3.6 ( #9055 )
...
Bumps [regex](https://github.com/rust-lang/regex ) from 1.3.5 to 1.3.6.
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/1.3.5...1.3.6 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-25 17:24:14 -07:00
Ryo Onodera
f987c18a7e
Strictly validate the contents of snapshot/genesis ( #8959 )
...
automerge
2020-03-25 02:46:41 -07:00
Justin Starry
8f38bc7dc0
Refactor how pubsub subscriptions are added ( #9042 )
2020-03-25 00:53:32 +08:00
Justin Starry
19dfb87b1f
Fix timeout for subscriptions test ( #9043 )
...
automerge
2020-03-24 01:57:28 -07:00
Justin Starry
eed8087d87
Respect confirmations param for signature subscription notifications ( #9019 )
...
automerge
2020-03-23 17:00:34 -07:00
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
4b397d15b3
Accounts cleanup service and perf improvements ( #8799 )
...
* Use atomic for ref count instead of taking rwlock
* Accounts cleanup service
* Review comments
2020-03-23 08:50:23 -07:00
sakridge
4d2b83d01f
Add option to disable rocks compaction ( #9011 )
2020-03-23 08:42:32 -07:00
Justin Starry
a0ffcc61ae
Add slot info to Bank::get_signature_confirmation_status ( #9018 )
2020-03-23 21:55:15 +08:00
Justin Starry
4b4819cd07
Add slot context to rpc pubsub notifications ( #9001 )
...
automerge
2020-03-23 05:34:42 -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
sakridge
909321928c
Shred fetch comment and debug message tweak ( #8980 )
...
automerge
2020-03-20 11:00:48 -07:00
sakridge
453f5ce8f2
Shred filter ( #8975 )
...
Thread bank_forks into shred fetch
2020-03-20 07:49:48 -07:00
carllin
dc1db33ec9
Add Capabilities to Signal BroadcastStage to Retransmit ( #8899 )
2020-03-19 23:35:01 -07:00
dependabot-preview[bot]
24d871b529
Bump serde from 1.0.104 to 1.0.105 ( #8954 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.104 to 1.0.105.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.104...v1.0.105 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-18 22:35:30 -07:00
dependabot-preview[bot]
2dc50cff5b
Bump bv from 0.11.0 to 0.11.1 ( #8952 )
...
automerge
2020-03-18 21:37:21 -07:00
sakridge
c51049a59b
Add counter for accounts hash verification. ( #8928 )
2020-03-18 08:39:09 -07:00
anatoly yakovenko
9cedeb0a8d
Pull streamer out into its own module. ( #8917 )
...
automerge
2020-03-17 23:30:23 -07:00
sakridge
7079559c2d
Fix windows build by removing sys-info ( #8860 )
...
Doesn't build for windows.
2020-03-16 12:53:13 -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
9afc5da2e1
Fix vote polling ( #8829 )
...
Co-authored-by: Carl <carl@solana.com>
2020-03-15 20:31:05 -07:00
Michael Vines
5481d1a039
Validators now run a full gossip node while looking for a snapshot
2020-03-15 09:31:55 -07:00
Michael Vines
29fb79382c
Rework validator vote account defaults to half voting fees
2020-03-13 20:13:33 -07:00
carllin
53b8d0d528
Remove holding Poh lock ( #8838 )
...
automerge
2020-03-13 15:15:13 -07:00
dependabot-preview[bot]
52b254071c
Bump regex from 1.3.4 to 1.3.5 ( #8830 )
...
Bumps [regex](https://github.com/rust-lang/regex ) from 1.3.4 to 1.3.5.
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/1.3.4...1.3.5 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-13 07:43:07 -06:00
anatoly yakovenko
9a79be5ca0
Use cluster information about slots to prioritize repair ( #8820 )
...
automerge
2020-03-12 17:34:46 -07:00
dependabot-preview[bot]
f93c8290f4
Bump sys-info from 0.5.9 to 0.5.10 ( #8810 )
...
Bumps [sys-info](https://github.com/FillZpp/sys-info-rs ) from 0.5.9 to 0.5.10.
- [Release notes](https://github.com/FillZpp/sys-info-rs/releases )
- [Changelog](https://github.com/FillZpp/sys-info-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/FillZpp/sys-info-rs/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-12 13:42:31 -06:00
dependabot-preview[bot]
48ac038f7a
Bump serial_test from 0.3.2 to 0.4.0 ( #8808 )
...
Bumps [serial_test](https://github.com/palfrey/serial_test ) from 0.3.2 to 0.4.0.
- [Release notes](https://github.com/palfrey/serial_test/releases )
- [Commits](https://github.com/palfrey/serial_test/compare/v0.3.2...v0.4.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-12 11:14:37 -06:00
anatoly yakovenko
f64ab49307
Cluster has no way to know which slots are available ( #8732 )
...
automerge
2020-03-11 21:31:50 -07:00
Jack May
6eb4973780
Don't use move semantics if not needed ( #8793 )
2020-03-11 14:37:23 -07:00
dependabot-preview[bot]
75a84ecdae
Bump reqwest from 0.10.1 to 0.10.4 ( #8787 )
...
Bumps [reqwest](https://github.com/seanmonstar/reqwest ) from 0.10.1 to 0.10.4.
- [Release notes](https://github.com/seanmonstar/reqwest/releases )
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md )
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.10.1...v0.10.4 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-11 09:02:40 -06:00
dependabot-preview[bot]
e41ff2df66
Bump chrono from 0.4.10 to 0.4.11 ( #8755 )
...
Bumps [chrono](https://github.com/chronotope/chrono ) from 0.4.10 to 0.4.11.
- [Release notes](https://github.com/chronotope/chrono/releases )
- [Changelog](https://github.com/chronotope/chrono/blob/master/CHANGELOG.md )
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.10...v0.4.11 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-10 08:43:18 -06:00
dependabot-preview[bot]
f88b79d42b
Bump itertools from 0.8.2 to 0.9.0 ( #8756 )
...
Bumps [itertools](https://github.com/bluss/rust-itertools ) from 0.8.2 to 0.9.0.
- [Release notes](https://github.com/bluss/rust-itertools/releases )
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md )
- [Commits](https://github.com/bluss/rust-itertools/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-10 08:42:11 -06:00
dependabot-preview[bot]
1a0dd53450
Bump rayon from 1.2.0 to 1.3.0 ( #8757 )
...
Bumps [rayon](https://github.com/rayon-rs/rayon ) from 1.2.0 to 1.3.0.
- [Release notes](https://github.com/rayon-rs/rayon/releases )
- [Changelog](https://github.com/rayon-rs/rayon/blob/master/RELEASES.md )
- [Commits](https://github.com/rayon-rs/rayon/compare/v1.2.0...rayon-core-v1.3.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-10 08:40:02 -06: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
dependabot-preview[bot]
fad08a19cc
Bump serde_json from 1.0.46 to 1.0.48 ( #8260 )
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.46 to 1.0.48.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.46...v1.0.48 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-09 20:20:19 -06:00
dependabot-preview[bot]
ff74452ef3
Bump libc from 0.2.66 to 0.2.67 ( #8680 )
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.66 to 0.2.67.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.66...0.2.67 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-08 21:38:58 -07:00
Michael Vines
f992ee3140
Remove unnecessary snapshot hash verification ( #8711 )
2020-03-07 09:04:52 -07:00
sakridge
97986a5241
Move download code to download-utils crate ( #8704 )
2020-03-07 07:08:01 -08:00
Michael Vines
cea8067219
Disable setLogFilter RPC API by default ( #8693 )
...
automerge
2020-03-06 16:03:10 -08:00
Trent Nelson
4db074a5aa
RPC: Add `getFeeCalculatorForBlockhash` method call ( #8687 )
...
Returns the `FeeCalculator` associated with the given blockhash, or
`null` if said blockhash has expired
2020-03-06 17:01:31 -07:00
Michael Vines
cb6848aa80
Publish initial snapshot hash in gossip on validator startup ( #8679 )
...
automerge
2020-03-05 22:52:31 -08:00
Greg Fitzgerald
2242b1b4a5
Bump byteorder from 1.3.2 to 1.3.4 ( #8159 )
...
Bumps [byteorder](https://github.com/BurntSushi/byteorder ) from 1.3.2 to 1.3.4.
- [Release notes](https://github.com/BurntSushi/byteorder/releases )
- [Changelog](https://github.com/BurntSushi/byteorder/blob/master/CHANGELOG.md )
- [Commits](https://github.com/BurntSushi/byteorder/compare/1.3.2...1.3.4 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-05 17:07:18 -07:00
carllin
f47a789b15
Add find_incomplete_slots ( #8654 )
...
* Add find_incomplete_slots
* Add live slots iterator
2020-03-05 10:58:00 -08:00
Trent Nelson
fd00e5cb35
Store FeeCalculator with blockhash in nonce accounts ( #8650 )
...
* Copy current state version to v0
* Add `FeeCalculator` to nonce state
* fixup compile
* Dump v0 handling...
Since we new account data is all zeros, new `Current` versioned accounts
look like v0. We could hack around this with some data size checks, but
the `account_utils::*State` traits are applied to `Account`, not the
state data, so we're kind SOL...
* Create more representative test `RecentBlockhashes`
* Improve CLI nonce account display
Co-Authored-By: Michael Vines <mvines@gmail.com>
* Fix that last bank test...
* clippy/fmt
Co-authored-by: Michael Vines <mvines@gmail.com>
2020-03-05 07:40:26 -07:00
Michael Vines
448b957a13
Add --bind-address and --rpc-bind-address validator arguments ( #8628 )
2020-03-04 22:46:43 -07:00
carllin
dec3da8f9d
Add orphan iterator ( #8636 )
2020-03-04 18:10:30 -08:00
Grimes
f89c22b5ee
`solana catchup` now detects when you try to catchup to yourself ( #8635 )
...
automerge
2020-03-04 14:44:21 -08: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
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
Justin Starry
8ec8204a30
Run pubsub test poller in tokio runtime ( #8494 )
2020-03-03 09:44:39 +08:00
Michael Vines
42c5c59800
Only gossip packaged snapshots
2020-03-02 14:17:17 -07: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
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
862a4a243f
Demote gossip responder error log messages to info!
2020-03-01 10:43:20 -07:00
Michael Vines
2a5605db24
Reduce max snapshot hashes to stay under MTU
2020-02-29 09:21:52 -07:00
carllin
6a5a6387e2
Fix skipping own leader slots ( #8533 )
...
automerge
2020-02-29 00:05:35 -08:00
Michael Vines
0f31adeafb
GET for /snapshot.tar.bz2 now redirects to the latest snapshot
2020-02-28 23:23:59 -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
Michael Vines
3acf956f6f
Fix test_concurrent_snapshot_packaging
2020-02-26 23:32:53 -07:00
Michael Vines
0d4cb252c4
Adapt local-cluster/
2020-02-26 23:32:53 -07:00
Michael Vines
fcabc6f799
Rename snapshot.tar.bz2 to snapshot-<slot>-<hash>.tar.bz2
2020-02-26 23:32:53 -07:00
carllin
5f766cd20b
Remove loop ( #8493 )
2020-02-26 19:59:28 -08:00
Michael Vines
27c5ec0149
Use the same reqwest features across the repo
2020-02-26 20:47:43 -07:00
Justin Starry
e743414908
Choose more appropriate options for pubsub websocket server ( #8354 )
...
* Choose more sensible options for pubsub websocket server
* Increase max payload size for pubsub service
2020-02-27 08:54:53 +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
Michael Vines
fbf78b83c4
Add retry mechanism when downloading genesis and snapshots
2020-02-26 14:21:37 -07:00
Justin Starry
021d0a46f8
Move docs from book/ to docs/ ( #8469 )
...
automerge
2020-02-26 07:11:38 -08:00
Justin Starry
8839dbfe5b
Use runtime executor to send pubsub notifications ( #8353 )
...
automerge
2020-02-25 20:23:54 -08:00
carllin
d821fd29d6
Add versioning ( #8348 )
...
automerge
2020-02-25 17:12:01 -08:00
sakridge
004f1d5aed
Combine replay stage memory reporting ( #8455 )
...
automerge
2020-02-25 16:04:27 -08:00
sakridge
1caeea8bc2
Refactor new bank paths into common function ( #8454 )
2020-02-25 15:49:59 -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
dependabot-preview[bot]
72ae82fe47
Bump crossbeam-channel from 0.3.9 to 0.4.2 ( #8400 )
...
Bumps [crossbeam-channel](https://github.com/crossbeam-rs/crossbeam ) from 0.3.9 to 0.4.2.
- [Release notes](https://github.com/crossbeam-rs/crossbeam/releases )
- [Changelog](https://github.com/crossbeam-rs/crossbeam/blob/v0.4.2/CHANGELOG.md )
- [Commits](https://github.com/crossbeam-rs/crossbeam/compare/crossbeam-channel-0.3.9...v0.4.2 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-22 09:53:38 -07:00
Dan Albert
2d9d2f1e99
Update cargo versions from 1.0 to 1.1 ( #8397 )
2020-02-21 23:09:45 -08:00
sakridge
b7386f9d84
Add --trusted-validator support for snapshot hash validation ( #8390 )
2020-02-21 18:42:24 -08:00
Michael Vines
fb98df76b7
4x DEFAULT_MAX_LEDGER_SLOTS to give nodes 3 hours of slots to repair from ( #8388 )
...
automerge
2020-02-21 15:04:02 -08:00
Pankaj Garg
aa80f69171
Promote some datapoints to `info` to fix dashboard ( #8381 )
...
automerge
2020-02-21 13:41:49 -08:00
Michael Vines
48f58a88bc
Bump version to 1.0.0
2020-02-20 23:52:19 -07:00
Ryo Onodera
d238371b0c
Correct missing entry handling to avoid bad warns ( #8339 )
...
* Correct missing entry handling to avoid bad warns
* Pass storage entries to AccountStorageSerialize
* Fix CI.....
* Add tests and reorder condition for cheapest first
* Remove unneeded reference
2020-02-21 15:27:55 +09: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
dependabot-preview[bot]
b65c9ea544
Bump serial_test_derive from 0.3.2 to 0.4.0 ( #8311 )
...
Bumps [serial_test_derive](https://github.com/palfrey/serial_test ) from 0.3.2 to 0.4.0.
- [Release notes](https://github.com/palfrey/serial_test/releases )
- [Commits](https://github.com/palfrey/serial_test/compare/v0.3.2...v0.4.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-20 17:06:00 -07:00
Michael Vines
cc7c6c960e
Search for the validator with the highest snapshot
2020-02-20 17:04:48 -07:00
Justin Starry
01697a9f5c
Remove unnecessary arc and mutex for rpc notifications ( #8351 )
2020-02-21 08:03:46 +08:00
Tyera Eulberg
ab361a8073
Rename KeypairUtil to Signer ( #8360 )
...
automerge
2020-02-20 13:28:55 -08:00
sakridge
1720fe6a46
Snapshot hash gossip changes ( #8358 )
2020-02-20 11:46:13 -08:00
Pankaj Garg
e50bc0d34b
Do not compress small incomplete slot list ( #8355 )
...
automerge
2020-02-20 09:48:39 -08:00
Pankaj Garg
ea8d9d1aea
Bitwise compress incomplete epoch slots ( #8341 )
2020-02-19 20:24:09 -08:00
Sagar Dhawan
221866f74e
Process Gossip in parallel and add an upper limit ( #8328 )
2020-02-19 21:31:55 -06:00
anatoly yakovenko
ccad5d5aaf
change warnings to infos ( #8322 )
2020-02-19 14:25:49 -08:00
Michael Vines
83a8e82626
Remove dead code
2020-02-18 21:08:43 -07:00
Michael Vines
7305a1f407
Reformatting
2020-02-18 21:08:43 -07:00
Pankaj Garg
ac1d075d73
Drop packet if destination is unspecified (0.0.0.0/0) ( #8321 )
2020-02-18 16:14:20 -08:00
carllin
73a278dc64
Factor out creating genesis with vote accounts into a utility function ( #8315 )
...
automerge
2020-02-18 02:39:47 -08:00
Pankaj Garg
0d5c1239c6
Update epoch slots to include all missing slots ( #8276 )
...
* Update epoch slots to include all missing slots
* new test for compress/decompress
* address review comments
* limit cache based on size, instead of comparing roots
2020-02-17 12:39:30 -08:00
Michael Vines
1bf2285fa2
ledger-tool: Add print-accounts command
2020-02-14 19:59:48 -07:00
anatoly yakovenko
17fb8258e5
Datapoints overwhelm the metrics queue and blow up ram usage. ( #8272 )
...
automerge
2020-02-14 11:11:55 -08:00
Justin Starry
1c97b31eaf
Retain signature subscriptions that haven't been notified ( #8261 )
2020-02-14 01:00:50 +08:00
Greg Fitzgerald
127553ce4b
Wrap ed25519_dalek::Keypair ( #8247 )
2020-02-12 14:15:12 -07:00
Michael Vines
ecb055a252
Expel ContactInfo::new() ( #8245 )
...
automerge
2020-02-12 12:58:51 -08:00
Michael Vines
cf11d4c7dc
Nodes with a tvu and storage port are no longer double counted ( #8237 )
...
automerge
2020-02-12 11:16:07 -08:00
Michael Vines
d0a4686990
Avoid assigning the serve repair port to the storage port
2020-02-12 12:00:11 -07:00
Michael Vines
1e0f2b2446
Quash 'repair listener error: Err(RecvTimeoutError(Timeout))' log spam
2020-02-12 10:35:03 -07: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
Justin Starry
268bb1b59b
Fix RPC pub sub unsubscribe ( #8208 )
...
automerge
2020-02-11 17:09:40 -08:00
Michael Vines
72b11081a4
Report validator rewards in getConfirmedBlock JSON RPC
2020-02-11 17:25:45 -07:00
dependabot-preview[bot]
fcac910989
Bump jsonrpc-pubsub from 14.0.5 to 14.0.6 ( #8162 )
...
Bumps [jsonrpc-pubsub](https://github.com/paritytech/jsonrpc ) from 14.0.5 to 14.0.6.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/jsonrpc-pubsub-v14.0.5...ipc-14.0.6 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-11 15:44:21 -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
Ryo Onodera
46b6cedff4
Fix nightly clippy warnings ( #8199 )
...
automerge
2020-02-10 22:48:50 -08:00
dependabot-preview[bot]
124f77cdb1
Bump jsonrpc-ws-server from 14.0.5 to 14.0.6 ( #8160 )
...
Bumps [jsonrpc-ws-server](https://github.com/paritytech/jsonrpc ) from 14.0.5 to 14.0.6.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/jsonrpc-ws-server-v14.0.5...ipc-14.0.6 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-10 19:07:52 -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
Pankaj Garg
1d06aa3b31
Remove repairman as its spamming cluster with unwanted repairs ( #8193 )
...
* Remove repairman as its spamming cluster with unwanted repairs
* remove obsolete test
2020-02-10 17:00:00 -08:00
carllin
0b263f8714
Fix larger than necessary allocations in streamer ( #8187 )
2020-02-10 11:49:07 -08:00
dependabot-preview[bot]
669282ae69
Bump jsonrpc-http-server from 14.0.5 to 14.0.6 ( #8161 )
...
Bumps [jsonrpc-http-server](https://github.com/paritytech/jsonrpc ) from 14.0.5 to 14.0.6.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/jsonrpc-http-server-v14.0.5...ipc-14.0.6 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-10 10:30:32 -07:00
Ryo Onodera
485806c488
Just define BnakSlotDelta type alias ( #8186 )
...
automerge
2020-02-10 03:11:37 -08: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
99432833d2
Remove reed-solomon-erasure from core/
2020-02-07 15:37:57 -07:00
Sagar Dhawan
fa00803fbf
Filter old CrdsValues received via Pull Responses in Gossip ( #8150 )
...
* Add CrdsValue timeout checks on Pull Responses
* Allow older values to enter Crds as long as a ContactInfo exists
* Allow staked contact infos to be inserted into crds if they haven't expired
* Try and handle oveflows
* Fix test
* Some comments
* Fix compile
* fix test deadlock
* Add a test for processing timed out values received via pull response
2020-02-07 12:38:24 -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
Trent Nelson
27c8ba6afc
De-replicode Tower constructors ( #8153 )
...
automerge
2020-02-06 18:24:10 -08:00
carllin
fe590da3b6
Revert "Factor repair from gossip ( #8044 )" ( #8143 )
...
This reverts commit e61257695f
.
2020-02-06 11:44:20 -08:00
Sunny Gleason
a7fa92b372
feat: implementation of live-slots command ( #8129 )
2020-02-06 14:16:30 -05:00
François Garillot
f016c9a669
Maintenance : simplify a few patterns, remove unneeded dependencies ( #8137 )
...
* Simplify a few pattern matches
* Removing unneeded dependencies, upgrading internal version #s
net-shaper: Removing log, semver, serde_derive
bench-tps: Removing serde, serde_derive
banking-bench: Removing solana
ledger-tool: Removing bincode, serde, serde_derive
librapay: Removing solana, language_e2e_tests
log-analyzer: Removing log, semver, serde_derive
exchange: Removing solana
core: Removing crc, memmap, symlink, untrusted
perf: Removing serde_derive
genesis: Removing hex, serde_derive
sdk-c: Removing sha2
sys-tuner: Removing semver
bench-exchange: Removing bincode, bs58, env_logger, serde, serde_derive, untrusted, ws
btc_spv_bin: Removing serde_json
btc_spv: Removing chrono
bpf_loader: Removing serde
ledger: Removing dlopen, dlopen_derive, serde_derive
move_loader: Removing byteorder, libc, language_e2e_tests
ownable: Removing serde, serde_derive
client: Removing rand
archiver-utils: Removing rand_chacha
validator: Removing serde_json, tempfile
param_passing_dep: Removing solana
failure: Removing log
vest: Removing log
vote-signer: Removing bs58, serde
local-cluster: Removing symlink
keygen: Removing rpassword
install: Removing bs58, log
upload-perf: Removing log
runtime: Removing serde_json
stake: Removing rand
* Add modified Cargo.lock
* fixup! Simplify a few pattern matches
* fixup! Simplify a few pattern matches
2020-02-06 10:02:38 -07:00
dependabot-preview[bot]
65c24db83c
Bump serde_json from 1.0.44 to 1.0.46 ( #8087 )
...
* Bump serde_json from 1.0.44 to 1.0.46
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.44 to 1.0.46.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.44...v1.0.46 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* Update Move's serde_json to v1.0.46
Co-authored-by: Jack May <jack@solana.com>
2020-02-04 16:59:23 -08:00
dependabot-preview[bot]
1420628b28
Bump nix from 0.16.1 to 0.17.0 ( #8112 )
...
Bumps [nix](https://github.com/nix-rust/nix ) from 0.16.1 to 0.17.0.
- [Release notes](https://github.com/nix-rust/nix/releases )
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md )
- [Commits](https://github.com/nix-rust/nix/commits/v0.17.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-04 15:59:34 -07:00
carllin
0c8cee8c4a
Refactor select_fork() to avoid clones and for clarity ( #8081 )
...
* Refactor select_fork() to avoid clones and for clarity
* Add test that fork weights are increasing
2020-02-03 16:48:24 -08:00
dependabot-preview[bot]
c835749563
Bump sys-info from 0.5.8 to 0.5.9 ( #8089 )
...
Bumps [sys-info](https://github.com/FillZpp/sys-info-rs ) from 0.5.8 to 0.5.9.
- [Release notes](https://github.com/FillZpp/sys-info-rs/releases )
- [Changelog](https://github.com/FillZpp/sys-info-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/FillZpp/sys-info-rs/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-03 14:49:39 -07:00
sakridge
0172d2a065
Fix consensus threshold when new root is created ( #8093 )
...
When a new root is created, the oldest slot is popped off
but when the logic checks for identical slots, it assumes
that any difference means a slot was popped off the front.
2020-02-03 13:44:34 -08:00
Justin Starry
69a6d07371
Reduce rpc client pre-flight requests by setting max-age header ( #8082 )
...
automerge
2020-02-01 04:10:26 -08:00
carllin
e61257695f
Factor repair from gossip ( #8044 )
2020-01-31 14:23:50 -08:00
Sagar Dhawan
b9988b62e4
Filter repairman peers based on shred_version ( #8069 )
2020-01-31 14:00:19 -08:00
Michael Vines
a03d441e6f
Add rpc port sanity checks, fix tests
2020-01-30 20:57:58 -07:00
Michael Vines
3900d09f6f
Employ rpc_port defaults
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
775fa0c968
Minor --expected-shred fix, clean up shred-related gossip log messages ( #8041 )
...
automerge
2020-01-30 13:22:05 -08:00
Michael Vines
0c55b37976
Add different shred test to test_tvu_peers_and_stakes
2020-01-30 10:30:32 -07:00
Sagar Dhawan
64c42e28dc
Add shred version filters to Crds Accessors ( #8027 )
...
* Add shred version filters to Crds Accessors
* Adopt entrypoint shred_version if one isn't provided
2020-01-30 00:15:37 -08:00
Michael Vines
bea9cd9684
Add --expected-shred-version option
2020-01-29 20:08:42 -07:00
Michael Vines
c4faccc77f
getClusterNodes now excludes validators with a different shred version
2020-01-29 20:08:42 -07:00
carllin
4197cce8c9
Tower tests ( #7974 )
...
* Add testing framework for voting
2020-01-28 16:02:28 -08:00
carllin
4ffd7693d6
Add lock to make sure slot-based locktree calls are safe ( #7993 )
2020-01-28 13:45:41 -08: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
Dan Albert
c324e71768
Bump cargo toml versions to 0.24.0 ( #7976 )
2020-01-25 11:04:27 -06: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
b045f9a50d
codemod --extensions rs get_snapshot_tar_path get_snapshot_archive_path
2020-01-23 13:37:13 -07:00
Michael Vines
ce231602dc
Move snapshot archive generation out of the SnapshotPackagerService
2020-01-23 13:37:13 -07:00
Michael Vines
6f5e0cd161
Type grooming
2020-01-23 13:37:13 -07:00
Michael Vines
006cbee88a
Uninteresting cleanup
2020-01-22 21:24:20 -07:00
Jack May
c95e5346a4
Boot the mut ( #7926 )
2020-01-22 17:54:06 -08:00
Michael Vines
934c32cbc6
Add mechanism to load v0.22.3 snapshots on newer Solana versions
2020-01-22 15:40:32 -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
Tyera Eulberg
65f5885bce
sendTransaction rpc: expect transaction as base58 string ( #7913 )
2020-01-21 22:16:07 -07:00
Tyera Eulberg
7a132eabb4
Update JSON-RPC documentation ( #7915 )
...
* Streamline getBlockCommitment response
* Update json-rpc docs
2020-01-21 20:17:33 -07:00
Rob Walker
7e1b380f01
Move vote_state current credits into epoch_credits ( #7909 )
...
* Move vote_state current credits into epoch_credits
* fixups
* fixup
2020-01-21 19:08:40 -08:00
Michael Vines
93036bec01
Add minimumLedgerSlot RPC API
2020-01-21 14:05:26 -07:00
Jack May
663e98969d
Use a different error to test rpc response ( #7900 )
...
automerge
2020-01-21 12:42:23 -08:00
Michael Vines
ebf6e1c0e9
--limit-ledger-size now accepts an optional slot count value
2020-01-20 14:20:30 -07:00
Sunny Gleason
5cf090c896
feat: implement RPC notification queue ( #7863 )
2020-01-20 16:08:29 -05:00
dependabot-preview[bot]
0827d52c6f
Bump indexmap from 1.1.0 to 1.3.1
...
Bumps [indexmap](https://github.com/bluss/indexmap ) from 1.1.0 to 1.3.1.
- [Release notes](https://github.com/bluss/indexmap/releases )
- [Commits](https://github.com/bluss/indexmap/compare/1.1.0...1.3.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-20 10:07:48 -07:00
Ryo Onodera
a8d33c9950
Spy just for RPC to avoid premature supermajority ( #7856 )
...
* Spy just for RPC to avoid premature supermajority
* Make gossip_content_info private
Co-Authored-By: Michael Vines <mvines@gmail.com>
* Fix misindent...
Co-authored-by: Michael Vines <mvines@gmail.com>
2020-01-20 10:50:31 +09:00
Justin Starry
87598c7612
Consolidate tx error counters and update metrics dashboard ( #7724 )
...
automerge
2020-01-16 23:26:50 -08:00
carllin
76e20015a4
Add separate thread to check for and store duplicate slot proofs ( #7834 )
2020-01-16 15:27:54 -08:00
sakridge
8572b57834
Refactor chacha cuda to be able to test cuda crate but not in OpenCL ( #7685 )
...
* Refactor chacha cuda to be able to test cuda crate but not in OpenCL
chacha not implemeted in OpenCL
* Get off core::Error
2020-01-16 08:29:36 -08:00
Ryo Onodera
ed0129f881
Don't depend on unused lazy_static
2020-01-16 08:43:13 -07:00
Tyera Eulberg
da165d6943
Fix Rpc inconsistencies ( #7826 )
...
* Update rpc account format: remove byte arrays
* Base58-encode pubkeys in getStoragePubkeysForSlot
* Update docs
2020-01-15 15:33:53 -07:00
Tyera Eulberg
f0f185509f
Remove tuple from programNotification ( #7819 )
...
automerge
2020-01-15 10:52:02 -08:00
Tyera Eulberg
6d3b8b6d7d
Remove tuples from JSON RPC responses ( #7806 )
...
* Remove RpcConfirmedBlock tuple
* Remove getRecentBlockhash tuple
* Remove getProgramAccounts tuple
* Remove tuple from get_signature_confirmation_status
* Collect Rpc response types
* Camel-case epoch schedule for rpc response
* Remove getBlockCommitment tuple
* Remove getStorageTurn tuple
* Update json-rpc docs
2020-01-15 00:25:45 -07:00
Justin Starry
ff1ca1e0d3
Consolidate entry tick verification into one function ( #7740 )
...
* Consolidate entry tick verification into one function
* Mark bad slots as dead in blocktree processor
* more feedback
* Add bank.is_complete
* feedback
2020-01-15 09:15:26 +08:00
Michael Vines
e6af4511a8
Include shred version in gossip
2020-01-14 14:32:40 -07:00
Pankaj Garg
156292e408
Reduce grace ticks, and ignore grace ticks for missing leaders ( #7764 )
...
* Reduce grace ticks, and ignore grace ticks for missing leaders
* address review comments
* blockstore related renames
2020-01-14 05:25:41 +05:30
Greg Fitzgerald
b5dba77056
Rename blocktree to blockstore ( #7757 )
...
automerge
2020-01-13 13:13:52 -08:00
Tyera Eulberg
a17d5795fb
getConfirmedBlock: add encoding optional parameter ( #7756 )
...
automerge
2020-01-12 21:34:30 -08:00
Trent Nelson
9754fc789e
Manage durable nonce stored value in runtime ( #7684 )
...
* Bank: Return nonce pubkey/account from `check_tx_durable_nonce`
* Forward account with HashAgeKind::DurableNonce
* Add durable nonce helper for HashAgeKind
* Add nonce util for advancing stored nonce in runtime
* Advance nonce in runtime
* Store rolled back nonce account on TX InstructionError
* nonce: Add test for replayed InstErr fee theft
2020-01-10 16:57:31 -07:00
Ryo Onodera
865c42465a
Cap file size for snapshot data files ( #7182 )
...
* save limit deserialize
* save
* Save
* Clean up
* rustfmt
* rustfmt
* Just comment out to please CI
* Fix ci...
* Move code
* Rustfmt
* Crean up control flow
* Add another comment
* Introduce predetermined constant limit on snapshot data files (deserialize side)
* Introduce predetermined constant limit on snapshot data files (serialize side)
* rustfmt
* Tweak message
* Revert dynamic memory limit
* Limit size of snapshot data file (de)serialization
* Fix test breakage
* Clean up
* Fix uses formatting
* Rename: deserialize_{for,from}_snapshot
* Simplify comment
* Use Slot
* Provide slot for status cache
* Align variable name with snapshot_status_cache_file_path
* Define serialize_snapshot_data_file_with_metrics
* Fix build.......
* De-marco serialize_snapshot_data_file_with_metrics
* Revert u64 => Slot
2020-01-10 09:49:36 +09:00
sakridge
73c93cc345
Print bank hash and hash inputs. ( #7733 )
2020-01-09 16:33:10 -08:00
dependabot-preview[bot]
cf32fdf672
Bump reqwest from 0.10.0 to 0.10.1 ( #7731 )
...
Bumps [reqwest](https://github.com/seanmonstar/reqwest ) from 0.10.0 to 0.10.1.
- [Release notes](https://github.com/seanmonstar/reqwest/releases )
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md )
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.10.0...v0.10.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-09 17:10:55 -07:00
dependabot-preview[bot]
57858b8015
Bump reqwest from 0.9.24 to 0.10.0 ( #7642 )
...
* Bump reqwest from 0.9.24 to 0.10.0
Bumps [reqwest](https://github.com/seanmonstar/reqwest ) from 0.9.24 to 0.10.0.
- [Release notes](https://github.com/seanmonstar/reqwest/releases )
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md )
- [Commits](https://github.com/seanmonstar/reqwest/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* Make reqwest::blocking specific
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2020-01-08 13:31:43 -07:00
Jack May
07855e3125
Allow override of RUST_LOG ( #7705 )
2020-01-08 09:19:12 -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
carllin
85c3d64f29
Fix rooted slot iterator ( #7695 )
...
* Enable jumping gaps caused by snapshots in rooted slot iterator
2020-01-07 22:51:28 -05: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
Tyera Eulberg
84a37a2c0c
Make validator timestamping more coincident, and increase timestamp sample range ( #7673 )
...
automerge
2020-01-03 22:38:00 -08:00
Michael Vines
4fe0b116ae
Measure heap usage while processing the ledger
2020-01-03 13:25:37 -07:00
Michael Vines
a0fb9de515
Move thread_mem_usage module into measure/
2020-01-03 13:25:37 -07:00
sakridge
5d42dcc9ec
Reduce constants for ledger cleanup test ( #7629 )
2020-01-03 12:05:14 -08:00
sakridge
96e88c90e8
Lessen test_slots_to_snapshot constants to make test faster ( #7628 )
...
Reduces test time from 6m to 45s
2020-01-03 09:58:52 -08:00
Greg Fitzgerald
a707c9410e
More thiserror ( #7183 )
...
* Less solana_core::result. Module now private.
* Drop solana_core::result dependency from a few more modules
* Fix warning
* Cleanup
* Fix typo
2020-01-02 20:50:43 -07:00
Rob Walker
6b7d9942a7
Add authorized_voter history ( #7643 )
...
* Add authorized_voter history
* fixups
* coverage
* bigger vote state
2019-12-30 19:57:53 -08:00
Pankaj Garg
87b2525e03
Limit maximum number of shreds in a slot to 32K ( #7584 )
...
* Limit maximum number of shreds in a slot to 32K
* mark dead slot replay as fatal error
2019-12-30 07:42:09 -08:00
Parth
727be309b2
fix entryverification state ( #7169 )
...
automerge
2019-12-23 23:26:27 -08:00
dependabot-preview[bot]
ce2d7a2d5a
Bump nix from 0.16.0 to 0.16.1 ( #7623 )
...
Bumps [nix](https://github.com/nix-rust/nix ) from 0.16.0 to 0.16.1.
- [Release notes](https://github.com/nix-rust/nix/releases )
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md )
- [Commits](https://github.com/nix-rust/nix/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-23 23:06:42 -07:00
dependabot-preview[bot]
488420fdf2
Bump core_affinity from 0.5.9 to 0.5.10 ( #7578 )
...
Bumps [core_affinity](https://github.com/Elzair/core_affinity_rs ) from 0.5.9 to 0.5.10.
- [Release notes](https://github.com/Elzair/core_affinity_rs/releases )
- [Commits](https://github.com/Elzair/core_affinity_rs/compare/0.5.9...0.5.10 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-22 22:41:47 -07:00
Dan Albert
ca10cf081f
Update cargo.toml files from 0.22.0 to 0.23.0 ( #7596 )
2019-12-20 21:45:42 -05: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
carllin
e98132fd76
Move window insertion to separate thread ( #7397 )
...
* Move window insertion to separate thread
2019-12-19 00:15:49 -08:00
Michael Vines
fcda972cec
Add support for multiple params
2019-12-18 23:34:01 -07:00
Tyera Eulberg
c5b076ec7e
Add getConfirmedBlocks rpc method ( #7550 )
...
automerge
2019-12-18 15:51:47 -08:00
Sunny Gleason
05cf5a38af
Add ledger benchmark test ( #7484 )
2019-12-18 18:31:04 -05:00
Michael Vines
bd22b641b3
Speed up getLeaderSchedule RPC call by reducing pubkey duplication
2019-12-18 15:59:55 -07:00
Sagar Dhawan
6a9005645a
Update "limit-ledger-size" to use DeleteRange for much faster deletes ( #7515 )
...
* Update "limit-ledger-size" to use DeleteRange for much faster deletes
* Update core/src/ledger_cleanup_service.rs
Co-Authored-By: Michael Vines <mvines@gmail.com>
* Rewrite more idiomatically
* Move max_ledger_slots to a fn for clippy
* Remove unused import
* Detect when all columns have been purged and fix a bug in deletion
* Check that more than 1 column is actually deleted
* Add helper to test that ledger meets minimum slot bounds
* Remove manual batching of deletes
* Refactor to keep some N slots older than the highest root
* Define MAX_LEDGER_SLOTS that ledger_cleanup_service will try to keep around
* Refactor compact range
2019-12-18 11:50:09 -08:00
Tyera Eulberg
6aaf742dfe
Extend getConfirmedBlock rpc to return account pre- and post-balances ( #7543 )
...
automerge
2019-12-18 09:56:29 -08:00
Sunny Gleason
323673c3c0
Add `compact_cf` calls to reclaim storage during ledger slot purge ( #7264 )
2019-12-18 10:29:46 -05:00
Michael Vines
434cde179f
GetLeaderSchedule can now return a schedule for arbitrary epochs
2019-12-17 23:41:42 -07:00
anatoly yakovenko
97589f77f8
Pipeline broadcast socket transmit and blocktree record ( #7481 )
...
automerge
2019-12-16 17:11:18 -08:00
Tyera Eulberg
3513f4ee84
Rename drone to faucet ( #7508 )
2019-12-16 14:05:17 -07:00
dependabot-preview[bot]
7ad64c8d45
Bump serde from 1.0.103 to 1.0.104
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.103 to 1.0.104.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.103...v1.0.104 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-16 08:50:09 -07:00
dependabot-preview[bot]
71b93468d5
Bump serial_test from 0.3.1 to 0.3.2
...
Bumps [serial_test](https://github.com/palfrey/serial_test ) from 0.3.1 to 0.3.2.
- [Release notes](https://github.com/palfrey/serial_test/releases )
- [Commits](https://github.com/palfrey/serial_test/compare/v0.3.1...v0.3.2 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-15 18:19:37 -07:00
Tyera Eulberg
6b88da2b82
Hook up getBlockTime rpc to real data ( #7476 )
...
* Add blocktree timestamp helper functions and tests
* Flesh out blocktree::get_block_time
* Move stakes up into rpc to make testing easier; expand tests
* Review comments
2019-12-14 12:23:02 -07:00
Michael Vines
d01ea20273
getVoteAccounts now excludes listing inactive unstaked accounts as delinquent
...
This keeps abandoned vote accounts out of the `solana show-validators` output
2019-12-14 09:52:03 -07:00
sakridge
98b80288ed
Optimize bank_forks critical section ( #7477 )
2019-12-13 17:20:31 -08:00
sakridge
9d5a07bac4
Move create_dir_all to AccountsDB::new ( #7465 )
...
AppendVec create doesn't need to try and create
paths every time and it can stall while snapshot
create is happening.
2019-12-13 16:46:16 -08:00
Pankaj Garg
d94041e98d
Allow coding shred index to be different than data shred index ( #7438 )
...
* Allow coding shred index to be different than data shred index
* move fec_set_index to shred's common header
* fix bench
2019-12-12 16:50:29 -08:00
Jack May
1d172b07a8
crc 1.9.0 was yanked, fall back to 1.8 ( #7453 )
2019-12-12 14:30:51 -08:00
Sunny Gleason
83218c479a
code cleanup, storage_size() was Option<u64>, now Result<u64> ( #7424 )
2019-12-12 14:55:30 -05:00
Jack May
dbb8267b09
Pin dalek version ( #7448 )
...
* Pin Dalek version
* core too
2019-12-12 11:34:43 -08:00
sakridge
dd54fff978
Use pinned memory for entry verify ( #7440 )
2019-12-12 10:36:27 -08:00
Justin Starry
dad5c62df5
Add uptime column to show-validators ( #7441 )
...
automerge
2019-12-11 22:04:54 -08:00
dependabot-preview[bot]
46a4ea8f67
Bump reqwest from 0.9.22 to 0.9.24
...
Bumps [reqwest](https://github.com/seanmonstar/reqwest ) from 0.9.22 to 0.9.24.
- [Release notes](https://github.com/seanmonstar/reqwest/releases )
- [Changelog](https://github.com/seanmonstar/reqwest/blob/v0.9.24/CHANGELOG.md )
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.9.22...v0.9.24 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-11 13:42:38 -07:00
Sunny Gleason
06415de8ee
change blocktree*::storage_size() to return Option<u64> to handle live fs changes ( #7401 )
2019-12-10 19:12:49 -05:00
carllin
146bc95c16
Fix sigverify metrics ( #7393 )
...
* Add filter
* Collapse logs
* Fix dashboard
2019-12-10 11:28:07 -08:00
dependabot-preview[bot]
6f457292ff
Bump bincode from 1.2.0 to 1.2.1
...
Bumps [bincode](https://github.com/servo/bincode ) from 1.2.0 to 1.2.1.
- [Release notes](https://github.com/servo/bincode/releases )
- [Commits](https://github.com/servo/bincode/compare/v1.2.0...v1.2.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-10 10:00:56 -07:00
Parth
6d2861f358
add unit test for minority fork overcommit attack ( #7292 )
...
* add unit test for minority fork overcommit attack
* add generic function to simulate fork selection
2019-12-10 22:06:16 +05:30
dependabot-preview[bot]
891767c6b7
Bump serde_json from 1.0.42 to 1.0.44
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.42 to 1.0.44.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.42...v1.0.44 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-08 09:43:24 -07:00
Trent Nelson
1ffd6b4b4d
Add program and runtime support for Durable Transaction Nonces ( #6845 )
...
* Rework transaction processing result forwarding
Durable nonce prereq
* Add Durable Nonce program API
* Add runtime changes for Durable Nonce program
* Register Durable Nonce program
* Concise comments and bad math
* Fix c/p error
* Add rent sysvar to withdraw ix
* Remove rent exempt required balance from Meta struct
* Use the helper
2019-12-07 12:54:10 -07:00
Michael Vines
77cd292828
getVoteAccounts RPC API no longer returns "idle" vote accounts, take II
2019-12-07 01:16:36 -07:00
Michael Vines
22d6951de5
Revert "getVoteAccounts RPC API no longer returns "idle" vote accounts"
...
This reverts commit 103e40b9689d74ece606385a67d166f55f453823.
2019-12-07 01:16:36 -07:00
Sunny Gleason
c00216e3be
feat: ledger size and cleanup metrics ( #7335 )
2019-12-06 22:32:45 -05:00
Michael Vines
42247e0e1a
getVoteAccounts RPC API no longer returns "idle" vote accounts ( #7339 )
2019-12-06 20:23:29 -05:00
TristanDebrunner
9ecb844de7
Split up ReplayStageConfig to make it derive Default ( #7334 )
...
automerge
2019-12-06 14:39:35 -08:00
Tyera Eulberg
3ab8185777
Add intermittent Timestamping to Votes ( #7233 )
...
* Add intermittent timestamp to Vote
* Add timestamp to VoteState, add timestamp processing to program
* Print recent timestamp with solana show-vote-account
* Add offset of 1 to timestamp Vote interval to initialize at node boot (slot 1)
* Review comments
* Cache last_timestamp in Tower and use for interval check
* Move work into Tower method
* Clarify timestamping interval
* Replace tuple with struct
2019-12-06 14:38:49 -07: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
sakridge
cfc21e1225
Only serialize rooted append vecs ( #7281 )
2019-12-05 14:27:46 -08:00
Justin Starry
d6c3396182
Canonicalize paths before symlink-ing when generating snapshots ( #7294 )
...
* Canonicalize paths before symlinking when generating snapshots
* cargo fmt
2019-12-05 14:58:02 -05:00
Sagar Dhawan
a95d37ea25
Fix repair slowness when most peers are unable to serve requests ( #7287 )
...
* Fix repair when most peers are incapable of serving requests
* Add a test for getting the lowest slot in blocktree
* Replace some more u64s with Slot
2019-12-05 11:25:13 -08:00
TristanDebrunner
fae9c08815
Add ReplayStageConfig ( #7195 )
2019-12-04 11:17:17 -07:00
dependabot-preview[bot]
c9245751e9
Bump nix from 0.15.0 to 0.16.0 ( #7216 )
...
Bumps [nix](https://github.com/nix-rust/nix ) from 0.15.0 to 0.16.0.
- [Release notes](https://github.com/nix-rust/nix/releases )
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md )
- [Commits](https://github.com/nix-rust/nix/commits/v0.16.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-04 09:35:45 -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
Pankaj Garg
a0eafa12e3
Update to hashes_per_tick computation, and tick duration datapoint ( #7127 )
2019-12-02 18:02:11 -08:00
Pankaj Garg
076e384bb5
Tool to tune system parameters like PoH service priority ( #7155 )
...
* New daemon to tune system parameters like PoH service priority
* fixes for Linux
* integrate with poh_service
* fixes
* address review comments
* remove `dead_code` directive
2019-12-02 16:46:46 -08:00
Michael Vines
41cff1b49d
Remove spammy log
2019-12-02 16:52:01 -07:00
dependabot-preview[bot]
0f872af502
Bump libc from 0.2.65 to 0.2.66 ( #7180 )
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.65 to 0.2.66.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.65...0.2.66 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-02 09:56:03 -07:00
dependabot-preview[bot]
b13696ea1a
Bump jsonrpc-http-server from 14.0.3 to 14.0.5 ( #7181 )
...
Bumps [jsonrpc-http-server](https://github.com/paritytech/jsonrpc ) from 14.0.3 to 14.0.5.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/v14.0.3...jsonrpc-http-server-v14.0.5 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-02 09:55:40 -07:00
dependabot-preview[bot]
5fbbf7c748
Bump jsonrpc-ws-server from 14.0.3 to 14.0.5 ( #7172 )
...
Bumps [jsonrpc-ws-server](https://github.com/paritytech/jsonrpc ) from 14.0.3 to 14.0.5.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/v14.0.3...jsonrpc-ws-server-v14.0.5 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-29 23:06:23 -07:00
dependabot-preview[bot]
e7fe0db051
Bump jsonrpc-derive from 14.0.3 to 14.0.5 ( #7173 )
...
Bumps [jsonrpc-derive](https://github.com/paritytech/jsonrpc ) from 14.0.3 to 14.0.5.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/v14.0.3...jsonrpc-derive-v14.0.5 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-29 14:15:02 -07:00
dependabot-preview[bot]
dcb7bd8c74
Bump jsonrpc-pubsub from 14.0.3 to 14.0.5 ( #7174 )
...
Bumps [jsonrpc-pubsub](https://github.com/paritytech/jsonrpc ) from 14.0.3 to 14.0.5.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/compare/v14.0.3...jsonrpc-pubsub-v14.0.5 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-29 14:14:57 -07:00
dependabot-preview[bot]
f97626346b
Bump jsonrpc-core from 14.0.3 to 14.0.5 ( #7170 )
...
Bumps [jsonrpc-core](https://github.com/paritytech/jsonrpc ) from 14.0.3 to 14.0.5.
- [Release notes](https://github.com/paritytech/jsonrpc/releases )
- [Commits](https://github.com/paritytech/jsonrpc/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-28 10:59:31 -07:00
dependabot-preview[bot]
7f4feaee08
Bump serde from 1.0.102 to 1.0.103 ( #7163 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.102 to 1.0.103.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.102...v1.0.103 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-27 09:10:25 -07:00
dependabot-preview[bot]
5a30ef180a
Bump serial_test_derive from 0.2.0 to 0.3.1 ( #7153 )
...
Bumps [serial_test_derive](https://github.com/palfrey/serial_test ) from 0.2.0 to 0.3.1.
- [Release notes](https://github.com/palfrey/serial_test/releases )
- [Commits](https://github.com/palfrey/serial_test/compare/v0.2.0...v0.3.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-26 23:12:13 -07:00