1645 Commits

Author SHA1 Message Date
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 cf8eb7700b79a6eb638eb58964fd2ffb4650f2ad.
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