Commit Graph

23328 Commits

Author SHA1 Message Date
Jon Cinque 8c14886891
sdk: Limited Borsh 0.9 support (Pubkey and helpers) (#32511)
* sdk: Implement Borsh 0.9 traits on Pubkey

* Alphabetize cargo.toml

* Add backwards-compatible borsh file

* Add borsh0_10.rs for more clarity

* Deprecate `borsh` utils, use borsh0_10 everywhere

* Mark borsh 0.9 helpers as deprecated

* Add macros for deriving helper impls

* Add borsh 0.9 tests

* Refactor tests into macro
2023-08-02 23:15:24 +02:00
dependabot[bot] 1552a07f5b
Bump indicatif from 0.17.5 to 0.17.6 (#32690)
* Bump indicatif from 0.17.5 to 0.17.6

Bumps [indicatif](https://github.com/console-rs/indicatif) from 0.17.5 to 0.17.6.
- [Release notes](https://github.com/console-rs/indicatif/releases)
- [Commits](https://github.com/console-rs/indicatif/commits)

---
updated-dependencies:
- dependency-name: indicatif
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-08-02 18:11:20 +00:00
behzad nouri 4e4b0a361e
uses RwLock instead of Mutex for cache entries in ClusterNodesCache (#32686)
For as long as cache entries have not expired yet, a shared lock is
enough and would avoid lock contention.
2023-08-02 18:08:18 +00:00
Yihau Chen 4dc6eb14e0
ci: fix cc only support unix and window since 1.0.80 (#32689) 2023-08-02 16:47:54 +00:00
dependabot[bot] 67b2f891f7
Bump rustls from 0.21.5 to 0.21.6 (#32685)
* Bump rustls from 0.21.5 to 0.21.6

Bumps [rustls](https://github.com/rustls/rustls) from 0.21.5 to 0.21.6.
- [Release notes](https://github.com/rustls/rustls/releases)
- [Commits](https://github.com/rustls/rustls/compare/v/0.21.5...v/0.21.6)

---
updated-dependencies:
- dependency-name: rustls
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-08-02 14:09:14 +00:00
dependabot[bot] ae4d17e11a
Bump cc from 1.0.79 to 1.0.80 (#32681)
* Bump cc from 1.0.79 to 1.0.80

Bumps [cc](https://github.com/rust-lang/cc-rs) from 1.0.79 to 1.0.80.
- [Release notes](https://github.com/rust-lang/cc-rs/releases)
- [Commits](https://github.com/rust-lang/cc-rs/compare/1.0.79...1.0.80)

---
updated-dependencies:
- dependency-name: cc
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-08-02 12:54:54 +00:00
dependabot[bot] be1ba04282
Bump quinn from 0.10.1 to 0.10.2 (#32683)
* Bump quinn from 0.10.1 to 0.10.2

Bumps [quinn](https://github.com/quinn-rs/quinn) from 0.10.1 to 0.10.2.
- [Release notes](https://github.com/quinn-rs/quinn/releases)
- [Commits](https://github.com/quinn-rs/quinn/commits)

---
updated-dependencies:
- dependency-name: quinn
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-08-02 12:53:25 +00:00
behzad nouri 69336ab5da
resets packet flags obtained from QUIC datagrams (#32673)
Packets obtained from recycler have dirty meta information and need to
re-initialized.
2023-08-01 21:50:25 +00:00
Andrew Fitzgerald 727cca5d20
QosService inline metrics reporting (#32670) 2023-08-01 10:19:02 -07:00
dependabot[bot] 7afefd9e1b
Bump serde from 1.0.177 to 1.0.180 (#32672)
* Bump serde from 1.0.177 to 1.0.180

Bumps [serde](https://github.com/serde-rs/serde) from 1.0.177 to 1.0.180.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.177...v1.0.180)

---
updated-dependencies:
- dependency-name: serde
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-08-01 13:19:49 +00:00
Jeff Washington (jwash) 3dcb382731
avoid giant memory allocation in hash calc (#32646)
* avoid giant memory allocation in hash calc

* update comment

* reorder to avoid clone

* simplify references

* update comment on get_item
2023-07-31 13:13:19 -07:00
Brooks f4504d055a
Uses Mutex::into_inner() at end of de_dup_accounts() (#32667) 2023-07-31 17:02:45 +00:00
Jeff Washington (jwash) 91fd2a3a93
abs purge slots in parallel (#32536)
* abs purge slots in parallel

* remove arc clone
2023-07-31 09:22:53 -07:00
steviez 0dd4c208e6
Remove redundant inc_new_counter for num received packets (#32664)
The same value is reported as a field in StreamerReceiveStats in
/streamer/src/streamer.rs
2023-07-31 09:53:17 -06:00
Jeff Washington (jwash) bb407d2b62
add metric read_only_cache_load_us (#32559) 2023-07-31 07:07:13 -07:00
dependabot[bot] 58882e33ef
Bump syn from 2.0.27 to 2.0.28 (#32666)
* Bump syn from 2.0.27 to 2.0.28

Bumps [syn](https://github.com/dtolnay/syn) from 2.0.27 to 2.0.28.
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/2.0.27...2.0.28)

---
updated-dependencies:
- dependency-name: syn
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-07-31 12:18:02 +00:00
Brooks 58e796dc64
Removes unnecessary clippy-allow for needless-collect when generating index (#32656) 2023-07-29 22:30:11 -04:00
Brooks fc8cfb63ae
Unstable sort slots when generating index (#32653) 2023-07-29 22:28:33 -04:00
behzad nouri ad4ddd3cb0
stores stake-accounts in parallel after epoch rewards calculations (#32633) 2023-07-29 20:47:28 +00:00
Will Hickey 3cc97c75e6
Add changelog (#26894)
* Add changelog

* Lint: remove trailing whitespace

* Update based on review feedback

* Remove branch tracking from inside the changelog.

* Factor out duplication

* Add instruction about using the same wording when backporting

* Formatting - 80 character wrap

* Clarify ambiguous language

* Remove instruction that is only relelvant to backports

* Revert "Remove instruction that is only relelvant to backports"

This reverts commit 31fe048a5ec5493cf1c8524db10769cd14d2be0d.

* Update wording baased on review feedback

* Add core contributors to audience

Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>

* Updated based on review feedback.
* Add noteworthy criteria.
* Move instructions to bottom (below changelog).
* Add detail to instructions.

* Update core contributors to contributors

Co-authored-by: mvines <mvines@gmail.com>

* Remove superfluous "ABI"

Co-authored-by: mvines <mvines@gmail.com>

* Add anchor link at the top to the instructions at the bottom

Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>

* Add instructions for maintaining the changelog

* wording. add entry for edge channel.

* switch language from "branches" to "channels"
* adds entry for edge channel

Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>

* Remove whitespace in link

---------

Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>
Co-authored-by: mvines <mvines@gmail.com>
2023-07-28 17:09:35 -05:00
Brooks 16ec9a68c9
Unzips Option when deserializing snapshot data files (#32652) 2023-07-28 15:21:22 -04:00
Brooks 965ed1ab1f
Simplifies if-let when rebuilding bank (#32654)
Simplifies let-Some when rebuilding bank
2023-07-28 17:55:58 +00:00
Brooks e1d0785f4f
Unzips Option when rebuilding bank (#32651) 2023-07-28 12:28:49 -04:00
dependabot[bot] 7f062624eb
Bump serde from 1.0.176 to 1.0.177 (#32647)
* Bump serde from 1.0.176 to 1.0.177

Bumps [serde](https://github.com/serde-rs/serde) from 1.0.176 to 1.0.177.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.176...v1.0.177)

---
updated-dependencies:
- dependency-name: serde
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-07-28 14:01:54 +00:00
steviez e337631f32
Cleanup backup_and_clear_blockstore() (#32461)
Some of the cleanup tasks include ...
- Make subfunctions return a Result and allow error handling above
- Add some clarifying comments
- Give backup directory name a more meaningful name
- Add some additional logs (with timing info) for long running parts
2023-07-28 06:43:04 -05:00
Alessandro Decina e3f253d559
introduce SerializedAccountMetadata (#32644)
* bpf_loader: move computing original account lengths inside serialize_paramters_(aligned|unaligned)

This is in preparation of returning more than just the original length

* bpf_loader: deserialize*: take original lens as an iterator instead of a slice

This is in preparation of extracting account lenghts from a larger
context

* bpf_loader: introduce SerializedAccountMetadata

Instead of passing original_account_lengths around as Vec<usize>,
introduce an explicit type that includes the length and soon more.
2023-07-28 18:34:27 +07:00
Alessandro Decina 6f88587652
cpi: change unnecessary &mut MemoryMapping to &MemoryMapping (#32643) 2023-07-28 14:11:17 +07:00
Alessandro Decina 029f7b1d56
BorrowedAccount: reserve() doesn't need to check for can_data_be_changed() (#32642)
reserve() only changes the capacity of the vector that holds the account data,
it doesn't modify the account in any way
2023-07-28 14:10:43 +07:00
Brooks de02601d73
Cleanups metrics in add_bank_snapshot() (#32645) 2023-07-27 20:24:25 +00:00
Brooks 4417f49728
Adds more timing metrics to add_bank_snapshot() (#32639) 2023-07-27 14:52:34 -04:00
steviez 028f10d3d1
ledger-tool: Add flag to ignore open file descriptor limit error (#32624)
The current desired open file descriptor limit is 1,000,000. This is
quite a large number, and not needed for every command. Namely, commands
that do not unpack a snapshot and create an AccountsDB will likely not
use this many files.

There is already an option in BlockstoreOptions to ignore errors if the
desired value cannot be set; this PR just bubbles that option up to a
CLI flag in ledger-tool.
2023-07-27 11:50:45 -05:00
behzad nouri 0b52b8a46e
switches from dlopen to dlopen2 (#32640)
dlopen is unmaintained:
https://github.com/szymonwieloch/rust-dlopen/issues/47
2023-07-27 16:30:22 +00:00
dependabot[bot] d45bbb413c
Bump serde_json from 1.0.103 to 1.0.104 (#32637)
* Bump serde_json from 1.0.103 to 1.0.104

Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.103 to 1.0.104.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.103...v1.0.104)

---
updated-dependencies:
- dependency-name: serde_json
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-07-27 15:00:46 +00:00
dependabot[bot] 14f11cb712
Bump serde from 1.0.175 to 1.0.176 (#32636)
* Bump serde from 1.0.175 to 1.0.176

Bumps [serde](https://github.com/serde-rs/serde) from 1.0.175 to 1.0.176.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.175...v1.0.176)

---
updated-dependencies:
- dependency-name: serde
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-07-27 15:00:19 +00:00
dependabot[bot] c561657395
Bump scopeguard from 1.1.0 to 1.2.0 (#32630)
* Bump scopeguard from 1.1.0 to 1.2.0

Bumps [scopeguard](https://github.com/bluss/scopeguard) from 1.1.0 to 1.2.0.
- [Commits](https://github.com/bluss/scopeguard/compare/v1.1.0...v1.2.0)

---
updated-dependencies:
- dependency-name: scopeguard
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* [auto-commit] Update all Cargo lock files

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-07-27 14:59:45 +00:00
dependabot[bot] 70677ae8f7
Bump chrono-humanize from 0.2.2 to 0.2.3 (#32629)
* Bump chrono-humanize from 0.2.2 to 0.2.3

Bumps [chrono-humanize](https://gitlab.com/imp/chrono-humanize-rs) from 0.2.2 to 0.2.3.
- [Changelog](https://gitlab.com/imp/chrono-humanize-rs/blob/master/release.toml)
- [Commits](https://gitlab.com/imp/chrono-humanize-rs/compare/0.2.2...0.2.3)

---
updated-dependencies:
- dependency-name: chrono-humanize
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-07-27 14:58:40 +00:00
dependabot[bot] 618d63c07c
Bump either from 1.8.1 to 1.9.0 (#32628)
* Bump either from 1.8.1 to 1.9.0

Bumps [either](https://github.com/bluss/either) from 1.8.1 to 1.9.0.
- [Commits](https://github.com/bluss/either/compare/1.8.1...1.9.0)

---
updated-dependencies:
- dependency-name: either
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* [auto-commit] Update all Cargo lock files

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-07-27 14:57:49 +00:00
Yueh-Hsuan Chiang 2448486106
TieredStorage struct (2/N) -- write_accounts part 1 (#32541)
#### Summary of Changes
This PR initiates the implementation of TieredAccountsFile::write_accounts,
which will later support AccountsFile::append_accounts.

This PR also introduces TieredAccountsFileWriter -- the main writer struct for a
TieredAccountsFile.

#### Test Plan
Extended existing unit tests.
2023-07-27 14:55:48 +08:00
steviez 9980771788
ledger-tool: Workaround clap bug for encoding arg in genesis command (#32626)
The --encoding flag only makes sense for the genesis command if the
genesis accounts will be printed. Hence, the encoding flag used the
Arg::requires() function on --accounts argument.

However, in what appears to be a clap bug, this made the --accounts flag
required even though it should not be. So, remove the .requires()
dependency between these two arguments.
2023-07-26 13:25:56 -05:00
Yihau Chen 9a17203811
ci: make test_batched_range_proof_u256 use all threads in nextest (#32627) 2023-07-26 15:42:17 +08:00
Brooks fa8cbae8df
Only hold storages meant for snapshots (#32590) 2023-07-25 18:58:06 -04:00
Brooks 89c1f94cc4
Do not add bank snapshots for AccountsHashVerifier requests (#32589) 2023-07-25 18:30:06 -04:00
Pankaj Garg ef8d3206d7
Move bank specific code out of epoch_accounts_hash/utils.rs (#32623)
* Move bank specific code out of epoch_accounts_hash/utils.rs

* cleanup
2023-07-25 14:12:20 -07:00
galactus dbac50dcc8
New method to send large number of transactions to the cluster (#32388)
* Adding a method which sends and confirm a large number of transactions in parallel and using it to deploy programs

* Using the new method to deploy programs

* Minor changes, break when transaction map is empty

* Updating cargo for all lock files

* Sorting dependencies

* Changes after tnelson's comment

* confirm recently expired transactions and improve tracking of transaction sending

* Minor changes

* more changes after tnelson's comments

* Adding serialized transaction in TransactionData

* Update client/src/send_and_confirm_transactions_in_parallel.rs

Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>

* Update client/src/send_and_confirm_transactions_in_parallel.rs

Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>

* nit changes from trent

* Fixing kirills comments, adding some unit tests

* fixing ci, and minor change

* addressing Kirills nit comments

---------

Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>
2023-07-25 12:08:01 -06:00
Yueh-Hsuan Chiang 28d7e59cac
TieredStorage struct (1/N) -- new_writable() (#32538)
#### Summary of Changes
This PR initiates the implementation of the main struct for the
tiered accounts storage --- TieredStorage.  Specifically,
it defines the TieredStorage struct, TieredStorageFormat,
and skeleton implementation of new_writable().

#### Test Plan
Unit tests are included in this PR.
2023-07-26 01:51:56 +08:00
steviez cd39a6afd3
Make use of Blockstore's LedgerColumn objects (#32506)
* Move functions that take a &Database under impl Blockstore {...}
* Replace &Database with &self in those functions and update callers
* Use LedgerColumn's from Blockstore instead of re-fetching
* Add missing roots LedgerColumn and have it report metrics like others
* Remove several redundant comments
2023-07-25 10:25:12 -05:00
ripatel-fd 70a7bae53e
fix type param in translate_and_check_program_address_inputs (#32359)
Co-authored-by: Richard Patel <ripatel@jumptrading.com>
2023-07-25 17:05:12 +02:00
dependabot[bot] 49d95b55f9
Bump semver from 1.0.17 to 1.0.18 (#32619)
* Bump semver from 1.0.17 to 1.0.18

Bumps [semver](https://github.com/dtolnay/semver) from 1.0.17 to 1.0.18.
- [Release notes](https://github.com/dtolnay/semver/releases)
- [Commits](https://github.com/dtolnay/semver/compare/1.0.17...1.0.18)

---
updated-dependencies:
- dependency-name: semver
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-07-25 14:38:18 +00:00
dependabot[bot] 028e22fa23
Bump etcd-client from 0.8.2 to 0.8.4 (#32620)
* Bump etcd-client from 0.8.2 to 0.8.4

Bumps [etcd-client](https://github.com/etcdv3/etcd-client) from 0.8.2 to 0.8.4.
- [Release notes](https://github.com/etcdv3/etcd-client/releases)
- [Commits](https://github.com/etcdv3/etcd-client/compare/0.8.2...v0.8.4)

---
updated-dependencies:
- dependency-name: etcd-client
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-07-25 13:17:13 +00:00
dependabot[bot] 9a11525a9a
Bump thiserror from 1.0.43 to 1.0.44 (#32618)
* Bump thiserror from 1.0.43 to 1.0.44

Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.43 to 1.0.44.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.43...1.0.44)

---
updated-dependencies:
- dependency-name: thiserror
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-07-25 13:14:42 +00:00