Commit Graph

24744 Commits

Author SHA1 Message Date
Yueh-Hsuan Chiang 26d62b9516
[TieredStorage] writing hot account blocks and index blocks (#34828)
#### Problem
The implementation of write_accounts() for HotAccountStorage is missing.
It consists of the writing of account blocks, index block, and owners block.

#### Summary of Changes
This PR completes part of the HotStorageWriter::write_accounts().
Specifically, it finishes the writing of account blocks and index block.

#### Test Plan
A new unit-test is added to verify the correctness of the work-in-progress
HotStorageWriter::write_accounts().
2024-01-25 09:38:06 -08:00
Alexander Meißner 2c98399afd
Docs - for loaded_programs.rs (#34715)
Adds doc comments to loaded_programs.rs
2024-01-25 18:02:38 +01:00
hana 0c2d9d25fd
solana-program: VoteState::deserialize() (#34829)
* implement a custom parser for `VoteState` which is usuable in a bpf context
* derive or impl `Arbitrary` for `VoteStateVersions` and its component types, for test builds only
2024-01-25 08:51:41 -08:00
dependabot[bot] b18f738371
build(deps): bump bytemuck from 1.14.0 to 1.14.1 (#34945)
* build(deps): bump bytemuck from 1.14.0 to 1.14.1

Bumps [bytemuck](https://github.com/Lokathor/bytemuck) from 1.14.0 to 1.14.1.
- [Changelog](https://github.com/Lokathor/bytemuck/blob/main/changelog.md)
- [Commits](https://github.com/Lokathor/bytemuck/compare/v1.14.0...v1.14.1)

---
updated-dependencies:
- dependency-name: bytemuck
  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>
2024-01-25 23:52:40 +08:00
Pankaj Garg b161f6ce08
Create SVM folder as a placeholder for the relevant code (#34942) 2024-01-25 06:20:00 -08:00
Pankaj Garg b04765f8b5
Code cleanup in account_rent_state (#34941) 2024-01-24 17:35:56 -08:00
Dmitri Makarov 5b59930782
Refactoring internal bank method signature for consistency (#34936) 2024-01-24 20:28:25 -05:00
Andrew Fitzgerald 62e7ebd0cc
BlockProductionMethod::CentralScheduler as default (#34891) 2024-01-24 15:30:32 -08:00
Tyera bbd1fd41ac
Move EpochRewardsHasher to solana-sdk (#34934)
* Move EpochRewardsHasher to solana-sdk

* Cargo.lock

* Apparently we're allowing arithmetic_side_effects in all of runtime

* Move allow stmt to block instead of module

* Also allow in test mod
2024-01-24 16:25:01 -07:00
samkim-crypto 3004eaa9bd
[clap-v3-utils] Add functions to parse directly from `SignerSource` (#34678)
* add `_from_source` function variants for signer, keypair, and pubkey

* make `parse_signer_source` an associated function of `SignerSource`

* refactor `SignerSource` into `input_parsers::signer`

* make `_from_source` functions public

* remove unnecessary import
2024-01-25 06:27:02 +09:00
Brooks 5898b9a2f7
Cleans up stale accounts hash cache files (#34933) 2024-01-24 15:31:50 -05:00
Dmitri Makarov 662e77feaa
Refactor bank's load_and_execute_transaction (#34893)
* Refactor bank load_and_execute_transactions

* Remove redundant clippy annotation

* Report check time where it is done in load_and_execute_transactions
2024-01-24 14:37:18 -05:00
Wen 0d92254736
Add push_heaviest_fork and get_heaviest_fork. (#34892)
Add push_get_heaviest_fork and push_get_heaviest_fork.
2024-01-24 08:57:50 -08:00
Dmitri Makarov ef233eaaa7
Refactor load_accounts to take a reference to a slice instead of vec (#34919)
This is in preparation for further refactoring of
Bank::load_and_execute_transactions in a separate commit.
2024-01-24 09:43:18 -05:00
samkim-crypto b11d41a3f7
[zk-token-sdk] Use checked arithmetic when processing transfer amount (#34130)
* add `try_split_u64`

* add `try_combine_lo_hi_u64`

* add `try` variants of ciphertext arithmetic functions

* use try functions in proof generaiton and verification logic

* deprecate non-`try` functions

* use try functions in proof generaiton and verification logic

* Apply suggestions from code review

Co-authored-by: Jon C <me@jonc.dev>

* cargo fmt

---------

Co-authored-by: Jon C <me@jonc.dev>
2024-01-24 22:27:03 +09:00
Tyera b9947bd327
Support json parsing of epoch-rewards partition data sysvar accounts (#34914) 2024-01-23 21:54:06 -07:00
Ryo Onodera bd103865df
Introduce primitive threading in unified scheduler (#34676)
* Introduce primitive threading in unified scheduler

* Make the internal struct ExecutedTask not pub

* Improve wording a bit

* Explain scheduler main loop's overhead sensitivity

* Improve wording a bit

* Define ChainedChannel{Sender, Receiver} wrappers

* Clean up a bit

* Use derivative to avoid manual Clone impl

* Clarify comment

* Remove extra whitespace in comment

* Remove unneeded dyn trait for ChainedChannel

* Remove the accumulator thread for now

* Fix typo

* Use unimplemented!() to convey intention better
2024-01-24 12:46:16 +09:00
Brooks bfbe03a536
Updates mergify backport actions for new minor version (#34921) 2024-01-23 22:29:21 -05:00
Yueh-Hsuan Chiang 1810feadc2
[TieredStorage] In-memory struct for writing OwnersBlock (#34853)
#### Problem
To write the owners-block, it requires an in-memory struct that maintains
a set of unique owner addresses while providing a look-up function to
obtain the OwnerOffset with the specified owner address. 

#### Summary of Changes
This PR adds OwnersTable, the in-memory struct that maintains
a set of unique owner addresses while providing a look-up function to
obtain the OwnerOffset with the specified owner address.

#### Test Plan
A new unit-test is added.
2024-01-23 14:57:53 -08:00
Brooks 3303c2566c
Removes fs-err dependency (#34911) 2024-01-23 17:25:03 -05:00
Tyera 7ebe0bccd6
Fix epoch rewards partition-data program owner (#34913)
Fix account program owner
2024-01-23 15:19:21 -07:00
Will Hickey ad0aabcd1c
Update changelog in preparation for creating new v1.18 branch (#34912) 2024-01-23 15:28:57 -06:00
Brooks e74f04ad0d
Replaces fs-err in snapshot_utils.rs (#34908) 2024-01-23 14:48:30 -05:00
Brooks b150de6d10
Replaces fs-err in clean_orphaned_account_snapshot_dirs() (#34902)
* Replaces fs-err in clean_orphaned_account_snapshot_dirs()

* pr: revert info message format changes
2024-01-23 19:46:02 +00:00
Brooks c30db7ad92
Replaces fs-err in snapshot_version_from_file() (#34904) 2024-01-23 14:35:10 -05:00
Tao Zhu 73d3973c7c
Remove congestion multiplier from calculate fee (#34865)
* remove println from a test

* sync fee_structure with fee_rate_governor;
remove congestion_multiplier from calculacte_fee(), leave parameters unused for now.
2024-01-23 12:59:50 -06:00
Brooks 22fc49c444
Replaces fs-err in rebuild_storages_from_snapshot_dir() (#34907) 2024-01-23 13:26:23 -05:00
Brooks 94f35da8e2
Replaces fs-err in purge_bank_snapshot() (#34906) 2024-01-23 17:50:39 +00:00
Brooks a21cfbd13f
Replaces fs-err in untar_snapshot_create_shared_buffer() (#34905) 2024-01-23 12:46:31 -05:00
Brooks 4bd8eedc06
Replaces fs-err in move_and_async_delete_path() (#34903) 2024-01-23 12:42:44 -05:00
Andrew Fitzgerald bb829c0bcf
remove unused functions (#34895) 2024-01-23 09:32:35 -08:00
Brooks 8ff511e8fa
Moves create_and_canonicalize_directories() into accounts-db utils (#34882) 2024-01-23 06:46:27 -05:00
dependabot[bot] 9263cc6c82
build(deps): bump proc-macro2 from 1.0.76 to 1.0.78 (#34873)
* build(deps): bump proc-macro2 from 1.0.76 to 1.0.78

Bumps [proc-macro2](https://github.com/dtolnay/proc-macro2) from 1.0.76 to 1.0.78.
- [Release notes](https://github.com/dtolnay/proc-macro2/releases)
- [Commits](https://github.com/dtolnay/proc-macro2/compare/1.0.76...1.0.78)

---
updated-dependencies:
- dependency-name: proc-macro2
  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>
2024-01-23 16:30:28 +08:00
dependabot[bot] b3ac7c7ae5
build(deps): bump smallvec from 1.12.0 to 1.13.1 (#34872)
* build(deps): bump smallvec from 1.12.0 to 1.13.1

Bumps [smallvec](https://github.com/servo/rust-smallvec) from 1.12.0 to 1.13.1.
- [Release notes](https://github.com/servo/rust-smallvec/releases)
- [Commits](https://github.com/servo/rust-smallvec/compare/v1.12.0...v1.13.1)

---
updated-dependencies:
- dependency-name: smallvec
  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>
2024-01-23 16:26:57 +08:00
dependabot[bot] ac1f8ca5d6
build(deps): bump regex from 1.10.2 to 1.10.3 (#34871)
* build(deps): bump regex from 1.10.2 to 1.10.3

Bumps [regex](https://github.com/rust-lang/regex) from 1.10.2 to 1.10.3.
- [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.10.2...1.10.3)

---
updated-dependencies:
- dependency-name: regex
  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>
2024-01-23 16:26:11 +08:00
dependabot[bot] 00b037fc25
build(deps): bump openssl from 0.10.62 to 0.10.63 (#34874)
* build(deps): bump openssl from 0.10.62 to 0.10.63

Bumps [openssl](https://github.com/sfackler/rust-openssl) from 0.10.62 to 0.10.63.
- [Release notes](https://github.com/sfackler/rust-openssl/releases)
- [Commits](https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.62...openssl-v0.10.63)

---
updated-dependencies:
- dependency-name: openssl
  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>
2024-01-23 16:25:16 +08:00
Tyera 8aa726bfdf
Define epoch-rewards partition data program id (#34862)
* Create new program id for epoch-rewards partition data PDAs

* Remove misleading repr attribute

* Remove storage of HasherKind

* Split up seeds
2024-01-22 19:14:29 -07:00
steviez 9122193e17
blockstore: Make is_orphan() a method of SlotMeta (#34889)
The old function's only input is a SlotMeta, so makes sense to move
it a member function of SlotMeta
2024-01-22 19:14:51 -06:00
Brooks 098076f5ca
Uses accounts run and snapshot dir constants (#34879) 2024-01-22 19:47:58 -05:00
Joe C 9caf9e8f17
rpc: add tests for simulate transaction inner instructions (#34495)
* rpc: add tests for simulate transaction inner instructions

* update encoding

* take out extra test case
2024-01-22 18:27:27 -06:00
Andrew Fitzgerald 45a2a701de
TransactionState: add TransactionCost (#34881) 2024-01-22 16:21:06 -08:00
Brooks 2f744f1639
Moves create_all_accounts_run_and_snapshot_dirs() into accounts-db utils (#34877) 2024-01-22 18:18:43 -05:00
Brooks 8cfad7f165
Replaces fs-err in verify_snapshot_archive() (#34887) 2024-01-22 17:20:00 -05:00
Brooks 16698b19d8
Replaces fs-err in snapshot_utils fns (#34883) 2024-01-22 21:36:22 +00:00
Tao Zhu a5c470d2fb
harden bank tests (#34821)
* harden bank tests by specifying exact genesis config wrt the fee rate and rent

* rename to clarify test function, add comments
2024-01-22 13:38:56 -06:00
Yihau Chen 9db4e84e72
bump shlex to 1.3.0 (#34878) 2024-01-23 03:18:07 +08:00
Brooks c264307f10
Removes get_io_error() (#34863) 2024-01-22 14:07:29 -05:00
Andrew Fitzgerald 5e4332ee35
Feature Impl: cost model uses number of requested write locks (#34820) 2024-01-22 09:22:49 -08:00
Brooks b78d41792a
Replaces fs-err in snapshot_utils tests (#34870) 2024-01-22 06:55:32 -05:00
Brooks d005b3a5b8
Removes fs-err dependency from accounts-db crate (#34869) 2024-01-22 06:55:13 -05:00