231ff7d70d
removes redundant epoch stakes cache in retransmit ( #14781 ) ( #14817 )
...
Following d6d76219b
, staked nodes computed from vote accounts are
already cached in runtime::Stakes, so the caching in retransmit_stage is
redundant.
(cherry picked from commit e1021d9f83
)
Co-authored-by: behzad nouri <behzadnouri@gmail.com >
2021-01-25 01:11:58 +00:00
a154414e65
patches crds vote-index assignment bug (bp #14438 ) ( #14741 )
...
* patches crds vote-index assignment bug (#14438 )
If tower is full, old votes are evicted from the front of the deque:
https://github.com/solana-labs/solana/blob/2074e407c/programs/vote/src/vote_state/mod.rs#L367-L373
whereas recent votes if expire are evicted from the back:
https://github.com/solana-labs/solana/blob/2074e407c/programs/vote/src/vote_state/mod.rs#L529-L537
As a result, from a single tower_index scalar, we cannot infer which crds-vote
should be overwritten:
https://github.com/solana-labs/solana/blob/2074e407c/core/src/crds_value.rs#L576
In addition there is an off by one bug in the existing code. tower_index is
bounded by MAX_LOCKOUT_HISTORY - 1:
https://github.com/solana-labs/solana/blob/2074e407c/core/src/consensus.rs#L382
So, it is at most 30, whereas MAX_VOTES is 32:
https://github.com/solana-labs/solana/blob/2074e407c/core/src/crds_value.rs#L29
Which means that this branch is never taken:
https://github.com/solana-labs/solana/blob/2074e407c/core/src/crds_value.rs#L590-L593
so crds table alwasys keeps 29 **oldest** votes by wallclock, and then
only overrides the 30st one each time. (i.e a tally of only two most
recent votes).
(cherry picked from commit 8e581601d6
)
* removes unnecessary semicolon
Co-authored-by: behzad nouri <behzadnouri@gmail.com >
2021-01-24 21:24:16 +00:00
673c679523
Partial clean ( #14800 ) ( #14813 )
...
* Revert "Revert "Partial accounts clean (#14652 )" (#14777 )"
This reverts commit ad2e10e17b
.
* Remove squashed uncleaned keys
(cherry picked from commit 0d32a0e0f4
)
Co-authored-by: sakridge <sakridge@gmail.com >
2021-01-24 20:52:23 +00:00
65a7621b17
broadcasts duplicate shreds through gossip (bp #14699 ) ( #14812 )
...
* broadcasts duplicate shreds through gossip (#14699 )
(cherry picked from commit 491b059755
)
# Conflicts:
# core/src/cluster_info.rs
* removes backport merge conflicts
Co-authored-by: behzad nouri <behzadnouri@gmail.com >
2021-01-24 17:45:35 +00:00
c9da25836a
Upgrade to Rust v1.49.0 (bp #14810 ) ( #14811 )
...
* Upgrade to Rust v1.49.0
(cherry picked from commit cbffab7850
)
# Conflicts:
# core/src/crds_value.rs
* rebase
Co-authored-by: Michael Vines <mvines@gmail.com >
2021-01-24 04:42:09 +00:00
b48dd58fda
Upgrade sha2 to 0.9.3 ( #14746 ) ( #14799 )
...
(cherry picked from commit 191193289f
)
Co-authored-by: sakridge <sakridge@gmail.com >
2021-01-23 23:08:33 +00:00
40f32fd37d
Speed up generate_index ( #14792 ) ( #14807 )
...
(cherry picked from commit 424bb797a6
)
Co-authored-by: sakridge <sakridge@gmail.com >
2021-01-23 18:50:04 +00:00
fef4100f5f
Remove unnecesary flushes in previous roots ( #14596 ) ( #14803 )
...
Co-authored-by: Carl Lin <carl@solana.com >
(cherry picked from commit c77461e428
)
Co-authored-by: carllin <wumu727@gmail.com >
2021-01-23 15:02:32 +00:00
68bf58aac0
Parallel cache scan ( #14544 ) ( #14804 )
...
Co-authored-by: Carl Lin <carl@solana.com >
(cherry picked from commit 2745b79b74
)
Co-authored-by: carllin <wumu727@gmail.com >
2021-01-23 13:42:47 +00:00
5677662d61
Improve documentation of sendTransaction ( #14770 ) ( #14802 )
...
* Improve documentation of sendTransaction
* Apply suggestions from code review
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
* Word wrap and improve terminology
* Tweak
* Oops
* Apply suggestions from code review
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
(cherry picked from commit 1d87091d51
)
Co-authored-by: Ryo Onodera <ryoqun@gmail.com >
2021-01-23 10:02:29 +00:00
6755fd0c96
Make exchange listening-for-deposits language stronger ( #14775 ) ( #14801 )
...
* Make exchange listening-for-deposits language stronger
* Update docs/src/integrations/exchange.md
Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com >
* Update from deprecated method
Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com >
(cherry picked from commit 66fd187f16
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-01-23 07:27:58 +00:00
dfbe38b859
Add solana-test-validator --warp-slot argument (bp #14785 ) ( #14796 )
...
* Add convenience function to create a snapshot archive out of any Bank
(cherry picked from commit dd5a2ef05f
)
* Add solana-test-validator --warp-slot argument
(cherry picked from commit bf1943e489
)
Co-authored-by: Michael Vines <mvines@gmail.com >
2021-01-23 06:38:16 +00:00
480a35d678
Track account writable deescalation (bp #14626 ) ( #14787 )
...
* Track account writable deescalation (#14626 )
(cherry picked from commit 77572a7c53
)
# Conflicts:
# sdk/src/feature_set.rs
* fix conflicts
Co-authored-by: Jack May <jack@solana.com >
2021-01-23 03:33:21 +00:00
e6b53c262b
Revert "Partial accounts clean ( #14652 ) ( #14751 )" ( #14776 )
...
This reverts commit c89f5e28b7
.
2021-01-22 16:17:20 -08:00
e127631f8d
Add ability to clone accounts from an RPC endpoint ( #14784 )
...
(cherry picked from commit cbb9ac19b9
)
Co-authored-by: Michael Vines <mvines@gmail.com >
2021-01-22 22:47:29 +00:00
2d246581ed
Add ability to force feature activation without code modification ( #14783 )
...
(cherry picked from commit c3548f790c
)
Co-authored-by: Michael Vines <mvines@gmail.com >
2021-01-22 22:39:56 +00:00
952a5b11c1
CLI: Strive for at least one signer (bp #14767 ) ( #14779 )
...
* CLI: Strive for at least one signer
(cherry picked from commit 8f8d593457
)
* CLI: Allow missing pubkey in `--verbose` config output
(cherry picked from commit 90e1778cd2
)
* CLI: Don't scare the users
(cherry picked from commit e9c98f2416
)
Co-authored-by: Trent Nelson <trent@solana.com >
2021-01-22 19:50:50 +00:00
c49a8cb67c
Rpc: Add custom error for BigTable data not found ( #14762 ) ( #14765 )
...
* Expose not-found bigtable error
* Add custom rpc error for bigtable data not found
* Return custom rpc error when bigtable block is not found
* Generalize long-term storage
(cherry picked from commit 71e9958e06
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-01-22 05:56:47 +00:00
733a1c85cf
Add block_time to getConfirmedSignaturesForAddress2 and getConfirmedTransaction (bp #14572 ) ( #14728 )
...
* Add block_time to getConfirmedSignaturesForAddress2 and getConfirmedTransaction (#14572 )
* add block_time to get_confirmed_signatures_for_address2 and protobuf implementation for tx_by_addr
* add tests for convert
* update cargo lock
* run cargo format after rebase
* introduce legacy TransactionByAddrInfo
* move LegacyTransactionByAddrInfo back to storage-bigtable
(cherry picked from commit 1de6d28eaf
)
* fix local sanity script
* add missing block_time field
Co-authored-by: Josh <josh.hundley@gmail.com >
2021-01-22 02:02:45 +00:00
c8f7719c9e
fixes test_filter_current flakiness (bp #14749 ) ( #14761 )
...
* fixes test_filter_current flakiness (#14749 )
(cherry picked from commit e4da6761a7
)
# Conflicts:
# core/src/crds_value.rs
* removes backport merge conflicts
Co-authored-by: behzad nouri <behzadnouri@gmail.com >
2021-01-22 01:24:10 +00:00
c89f5e28b7
Partial accounts clean ( #14652 ) ( #14751 )
...
Clean less keys by tracking the two cases:
* Touched keys per slot in uncleaned_keys derived from
accounts delta hash operation.
* Set of keys with any zero-lamport updates.
Co-authored-by: sakridge <sakridge@gmail.com >
2021-01-22 00:34:49 +00:00
38e4c34d18
CLI: Add calculate-rent
subcommand (bp #14725 ) ( #14759 )
...
* cli-output: Genericize `writeln_name_value()`
(cherry picked from commit 2820d0a23d
)
* CLI: Add `calculate-rent` subcommand
(cherry picked from commit 12410541a4
)
Co-authored-by: Trent Nelson <trent@solana.com >
2021-01-22 00:04:07 +00:00
afa7343bc2
Add ic_msg()/ic_logger_msg() macros ( #14757 )
...
(cherry picked from commit 3c6dbd21d2
)
Co-authored-by: Michael Vines <mvines@gmail.com >
2021-01-21 23:10:50 +00:00
8ea584e01f
Update bigtable confirm to use confirmation_status ( #14750 ) ( #14754 )
...
(cherry picked from commit ca95302038
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-01-21 22:21:34 +00:00
239dc9b0b7
rewrites turbine retransmit peers computation ( #14584 ) ( #14742 )
...
(cherry picked from commit b5fd0ed859
)
Co-authored-by: behzad nouri <behzadnouri@gmail.com >
2021-01-21 14:25:46 +00:00
6e6a55b7d6
Add signer/writable de/escalation tests ( #14726 ) ( #14739 )
...
(cherry picked from commit aa96ad042b
)
Co-authored-by: Jack May <jack@solana.com >
2021-01-21 10:39:08 +00:00
815bad8a6c
Minor doc clarification ( #14733 )
...
(cherry picked from commit 5ac536d0fb
)
Co-authored-by: Michael Vines <mvines@gmail.com >
2021-01-21 08:13:05 +00:00
74f813574f
Nonce address doesn't sign AdvanceNonceAccount ( #14722 )
...
(cherry picked from commit 447e3de1f2
)
Co-authored-by: Trent Nelson <trent@solana.com >
2021-01-21 05:31:55 +00:00
07648f43db
Make it possible to opt-out jemalloc for heaptrack ( #14634 ) ( #14685 )
...
(cherry picked from commit d63b2baf0e
)
Co-authored-by: Ryo Onodera <ryoqun@gmail.com >
2021-01-21 03:32:07 +00:00
99f0d29e65
Return confirmation-status ( #14709 ) ( #14715 )
...
(cherry picked from commit 0e87572eb0
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-01-21 03:05:53 +00:00
87825f3beb
Sanitize base58 pubkeys and sigs (bp #14708 ) ( #14712 )
...
* SDK: Sanitize base58 pubkey input
(cherry picked from commit 250b3969d4
)
* SDK: Sanitize base58 signature input
(cherry picked from commit 2783aee483
)
Co-authored-by: Trent Nelson <trent@solana.com >
2021-01-21 02:39:58 +00:00
8e38f90e54
Default to highest finalized block if no slot provided ( #14701 ) ( #14704 )
...
(cherry picked from commit c64d4f7693
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-01-20 22:48:32 +00:00
d72c90e475
Bump version to v1.5.5 ( #14700 )
2021-01-20 20:26:16 +00:00
459ae81655
Cli: promote commitment to a global arg + config.yml ( #14684 ) ( #14698 )
...
* Make commitment a global arg
* Add commitment to solana/cli/config.yml
* Fixup a couple Display/Verbose bugs
(cherry picked from commit a7086a0f83
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
v1.5.4
2021-01-20 18:04:25 +00:00
a2ce22f11b
Bail on small deploy buffers ( #14677 ) ( #14682 )
...
(cherry picked from commit a480b63234
)
Co-authored-by: Jack May <jack@solana.com >
2021-01-20 03:39:27 +00:00
44ad4a1ecd
Prevent the invoke and upgrade of programs in the same tx batch (bp #14653 ) ( #14680 )
2021-01-19 17:58:45 -08:00
fcd8dd75c5
Cli: default to single gossip ( #14673 ) ( #14676 )
...
* Init cli RpcClient with chosen commitment; default to single_gossip
* Fill in missing client methods
* Cli tests: make RpcClient commitment specific
* Simply rpc_client calls, using configured commitment
* Check validator vote account with single-gossip commitment
(cherry picked from commit 4964b0fe61
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-01-19 23:58:19 +00:00
ca262fdeb9
Configure Bigtable's timeout, enabling by default ( #14657 ) ( #14669 )
...
* Configure bigtable's timeout when read-only
* Review comments
* Apply nits (thanks!)
Co-authored-by: Michael Vines <mvines@gmail.com >
* Timeout in the streamed decoding as well
Co-authored-by: Michael Vines <mvines@gmail.com >
(cherry picked from commit dcaa025822
)
Co-authored-by: Ryo Onodera <ryoqun@gmail.com >
2021-01-19 15:14:59 +00:00
3d6bb95932
Improve docs around bigtable read limit ( #14660 ) ( #14662 )
...
(cherry picked from commit 2eb19fa5e5
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-01-19 07:51:44 +00:00
e5d36fcfb3
feature gates turbine retransmit peers patch ( #14631 ) ( #14659 )
...
(cherry picked from commit c6ae0667e6
)
Co-authored-by: behzad nouri <behzadnouri@gmail.com >
2021-01-19 05:38:26 +00:00
061965e291
Rename RpcNodeUnhealthy error to NodeUnhealthy, generalize getHealth
RPC error object for the future ( #14656 )
...
(cherry picked from commit 5d9dc609b1
)
Co-authored-by: Michael Vines <mvines@gmail.com >
2021-01-19 05:24:29 +00:00
e56681a2f6
Make Bigtable::get_confirmed_blocks inclusive of requested start_slot and end_slot ( #14651 ) ( #14655 )
...
* Fix off-by-one error
* Filter out blocks greater than end slot
(cherry picked from commit cbf8ef7480
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-01-19 03:42:59 +00:00
8cf23903ce
Fix the occasional stuck RPC request (bp #14628 ) ( #14638 )
...
* WIP fix the occasional stuck RPC request
(cherry picked from commit 5cf9094bb9
)
* Clean up and add comment
(cherry picked from commit 8d4ab1bab1
)
Co-authored-by: Ryo Onodera <ryoqun@gmail.com >
2021-01-18 19:57:28 +00:00
7ac2aae730
More generic accounts purge functions ( #14595 ) ( #14640 )
...
Co-authored-by: Carl Lin <carl@solana.com >
(cherry picked from commit 5f14f45282
)
Co-authored-by: carllin <wumu727@gmail.com >
2021-01-18 05:53:40 +00:00
6f5b9331bd
Add --minimum-validator-identity-balance ( #14636 )
...
(cherry picked from commit a12ede8e7d
)
Co-authored-by: Michael Vines <mvines@gmail.com >
2021-01-18 03:36:58 +00:00
a04375e204
Add getSnapshotSlot
RPC method ( #14632 )
...
(cherry picked from commit 4003f86f04
)
Co-authored-by: Michael Vines <mvines@gmail.com >
2021-01-16 20:51:33 +00:00
7b19d26a6e
Add getHealth
RPC method
2021-01-16 10:51:54 -08:00
3c3a3f0b50
Improve solana-test-validator output
...
(cherry picked from commit 1c2ae15b1d
)
2021-01-16 10:14:43 -08:00
0367b32533
Update-executable flag in pre-accounts ( #14622 ) ( #14625 )
...
(cherry picked from commit 66b54b852d
)
Co-authored-by: Jack May <jack@solana.com >
2021-01-16 03:05:12 +00:00
09392ee562
Support account on tmpfs via net/ scripts (bp #14459 ) ( #14621 )
...
* multinode-demo: Pass --accounts through bootstrap leader wrapper
(cherry picked from commit 327be55acc
)
* gce.sh: Factor out default custom memory
(cherry picked from commit ddf1d2dbf5
)
* net/: Support accounts on swap-backed tmpfs
(cherry picked from commit ff599ace4d
)
* net/gce.sh: Add cusom RAM arg instead of doubling default with tmpfs
(cherry picked from commit 3175cf1deb
)
Co-authored-by: Trent Nelson <trent@solana.com >
2021-01-16 00:14:16 +00:00