Commit Graph

24678 Commits

Author SHA1 Message Date
steviez 3dd348802f
Bubble up genesis load errors instead of exiting (#34851)
The function open_genesis_config() performs several operations that
could fail. If any of these fail, the process exits immediately.

Instead of exiting immediately, bubble up the error and let the caller
decide the appropriate action. solana-validator and solana-ledger-tool
will functionally be unchanged, but this consolidates startup failures
for both of these processes.
2024-01-19 10:25:46 -05:00
Tao Zhu 32a3de0939
use intended lamports_per_signature for fee_structure (#34845)
use intented lamports_per_signature for fee_struture, instead of using default
2024-01-19 09:18:17 -06:00
Tao Zhu a57d612cec
explicitly sets tests that does not handle transaction fee (#34847) 2024-01-19 09:18:02 -06:00
Tao Zhu fc53fd9ad9
explicitly sets fee rate to zero for stake-accounts tests (#34848)
explicitly sets fee rate to zero
2024-01-19 09:17:31 -06:00
Alexander Meißner 8e5cf13352
Cleanup - feature gate of `stop_truncating_strings_in_syscalls` (#34842)
Cleanup feature gate of stop_truncating_strings_in_syscalls.
2024-01-19 15:28:45 +01:00
Alexander Meißner 9d132441fd
Cleanup - feature gate of `remove_bpf_loader_incorrect_program_id` (#34843)
Cleanup feature gate of remove_bpf_loader_incorrect_program_id.
2024-01-19 09:07:41 +01:00
Alexander Meißner b5b829111c
Cleanup - feature gate of `stop_sibling_instruction_search_at_parent` (#34841)
Cleanup feature gate of stop_sibling_instruction_search_at_parent.
2024-01-19 09:07:30 +01:00
Andrew Fitzgerald 6976b750a9
Refactor: SchedulerController tests call receive then schedule (#34836) 2024-01-18 22:49:11 -08:00
Yihau Chen 7470c3d68b
rpc: parse token accounts in simulate_transaction (#34619)
* rpc: parse token accounts in simulate_transaction

* add overwrite_accounts into get_encoded_account and get_parsed_token_account

* revert get_mint_decimals scope changes

* move common.rs to rpc/account_resolver.rs

* rename get_account to get_account_from_overwrites_or_bank

* add a comment

* clippy

* add comment

Co-authored-by: Tyera <teulberg@gmail.com>

---------

Co-authored-by: Tyera <teulberg@gmail.com>
2024-01-19 11:53:45 +08:00
Brennan 3d7ee19348
Sample peers if input peer missing for repair shred (#34818) 2024-01-18 18:33:38 -08:00
Tao Zhu 2c0278b8b2
be explicit of test expects zero transaction fee (#34846)
be explcit of test expects 0 transaction fee
2024-01-18 18:49:39 -06:00
samkim-crypto 73218595c6
[zk-token-sdk] Restrict Edwards and Ristretto multiscalar multiplication vector length to at most 512 (#34763)
* restrict curve25519 multiscalar multiplication vector length to 512

* add syscall tests for msm vector length

* add new feature gate `curve25519_restrict_msm_length`

* update tests for feature new gate

* Update programs/bpf_loader/src/syscalls/mod.rs

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

* remove length guard on the multisicalar mult lib function

---------

Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>
2024-01-19 08:40:42 +09:00
Pankaj Garg dfb44959fa
Cleanup after simplify_writable_program_account_check feature activation (#34840) 2024-01-18 15:36:13 -08:00
Brooks 3388507878
Replaces fs-err in remove_tmp_snapshot_archives() (#34839) 2024-01-18 17:40:45 -05:00
Brooks 10590a3bcb
Replaces fs-err for HardLinkStoragesToSnapshotErrors (#34838) 2024-01-18 16:49:49 -05:00
Brooks 8f9d9152e0
Snapshot archive uses version file from bank snapshot (#34832) 2024-01-18 14:02:24 -05:00
Brooks b53915f164
Cleans up snapshot errors (#34831) 2024-01-18 13:42:22 -05:00
steviez 3bccdaff7f
blockstore: Adjust the error message for missing shreds (#34833)
The log statement is currently a bit misleading, and could be
interpretted as saying this routine deleted a shred.

Adjust the log statement to state that this routine is looking for the
shred but couldn't find it. Also, elevate the log to error level as
inconsistent state across columns should not be happening.
2024-01-18 12:17:49 -06:00
HaoranYi 6a9f729101
ForkStats: compute and wire up fork_weight (#34623)
* wire up fork stats fork_weight

* convert weight to percentage for logging

* add bank_stake

* remove old fork choice measure and stats - vote stake * lockout

* update tests

* fix bank_weight and rename it to fork_weight

* fix u64 multiple overflow in fork_weight calculation

* format fork_weight as percentage in logging

---------

Co-authored-by: HaoranYi <haoran.yi@solana.com>
2024-01-18 09:35:53 -06:00
samkim-crypto e2c2029ac4
[zk-token-sdk] Restrict a single-bit of 256-bit batched range proof to 128 (#34803)
* fix previous typo

* restrict single-bit of 256-bit batched range proof to 128
2024-01-18 14:37:04 +09:00
Justin Starry 747df9c105
Fix versioned message json deserialization (#34808) 2024-01-18 10:31:05 +08:00
Trent Nelson 6dbcdc063f
sdk: add bounds check when instantiating `Keypair` from byte array (#34817) 2024-01-17 18:51:16 -07:00
Brooks 0e8f2de1da
deps: Upgrades h2 due to security advisory (#34816) 2024-01-17 17:10:13 -07:00
Brennan 8fe4f5d0b9
Shred Repair Request (#34771)
* shred repair admin rpc
2024-01-17 14:19:32 -08:00
behzad nouri 586c794c8a
adds get_proof_offset for Merkle shreds (#34798)
In preparation of adding chained Merkle shreds variant, the commit
reworks api for proof-offset within the shred binary.
2024-01-17 20:53:56 +00:00
Brooks d8788999a6
Removes unused snapshot errors (#34812) 2024-01-17 14:04:56 -05:00
dependabot[bot] 32f260b839
build(deps): bump bitflags from 2.4.1 to 2.4.2 (#34806)
* build(deps): bump bitflags from 2.4.1 to 2.4.2

Bumps [bitflags](https://github.com/bitflags/bitflags) from 2.4.1 to 2.4.2.
- [Release notes](https://github.com/bitflags/bitflags/releases)
- [Changelog](https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md)
- [Commits](https://github.com/bitflags/bitflags/compare/2.4.1...2.4.2)

---
updated-dependencies:
- dependency-name: bitflags
  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-17 21:37:31 +08:00
dependabot[bot] d025e71445
build(deps): bump enum-iterator from 1.4.1 to 1.5.0 (#34791)
* build(deps): bump enum-iterator from 1.4.1 to 1.5.0

Bumps [enum-iterator](https://github.com/stephaneyfx/enum-iterator) from 1.4.1 to 1.5.0.
- [Commits](https://github.com/stephaneyfx/enum-iterator/compare/1.4.1...1.5.0)

---
updated-dependencies:
- dependency-name: enum-iterator
  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-17 21:36:33 +08:00
drebaglioni 79b9999f08
Update SECURITY.md (#34800)
Added announcement of changes in bounty payouts AND added the high/low for each payout under the respective category
2024-01-16 21:07:44 -07:00
Pankaj Garg 9edf65b877
Do not reserve QUIC stream capacity for unstaked client on forward port (#34779) 2024-01-16 16:35:29 -08:00
Yueh-Hsuan Chiang 3fa44e6fbe
[TieredStorage] Include executable field into AccountMetaFlags (#34724)
#### Problem
Before we have fully switched to the new way to determine whether
an account is executable, we still need a bit for th executable flag at
this moment in the TieredStorage as well as for backward compatibility
in case we want to revert it back.

#### Summary of Changes
This PR adds the executable flag into AccountMetaFlags.

#### Test Plan
Updated existing tests for AccountMetaFlags to cover executable flag.
2024-01-16 11:25:57 -08:00
Yihau Chen 0e90e985dd
ci: use openssl 3.1.1 for Windows build (#34795) 2024-01-16 17:11:19 +00:00
HaoranYi 258c920cf9
fix buffer size for updateable program buffer rent exempt fee calculation (#34781)
fix buffer size for updateable program buffer rent exempt fee
calculation

Co-authored-by: HaoranYi <haoran.yi@solana.com>
2024-01-16 09:04:56 -06:00
dependabot[bot] 711215f832
build(deps): bump smallvec from 1.11.2 to 1.12.0 (#34784)
* build(deps): bump smallvec from 1.11.2 to 1.12.0

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

---
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-16 14:09:05 +08:00
dependabot[bot] 256179a0b1
build(deps): bump base64 from 0.21.6 to 0.21.7 (#34782)
* build(deps): bump base64 from 0.21.6 to 0.21.7

Bumps [base64](https://github.com/marshallpierce/rust-base64) from 0.21.6 to 0.21.7.
- [Changelog](https://github.com/marshallpierce/rust-base64/blob/master/RELEASE-NOTES.md)
- [Commits](https://github.com/marshallpierce/rust-base64/compare/v0.21.6...v0.21.7)

---
updated-dependencies:
- dependency-name: base64
  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-16 14:08:37 +08:00
Tao Zhu d0b793a6fd
remove old comment (#34775) 2024-01-15 16:39:10 -06:00
HaoranYi 8869d0c8a0
Upgrade sbf tests to use bpf loader v3 (#34691)
* update sbf test to use bpf_loader v2

* update test_program_sbf_invoke_sanity test

* update test bpf program owner

* update test_program_sbf_invoke_upgradeable_via_cpi

* update test_program_sbf_disguised_as_sbf_loader

* update test_program_reads_from_program_account

* update test_program_sbf_program_id_spoofing

* update test_program_sbf_caller_has_access_to_cpi_program

* update 3 more tests

* fix program buffer size in minimul for rent exempt calculation

* more test updates

* more update

* more test updates

* comments

* undo c format

* typo

* add sol_alloc_free not deployable and deployable tests

* comments

* review feedback - move buffer_keypair and program_keypair inside callee
fn.

* more refactor

* delete sof_alloc_free_syscall enabled tests

* revert lamport change

---------

Co-authored-by: HaoranYi <haoran.yi@solana.com>
2024-01-14 18:20:01 -06:00
Pankaj Garg f92275bcaa
Fix determination of staked QUIC connections (#34760)
* Fix determination of staked QUIC connections

* address review comments

* review comments

* treat connections with zero stake as unstaked
2024-01-13 18:38:31 -08:00
samkim-crypto 9468996c99
[zk-token-proof] Increase compute budget for zk-token-proof tests (#34777)
increase compute budget for zk-token-proof tests
2024-01-14 08:43:12 +09:00
kirill lykov 5a1a697620
use staked connection for bench-tps in net scripts (#34767)
* add client-node-id to use staked connection

* Add flag to use unstaked connection for bench-tps

* Add bind-address for multinode

* always specify url for bench-tps
2024-01-13 18:50:27 +01:00
Andrew Fitzgerald 257ba2f0b1
Add benchmark for execute_batch (#34717) 2024-01-13 09:09:04 -08:00
Tao Zhu 613f0ff226
removed obsolete field from cost_tracker (#34762) 2024-01-12 17:54:02 -06:00
samkim-crypto b222fdf3d7
[zk-token-proof] Add functionality to read proof from accounts instead of instruction data (#34750)
* add functionality to read proof from accounts instead of instruction data

* update add tests

* clippy

* clarify instruction data discriminator

* avoid cloning entire proof data

* Update programs/zk-token-proof/src/lib.rs

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

* update `PROOF_OFFSET_LENGTH` to `INSTRUCTION_DATA_LENGTH_WITH_PROOF_ACCOUNT`

* update instruction docs

* add feature gate

* Update sdk/src/feature_set.rs

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

* update feature name `enable_zk_from_account` to `enable_zk_proof_from_account`

* Apply suggestions from code review

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

* clarify the instruction data length more precisely

---------

Co-authored-by: Jon C <me@jonc.dev>
2024-01-13 08:15:44 +09:00
Tao Zhu 51eaa2b9cc
cleanup feature code after activation (#34695)
cleanup feature checking code
2024-01-12 14:28:50 -06:00
Andrew Fitzgerald beef8476f8
TransactionScheduler: Add funded check before graph insertion (#34699) 2024-01-12 11:54:04 -08:00
Andrew Fitzgerald 98a2873517
consumer bench same number of txs per iteration (#34752) 2024-01-12 08:24:45 -08:00
Andrew Fitzgerald be5337a839
earlier fee payer validation (#34666) 2024-01-12 08:22:39 -08:00
samkim-crypto bc136423b4
[zk-token-proof] include `VerifyBatchRangeProofU256` in the `enable_zk_transfer_with_fee` feature gate (#34747)
include `VerifyBatchRangeProofU256` in the `enable_zk_transfer_with_fee` feature
2024-01-12 21:58:33 +09:00
Tyera 4385ed11b1
Populate partitioned-rewards PDA during calculation (#34624)
* Add epoch_rewards_partition_data module

* Rename variable

* Pass hasher's parent_blockhash up to begin_partitioned_rewards

* Populate epoch rewards partition data account in begin_partitioned_rewards

* Fix method name
2024-01-11 23:15:55 -07:00
Pankaj Garg 22fcffeea8
Move EMA and stream throttling code to a new file (#34759) 2024-01-11 16:54:54 -08:00