be43512bae
cargo fmt
2021-10-01 00:51:43 -04:00
5df386ae0e
Bump version to v1.6.28 ( #20300 )
2021-09-28 20:23:27 +00:00
c5d174c170
Use single feature ( #20289 )
v1.6.27
2021-09-28 04:30:11 -06:00
9b6ec0b6d5
v1.6: Restore ability for programs to upgrade themselves ( #20263 )
...
* Make helper associated fn
* Add feature definition
* Restore program-id write lock when upgradeable loader is present; restore bpf upgrade-self test
* Remove spurious comment
2021-09-27 22:29:59 +00:00
1a88a9eb0e
resolve conflicts
2021-09-25 22:11:58 -04:00
66a9e6bcb4
chore: bump tiny-bip39 from 0.8.0 to 0.8.1 ( #20136 )
...
* chore: bump tiny-bip39 from 0.8.0 to 0.8.1
Bumps [tiny-bip39](https://github.com/maciejhirsz/tiny-bip39 ) from 0.8.0 to 0.8.1.
- [Release notes](https://github.com/maciejhirsz/tiny-bip39/releases )
- [Changelog](https://github.com/maciejhirsz/tiny-bip39/blob/master/CHANGELOG.md )
- [Commits](https://github.com/maciejhirsz/tiny-bip39/compare/v0.8.0...v0.8.1 )
---
updated-dependencies:
- dependency-name: tiny-bip39
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <anatoly+githubjenkins@solana.io >
(cherry picked from commit 038d77347a
)
# Conflicts:
# Cargo.lock
# clap-utils/Cargo.toml
# cli/Cargo.toml
# keygen/Cargo.toml
# sdk/Cargo.toml
2021-09-25 22:11:58 -04:00
2d0c0bc8ba
Bump bpf-tools version to 1.12
2021-09-25 22:11:58 -04:00
2b6962c063
Bump bpf-tools version to 1.11 ( #18079 )
...
Avoid including local paths in compiler generated ELF files
2021-09-25 22:11:58 -04:00
ed37cfed1c
Update RUSTFLAGS if it is set, instead of overriding in build-bpf
2021-09-25 22:11:58 -04:00
8f1a08e15c
Remove O2 option for compiling BPF programs ( #17865 )
...
rustc default compiler optimization level is O3. This change removes
the option that overrides the default optimization level, because it
is safe to do so. The code generation is incorrect in some cases
because of link-time optimizations, which remain disabled for
compiling BPF programs. In addition, this commit updates the expected
instruction counts for assert_instruction_count test.
2021-09-25 22:11:58 -04:00
c8d9e6c8c8
Add separate rules to generate dependencies files for C BPF build
2021-09-25 22:11:58 -04:00
3a1b2c8c9e
Bump BPF tools to v1.10
2021-09-25 22:11:58 -04:00
77e6cd35ee
Add BPF rustc option to reduce the optimizations to safer level ( #17590 )
2021-09-25 22:11:58 -04:00
6c390aeb67
Fix missing builtins in C programs linking with compiler_builtins ( #17475 )
2021-09-25 22:11:58 -04:00
cde248ae73
Bump bpf-tools version to 1.9
...
- upgrade rustc to 1.52.1 and clang to 12.0
2021-09-25 22:11:58 -04:00
9bc20a8cbb
Bump bpf-tools version to 1.8
2021-09-25 22:11:58 -04:00
6fd959c6d2
Bump bpf-tools version to 1.7 ( #17176 )
2021-09-25 22:11:58 -04:00
94e50b61e8
Add llvm feature option to compile for Solana BPF target ( #16495 )
2021-09-25 22:11:58 -04:00
4113acbf24
Resolve zeroize_derive audit warning by bumping version (backport #20182 ) ( #20189 )
...
* Resolve zeroize_derive audit warning by bumping version (#20182 )
* Revert "temporarily disable new audit"
This reverts commit 3dfbd95ddc
.
* Bump version of zeroize_derive from v1.0.0 to v1.2.0
(cherry picked from commit 0c62a6fe3f
)
# Conflicts:
# ci/do-audit.sh
* resolve conflict
Co-authored-by: Justin Starry <justin@solana.com >
2021-09-25 09:45:32 -04:00
572c0af699
runtime: remove inactive delegation from stakes cache
2021-09-22 20:39:34 -06:00
0a3bf17bb5
Only allow votes when root distance gets too high #2 ( #19991 )
...
Updates from master
2021-09-22 18:25:47 +02:00
431a82276e
allow vote to have 1 or 2 sigs ( #20082 )
2021-09-22 03:13:44 +00:00
14505f5bfd
Fix memo handling and "blocks" key formatting ( #20044 ) ( #20079 )
...
* Fix memo handling and "blocks" key formatting
* Skip memo equality check
* Define slot_to_tx_by_addr_key
Co-authored-by: Justin Starry <justin@solana.com >
(cherry picked from commit 795dde109c
)
Co-authored-by: Ryo Onodera <ryoqun@gmail.com >
2021-09-21 21:43:59 +00:00
c17c74021c
sigverify to identify and mark simple vote transaction ( #20021 )
...
* sigverify to identify and mark simple vote transaction
* check vote tx at get_packet_offsets to cover both cpu and gpu paths
* add pubkey_len to PacketOffsets to reduce the redundant bytes counting
2021-09-20 23:00:33 -05:00
cfc0e2d61f
Make bigtable delete-slots actually usable ( #20037 ) ( #20041 )
...
(cherry picked from commit 22f45dca80
)
Co-authored-by: Ryo Onodera <ryoqun@gmail.com >
2021-09-20 23:26:33 +00:00
b7fc704092
Optimize RPC pubsub for multiple clients with the same subscription (backport #18943 ) ( #19986 )
...
* Optimize RPC pubsub for multiple clients with the same subscription (#18943 )
* reimplement rpc pubsub with a broadcast queue
* update tests for new pubsub implementation
* fix: fix review suggestions
* chore(rpc): add additional pubsub metrics
* integrate max subscriptions check into SubscriptionTracker to reduce locking
* separate subscription control from tracker
* limit memory usage of items in pubsub broadcast queue, improve error handling
* add more pubsub metrics
* add final count metrics to pubsub
* add metric for total number of subscriptions
* fix small review suggestions
* remove by_params from SubscriptionTracker and add node_progress_watchers map instead
* add subscription tracker tests
* add metrics for number of pubsub notifications as a counter
* ignore clippy lint in TokenCounter
* fix underflow in token counter
* reduce queue capacity in pubsub tests
* fix(rpc): fix test timeouts
* fix race in account subscription test
* Add RpcSubscriptions::new_for_tests
Co-authored-by: Pavel Strakhov <p.strakhov@iconic.vc >
Co-authored-by: Nikita Podoliako <n.podoliako@zubr.io >
Co-authored-by: Tyera Eulberg <tyera@solana.com >
(cherry picked from commit 65227f44dc
)
* Fix conflicts (and standardize naming to make future subscription backports easier)
Co-authored-by: Pavel Strakhov <ri@idzaaus.org >
Co-authored-by: Tyera Eulberg <tyera@solana.com >
2021-09-20 07:32:34 +00:00
8bf5cdb349
bump 1.6 version ( #19988 )
2021-09-18 00:09:39 +00:00
eaa6aa0998
Only allow votes when root distance gets too high ( #19916 )
v1.6.26
2021-09-17 22:28:11 +02:00
3b3822846b
Add delete
subcommand to ledger-tool bigtable
( #19931 ) ( #19962 )
...
* Add `delete` subcommand to `ledger-tool bigtable` command
* feedback
(cherry picked from commit c71fab6cb3
)
Co-authored-by: Justin Starry <justin@solana.com >
2021-09-17 04:25:36 +00:00
da7185e2ed
rpc: performance fix for getProgramAccounts (backport #19941 ) ( #19949 )
...
* rpc: performance fix for getProgramAccounts (#19941 )
* rpc: performance fix for getProgramAccounts
The accounts were gradually pushed into a vector, which produced
significant slowdowns for very large responses.
* rpc: rewrite loops using iterators
Co-authored-by: Christian Kamm <ckamm@delightful-solutions.de >
(cherry picked from commit f1bbf1d8b0
)
# Conflicts:
# core/src/rpc.rs
* fix conflicts
* Fix conflicts
Co-authored-by: Christian Kamm <mail@ckamm.de >
Co-authored-by: Justin Starry <justin@solana.com >
Co-authored-by: Tyera Eulberg <tyera@solana.com >
2021-09-16 23:09:11 +00:00
ccef24c44e
Add banking metrics for buffered and dropped packets ( #19902 ) ( #19926 )
...
(cherry picked from commit ca3f147670
)
Co-authored-by: Justin Starry <justin@solana.com >
2021-09-16 00:39:02 +00:00
0c6a133b63
Restore feature declaration ( #19922 )
2021-09-15 16:45:59 -06:00
7873f6fb30
Report consumed_buffered_packets_count stat to metrics ( #19899 )
2021-09-15 07:21:20 -05:00
7cba9b8f8f
Add an info log to indicate the node has reached supermajority and print the active stake percentage ( #19893 ) ( #19897 )
...
(cherry picked from commit 4ff50519ff
)
Co-authored-by: Michael <68944931+michaelh-laine@users.noreply.github.com >
2021-09-15 07:55:17 +00:00
ca55bce522
Bump version to 1.6.26 ( #19894 )
2021-09-14 23:29:33 -06:00
7de8a55b54
Use f64 for stake math in get_stake_percent_in_gossip ( #19892 )
v1.6.25
2021-09-14 19:17:59 -06:00
7232b01a02
Bump version to v1.6.25 ( #19880 )
2021-09-14 20:33:13 +00:00
a4ebbc9f55
Remove demote_program_write_locks feature ( #19877 )
...
* Remove demote_program_write_locks feature
* Update test
v1.6.24
2021-09-14 12:25:42 -06:00
bf7c2f79c1
filters for recent contact-infos when checking for live stake (backport #19204 ) ( #19873 )
...
* filters for recent contact-infos when checking for live stake (#19204 )
Contact-infos are saved to disk:
https://github.com/solana-labs/solana/blob/9dfeee299/gossip/src/cluster_info.rs#L1678-L1683
and restored on validator start-up:
https://github.com/solana-labs/solana/blob/9dfeee299/core/src/validator.rs#L450
Staked nodes entries will not expire until an epoch after. So when the
validator checks for online stake it is erroneously picking up
contact-infos restored from disk, which breaks the entire
wait-for-supermajority logic:
https://github.com/solana-labs/solana/blob/9dfeee299/core/src/validator.rs#L1515-L1561
This commit adds an extra check for the age of contact-info entries and
filters out old ones.
(cherry picked from commit 7a789e0763
)
# Conflicts:
# core/src/validator.rs
* removes backport merge conflicts
Co-authored-by: behzad nouri <behzadnouri@gmail.com >
2021-09-14 18:21:56 +00:00
d401c3f5ab
Bump version
2021-09-14 08:12:02 -07:00
83d08223fd
More transaction forwarding ( #19834 )
v1.6.23
2021-09-14 16:08:53 +02:00
6bb63f9abf
Silence vercel github comments ( #19827 ) ( #19832 )
...
(cherry picked from commit 8ac12c29ed
)
Co-authored-by: Justin Starry <justin@solana.com >
2021-09-13 17:51:39 -05:00
d8293abc64
debug logs when crds table trim failed ( #18307 )
...
reports of this error being possibly spammy:
https://discord.com/channels/428295358100013066/689412830075551748/859441080054710293
The commit changes the log level to debug.
Additionally adding a new metric to understand the frequency of this error.
(cherry picked from commit 9d983a34a0
)
2021-09-10 20:02:13 -07:00
4d074a6716
Reduce wait for supermajority threshold back to 80%
...
(cherry picked from commit 4386e09710
)
2021-09-09 21:44:42 -07:00
3eee222667
Return error if Transaction contains writable executable or ProgramData accounts (backport #19629 ) ( #19729 )
...
* Return error if Transaction contains writable executable or ProgramData accounts (#19629 )
* Return error if Transaction locks an executable as writable
* Return error if a ProgramData account is writable but the upgradable loader isn't present
* Remove unreachable clause
* Fixup bpf tests
* Review comments
* Add new TransactionError
* Disallow writes to any upgradeable-loader account when loader not present; remove is_upgradeable_loader_present exception for all other executables
(cherry picked from commit 38bbb77989
)
# Conflicts:
# programs/bpf/tests/programs.rs
# runtime/src/accounts.rs
# runtime/src/bank.rs
# sdk/src/transaction.rs
# storage-proto/proto/transaction_by_addr.proto
# storage-proto/src/convert.rs
* Fix conflicts
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
Co-authored-by: Tyera Eulberg <tyera@solana.com >
2021-09-09 03:06:02 +00:00
a78c3c07f2
filters crds values in parallel when responding to gossip pull-requests (backport #18877 ) ( #19450 )
...
* filters crds values in parallel when responding to gossip pull-requests (#18877 )
When responding to gossip pull-requests, filter_crds_values takes a lot of time
while holding onto read-lock:
https://github.com/solana-labs/solana/blob/f51d64868/gossip/src/crds_gossip_pull.rs#L509-L566
This commit will filter-crds-values in parallel using rayon thread-pools.
(cherry picked from commit f1198fc6d5
)
* removes backport merge conflicts
Co-authored-by: behzad nouri <behzadnouri@gmail.com >
2021-09-08 17:09:35 +00:00
53f8e58300
Demote write locks on transaction program ids (backport #19593 ) (backport #19633 ) ( #19637 )
...
* Demote write locks on transaction program ids (backport #19593 ) (#19633 )
* Demote write locks on transaction program ids (#19593 )
* Add feature
* Demote write lock on program ids
* Fixup bpf tests
* Update MappedMessage::is_writable
* Comma nit
* Review comments
(cherry picked from commit decec3cd8b
)
# Conflicts:
# core/src/banking_stage.rs
# core/src/cost_model.rs
# core/src/cost_tracker.rs
# ledger-tool/src/main.rs
# program-runtime/src/instruction_processor.rs
# programs/bpf/tests/programs.rs
# programs/bpf_loader/src/syscalls.rs
# rpc/src/transaction_status_service.rs
# runtime/src/accounts.rs
# runtime/src/bank.rs
# runtime/src/message_processor.rs
# sdk/benches/serialize_instructions.rs
# sdk/program/src/message/mapped.rs
# sdk/program/src/message/sanitized.rs
# sdk/src/transaction/sanitized.rs
* Fix conflicts
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
Co-authored-by: Tyera Eulberg <tyera@solana.com >
(cherry picked from commit fcda5d4a7d
)
# Conflicts:
# cli-output/src/display.rs
# core/src/transaction_status_service.rs
# program-test/src/lib.rs
# programs/bpf_loader/src/syscalls.rs
# runtime/src/accounts.rs
# runtime/src/bank.rs
# runtime/src/message_processor.rs
# sdk/benches/serialize_instructions.rs
# sdk/program/src/message.rs
# sdk/src/feature_set.rs
# transaction-status/src/parse_accounts.rs
* Replace feature and fix conflicts
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Tyera Eulberg <tyera@solana.com >
2021-09-04 09:10:57 +00:00
b4fdce9443
Populate memo in blockstore signatures-for-address ( #19515 ) ( #19604 )
...
* Add TransactionMemos column family
* Traitify extract_memos
* Write TransactionMemos in TransactionStatusService
* Populate memos from column
* Dedupe and add unit test
(cherry picked from commit 5fa3e5744c
)
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
2021-09-03 18:38:57 +00:00
39fe52fc06
Fix clippy ( #17214 ) ( #19609 )
...
Newer clippy from +nightly have new errors about where annotations can and
cannot go. This commit fixes two of them.
(cherry picked from commit b074e86ad2
)
Co-authored-by: Brooks Prumo <brooks@solana.com >
2021-09-03 17:00:25 +00:00
db65b4e641
Populate memo in bigtable transaction structs (backport #19512 ) ( #19606 )
...
* Populate memo in bigtable transaction structs (#19512 )
* Populate memo in bigtable transaction structs
* Preface memos with len
(cherry picked from commit f4ae450f34
)
# Conflicts:
# transaction-status/src/parse_instruction.rs
* Fix conflicts
Co-authored-by: Tyera Eulberg <teulberg@gmail.com >
Co-authored-by: Tyera Eulberg <tyera@solana.com >
2021-09-03 09:26:08 +00:00