6268fa32c6
RPC: use finalized as default pubsub commitment level (backport #16659 ) ( #16665 )
...
* RPC: use finalized as default pubsub commitment level (#16659 )
* RPC: use finalized as default pubsub commitment level
* update docs
* Fix tests
(cherry picked from commit a7e65c0034
)
# Conflicts:
# core/tests/rpc.rs
* fix conflicts
Co-authored-by: Justin Starry <justin@solana.com >
2021-04-20 10:07:16 +00:00
7df2525972
Refactored ShortU16Visitor::visit_seq() to reject overflows, extra leading zeros and ensure one-to-one encoding.
2021-04-20 03:01:52 -06:00
90543940bd
sdk: ShortU16 - rename variables for clarity
...
ShortU16's implementation embeds its usage as the length of a
ShortVec, confusingly referring to both a 'len' and a 'size'
at the same time.
2021-04-20 03:01:52 -06:00
dd21f20555
sdk: Add ShortU16 deser test
2021-04-20 03:01:52 -06:00
20a282f03f
Pin SPL downstream build to 589da55
2021-04-20 07:27:12 +00:00
b5894515e8
perf: use saturating/checked integer arithmetic
2021-04-19 23:05:26 -07:00
f6bf48e3c8
renames is_last_in_fec_set back to is_last_data ( #15848 )
...
https://github.com/solana-labs/solana/pull/10095
renamed is_last_data to is_last_in_fec_set. However, the code shows that
this is actually meant to indicate where the serialized data is
complete:
https://github.com/solana-labs/solana/blob/420174d3d/ledger/src/shred.rs#L599-L600
https://github.com/solana-labs/solana/blob/420174d3d/ledger/src/shred.rs#L229-L231
There are multiple FEC sets for each `&[Entry]` serialized and this flag
does not represent shreds last in FEC sets (only the very last one by
overlap). So the name is wrong and confusing
(cherry picked from commit 3b85cbc504
)
2021-04-19 23:04:51 -07:00
63224bd11e
Move derivation path into sdk (backport #16603 ) ( #16606 )
...
* Move derivation path into sdk (#16603 )
* Move DerivationPath to sdk
* Remove eprintln
(cherry picked from commit 52f4b96a80
)
* Fix legacy compile test
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
Co-authored-by: Tyera Eulberg <tyera@solana.com >
2021-04-17 05:57:03 +00:00
4790b0a5cd
CLI BIP32 prep: KeypairUrl
refactor (backport #16592 ) ( #16604 )
...
* clap-utils: Rename KeypairUrl to SignerSource
(cherry picked from commit 09dcc9ea04
)
* clap-utils: Reduce SignerSource's visibility
(cherry picked from commit c5ab3ba6f1
)
* clap-utils: Use `uriparse` crate to parse `SignerSource`
(cherry picked from commit 5d1ef5d01d
)
# Conflicts:
# Cargo.lock
# clap-utils/Cargo.toml
* clap-utils: Add explicit schemes for `ask` and `file` `SignerSource`s
(cherry picked from commit 6444f0e57b
)
Co-authored-by: Trent Nelson <trent@solana.com >
2021-04-16 22:43:47 +00:00
8beaa43e6e
Feature-gate hash-based duplicate transaction check ( #16600 )
...
(cherry picked from commit 285f3c9d56
)
# Conflicts:
# sdk/src/feature_set.rs
Co-authored-by: Trent Nelson <trent@solana.com >
2021-04-16 20:23:33 +00:00
151d9bd28c
Don't parse uninitialized system/nonce accounts ( #16584 ) ( #16586 )
...
(cherry picked from commit ba77e48c12
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-04-15 23:40:21 +00:00
0c2faa3168
Cli: move airdrop to rpc requests ( #16557 ) ( #16563 )
...
* Add recent_blockhash to requestAirdrop
* Move tx confirmation to separate method
* Add RpcClient airdrop methods
* Request cli airdrop via RpcClient
* Pass optional faucet_addr into TestValidator and fix tests
* Update client/src/rpc_client.rs
Co-authored-by: Michael Vines <mvines@gmail.com >
Co-authored-by: Michael Vines <mvines@gmail.com >
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
Co-authored-by: Michael Vines <mvines@gmail.com >
2021-04-15 18:12:07 +00:00
525421a669
Rotate CODECOV_TOKEN ( #16578 )
...
(cherry picked from commit a535c0e129
)
Co-authored-by: Michael Vines <mvines@gmail.com >
2021-04-15 16:15:14 +00:00
2e5ad16b62
docs: Fix typo in program deploy instructions ( #16572 ) ( #16574 )
...
(cherry picked from commit c8ed14c647
)
Co-authored-by: Justin Starry <justin@solana.com >
2021-04-15 14:04:54 +00:00
87494812a7
v1.5: faucet backports ( #16565 )
...
* Faucet: repurpose cap and slice args to apply to single IPs (#16381 )
* Single use stmt
* Log request IP
* Switch cap and slice to apply per IP
* Use SOL in logs, error msgs
* Use thiserror instead of overloading io::Error
* Return memo transaction for requests that exceed per-request-cap
* Handle faucet memos in cli
* Add some docs, esp about memo transaction
* Use SOL symbol & standardize memo
Co-authored-by: Michael Vines <mvines@gmail.com >
* Differentiate faucet tx-length errors
* Populate signature in cli airdrop memo case
Co-authored-by: Michael Vines <mvines@gmail.com >
* Add address_cache and exclude loopback from ip limit (#16487 )
Co-authored-by: Michael Vines <mvines@gmail.com >
2021-04-15 10:13:14 +00:00
b555845ca2
dl-utils: use wide_msg
everywhere for truncation on narrow terminals ( #16554 )
...
(cherry picked from commit e61b4b7d70
)
Co-authored-by: Trent Nelson <trent@solana.com >
2021-04-15 01:09:41 +00:00
98867430d5
Fix sanity test flakiness by prebuilding binaries ( #16530 ) ( #16545 )
...
* Fix sanity test flakiness by prebuilding binaries
* ignore shellcheck
* bump
* nudge
* simplify
(cherry picked from commit 328e7690f3
)
Co-authored-by: Justin Starry <justin@solana.com >
2021-04-14 18:50:35 +00:00
d7a8420d9a
bump solana_rbpf from 0.2.5 to 0.2.7 ( #16515 ) ( #16524 )
...
(cherry picked from commit f7eadd9d70
)
Co-authored-by: Michael Vines <mvines@gmail.com >
2021-04-14 13:00:53 +00:00
ef3c33ad06
Remove blake3 from bpf program dependencies ( #16506 ) ( #16528 )
...
(cherry picked from commit f641429056
)
Co-authored-by: Justin Starry <justin@solana.com >
2021-04-14 03:22:12 +00:00
02762ff785
v1.5: Use blake3 message hash in status cache ( #16513 )
...
* v1.5: Use blake3 message hash in status cache
* bump bpf ix count
2021-04-14 09:52:24 +08:00
07336e3e43
Fix account copy step in program test message processor ( #16469 ) ( #16471 )
...
(cherry picked from commit 278c125d99
)
Co-authored-by: Justin Starry <justin@solana.com >
2021-04-14 01:45:12 +00:00
e5a76572d9
Deprecate RpcClient methods, RpcRequest variants ( #16516 ) ( #16518 )
...
* Deprecate RpcClient methods, RpcRequest variants
* Update cli to getSupply
(cherry picked from commit ccb11a939f
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-04-13 21:27:46 +00:00
0d3756b4d8
Status cache improvements ( #16174 ) ( #16511 )
...
Co-authored-by: sakridge <sakridge@gmail.com >
2021-04-13 13:08:31 +00:00
a6b346d876
removes OrderedIterator and transaction batch iteration order (backport #16153 ) ( #16510 )
...
Co-authored-by: behzad nouri <behzadnouri@gmail.com >
2021-04-13 12:47:44 +00:00
4276591eb9
limits number of unique pubkeys in the crds table (bp #15539 ) ( #16475 )
...
* limits number of unique pubkeys in the crds table (#15539 )
(cherry picked from commit 56923c91bf
)
# Conflicts:
# core/src/cluster_info.rs
* removes backport merge conflicts
Co-authored-by: behzad nouri <behzadnouri@gmail.com >
2021-04-12 00:36:41 +00:00
127e7407e4
Fill in not-yet-finalized block-time if possible ( #16460 ) ( #16462 )
...
(cherry picked from commit 8bc0bdd40b
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-04-09 21:36:44 +00:00
11ab894256
[easy, cleanup] Simplify some pattern-matches (bp #16402 ) ( #16445 )
...
* Simplify some pattern-matches (#16402 )
When those match an exact combinator on Option / Result.
Tool-aided by [comby-rust](https://github.com/huitseeker/comby-rust ).
(cherry picked from commit b08cff9e77
)
# Conflicts:
# accounts-cluster-bench/src/main.rs
# core/src/rpc.rs
# runtime/src/accounts_hash.rs
# runtime/src/message_processor.rs
* Fix conflicts
Co-authored-by: François Garillot <4142+huitseeker@users.noreply.github.com >
Co-authored-by: Tyera Eulberg <tyera@solana.com >
2021-04-08 20:01:20 +00:00
f10f57e89f
Cli: use get_inflation_rewards and limit epochs queried ( #16408 ) ( #16443 )
...
* Fix block-with-limit when not finalized blocks found
* Enable confirmed commitment in getInflationReward
* Use get_inflation_rewards in cli
* Line up rewards output
* Add range validator
* Change cli epoch arg -> num epochs
* Add solana inflation rewards subcommand
* Consolidate epoch rewards meta
(cherry picked from commit bb9d2fd07a
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-04-08 19:05:59 +00:00
592a13b5f8
CI: Let cargo-install-all.sh
resolve stable ( #16429 )
...
(cherry picked from commit 388ce12207
)
Co-authored-by: Trent Nelson <trent@solana.com >
2021-04-07 21:46:59 +00:00
5702744399
CLI: Fix rent
panic ( #16417 ) ( #16425 )
...
* CLI: Fix `rent` panic on non-numeric input (+monikers)
* Update cli/src/cluster_query.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
* Update cli/src/cluster_query.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
* Update cli/src/cluster_query.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
(cherry picked from commit c5c3ae0203
)
Co-authored-by: Trent Nelson <trent@solana.com >
2021-04-07 17:17:51 +00:00
c7629d595b
Remove wallclock throttle from BankingStage tests (bp #16396 ) ( #16398 )
...
* No wallclock throttle tests (#16396 )
(cherry picked from commit 1219842a96
)
# Conflicts:
# core/src/banking_stage.rs
* Resolve conflicts
Co-authored-by: carllin <carl@solana.com >
2021-04-07 16:05:26 +00:00
cfc824d38d
Speed up net.sh builds (bp #16360 ) ( #16419 )
...
* Speed up net.sh builds (#16360 )
* Speed up net.sh builds
* feedback
* Update net/net.sh
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
* feedback
* fix
Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com >
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
(cherry picked from commit 6cd4bc5e60
)
# Conflicts:
# scripts/cargo-install-all.sh
* fix
Co-authored-by: Justin Starry <justin@solana.com >
2021-04-07 08:22:48 +00:00
492a02d737
Rpc: introduce get_inflation_reward rpc call (bp #16278 ) ( #16409 )
...
* Rpc: introduce get_inflation_reward rpc call (#16278 )
* feat: introduce get_inflation_reward rpc call
* fix: style suggestions
* fix: more style changes and match how other rpc functions are defined
* feat: get reward for a single epoch
* feat: default to the most recent epoch
* fix: don't factor out get_confirmed_block
* style: introduce from impl for RpcEncodingConfigWrapper
* style: bring commitment into variable
* feat: support multiple pubkeys for get_inflation_reward
* feat: add get_inflation_reward to rpc client
* feat: return rewards in order
* fix: rename pubkeys to addresses
* docs: introduce jsonrpc docs for get_inflation_reward
* style: early return in map (not sure which is more idiomatic)
* fix: call the rpc client function args addresses as well
* fix: style
* fix: filter out only addresses we care about
* style: make this more idiomatic
* fix: change rpc client epoch to optional and include some docs edits
* feat: filter out rent rewards in get_inflation_reward
* feat: add option epoch config param to get_inflation_reward
* feat: rpc client get_inflation_reward takes epoch instead of config and some filter staking and voting rewards
(cherry picked from commit e501fa5f0b
)
# Conflicts:
# client/src/rpc_client.rs
# core/src/rpc.rs
* fix: resolve cherry-pick conflicts
* fix: change bool_to_option filter_map to filter + map
* style: use filter_map in place of filter + map
Co-authored-by: Josh <josh.hundley@gmail.com >
2021-04-07 06:09:27 +00:00
624f9790bd
validator: Use a const for wait for supermajority threshold ( #16391 )
...
(cherry picked from commit 7a2a39093d
)
Co-authored-by: Trent Nelson <trent@solana.com >
2021-04-06 05:02:25 +00:00
a23fb497ec
Cluster info shred spies (bp #16389 ) ( #16394 )
...
* cluster-info: Don't subtract non-shred spies from node count
(cherry picked from commit b6b08706b9
)
* cluster-info: Get rid of some integer math while we're here
(cherry picked from commit b71875df61
)
Co-authored-by: Trent Nelson <trent@solana.com >
2021-04-06 01:25:16 +00:00
6107de87c0
merkle-tree: fix build when targeting bpf (bp #16335 ) ( #16341 )
...
* merkle-tree: Add Xargo.toml
(cherry picked from commit a1d9b53cd7
)
* merkle-tree: Get `Hash` et. al from program instead of sdk
(cherry picked from commit ddc0a16cec
)
* merkle-tree: Use `matches` crate when targeting eBPF
(cherry picked from commit a44c32694f
)
Co-authored-by: Trent Nelson <trent@solana.com >
2021-04-05 20:42:37 +00:00
0c0b65e9ab
Only get Blockstore::last_root once ( #16362 ) ( #16365 )
...
(cherry picked from commit b8b6777262
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-04-05 06:54:23 +00:00
9b04b634bd
Fixup iterator method ( #16357 ) ( #16358 )
...
(cherry picked from commit 1a13d22984
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-04-05 00:46:47 +00:00
aca3534e89
Remove unprocessed transactions from log notifications ( #16349 ) ( #16352 )
...
(cherry picked from commit 0596cf5405
)
Co-authored-by: Justin Starry <justin@solana.com >
2021-04-04 17:06:18 +00:00
b4bb062a2e
Wait for 90 percent of stake before starting ( #16340 ) ( #16343 )
...
(cherry picked from commit 3429785d9b
)
Co-authored-by: sakridge <sakridge@gmail.com >
2021-04-03 22:34:37 +00:00
194a07862f
makes test_pull_request_time_pruning smaller ( #16128 ) ( #16338 )
...
(cherry picked from commit b041b55028
)
Co-authored-by: behzad nouri <behzadnouri@gmail.com >
2021-04-03 14:53:59 +00:00
e043825de2
limits CrdsGossipPull::pull_request_time size (bp #15793 ) ( #16334 )
...
* limits CrdsGossipPull::pull_request_time size (#15793 )
There is no pruning logic on CrdsGossipPull::pull_request_time
https://github.com/solana-labs/solana/blob/79ac1997d/core/src/crds_gossip_pull.rs#L172-L174
potentially allowing this to take too much memory.
Additionally, CrdsGossipPush::last_pushed_to is pruning recent push
timestamps:
https://github.com/solana-labs/solana/blob/79ac1997d/core/src/crds_gossip_push.rs#L275-L279
instead of the older ones.
Co-authored-by: Nathan Hawkins <utsl@utsl.org >
(cherry picked from commit a6c23648cb
)
# Conflicts:
# core/src/cluster_info.rs
* removes backport merge conflicts
Co-authored-by: behzad nouri <behzadnouri@gmail.com >
2021-04-03 13:29:45 +00:00
3e91fa313e
Parse SPL associated-token-account instructions (bp #16318 ) ( #16320 )
...
* Parse SPL associated-token-account instructions (#16318 )
(cherry picked from commit a902505810
)
# Conflicts:
# transaction-status/Cargo.toml
* Fix conflict
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
Co-authored-by: Tyera Eulberg <tyera@solana.com >
2021-04-02 01:45:15 +00:00
9ac4b11185
solana-install init
can now select a pre-release from Github (#16319 )
...
(cherry picked from commit d9176c1903
)
Co-authored-by: Michael Vines <mvines@gmail.com >
2021-04-01 23:41:29 +00:00
c32bd40aa4
Bump version to v1.5.19
2021-04-01 20:23:50 +00:00
7e480df9fa
Rpc: enable getConfirmedSignaturesForAddress2 to return confirmed (not yet finalized) data ( #16281 ) ( #16292 )
...
* Update blockstore method to allow return of unfinalized signature
* Support confirmed sigs in getConfirmedSignaturesForAddress2
* Add deprecated comments
* Update docs
* Enable confirmed transaction-history in cli
* Return real confirmation_status; fill in not-yet-finalized block time if possible
(cherry picked from commit da27acabcc
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
v1.5.18
2021-04-01 11:29:51 -06:00
d1da10f512
pushes addresses instead of insert
2021-04-01 11:06:43 -06:00
e55d5385bd
adds an inverted index to leader schedule ( #15249 ) ( #16286 )
...
next_leader_slot is doing a linear search for slots in which a pubkey is
the leader:
https://github.com/solana-labs/solana/blob/e59a24d9f/ledger/src/leader_schedule_cache.rs#L123-L157
This can be done more efficiently by adding an inverted index to leader
schedule.
(cherry picked from commit e403aeaf05
)
Co-authored-by: behzad nouri <behzadnouri@gmail.com >
2021-04-01 14:27:54 +00:00
708a45e5ed
indexes epoch slots in crds table ( #15459 ) ( #16287 )
...
ClusterInfo::get_epoch_slots_since scans the entire crds table to obtain
epoch-slots inserted since a timestamp:
https://github.com/solana-labs/solana/blob/013daa8f4/core/src/cluster_info.rs#L1245-L1262
The alternative is to index epoch-slots in crds table ordered by their
insert timestamp.
(cherry picked from commit 5a9896706c
)
Co-authored-by: behzad nouri <behzadnouri@gmail.com >
2021-04-01 14:21:00 +00:00
afd5b9f09b
Rpc: fix getConfirmedTransaction slot ( #16288 ) ( #16289 )
...
* Fix transaction blockstore apis
* Update blockstore apis in rpc
(cherry picked from commit 18bd47dbe1
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-04-01 08:47:03 +00:00