Commit Graph

24488 Commits

Author SHA1 Message Date
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
steviez a203f1489e
ledger-tool: Condense ProcessOptions parsing logic (#34694)
The code to parse process options was repeated in several (8) commands
that replay block processing. So, move the argument parsing into a
common helper that can be used by all of those commands.
2024-01-11 13:24:21 -06:00
Tyera 8e2943604b
Use parent blockhash to seed EpochRewardsHasher (#34744)
* Use parent blockhash to seed rewards-partition hasher

* Make blockhash word more consistent
2024-01-11 11:21:11 -07:00
Pankaj Garg 904700cc56
Use EMA to compute QUIC streamer load for staked connections (#34586)
* Use EMA to compute QUIC streamer load for staked connections

* change min load to 25% of max load

* reduce max PPS from 500K to 250K

* update ema_function to account for missing intervals

* replace f64 math with u128

* track streams across all connections for a peer

* u128  -> u64

* replace ' as ' type conversion to from and try_from

* add counter for u64 overflow

* reset recent stream load on ema interval

* do not use same counter for unstaked connections from a peer IP
2024-01-11 10:05:38 -08:00
Yihau Chen e31a45ad0c
ci: use larger runner for macos stable clippy (#34745) 2024-01-11 23:51:57 +08:00
Tyera 166be2995e
Bigtable: update google proto files and allow configuration of max_message_size (#34740)
* Update proto files with tonic-build v0.9.2

* Manually ignore invalid doc-tests

* Add new ReadRowsRequest fields

* Add LedgerStorageConfig::max_message_size and default value

* Add BigtableConnection::max_message_size and use on client creation

* Add max_message_size to RpcBigtableConfig and make const pub

* Add solana-validator cli arg
2024-01-10 21:20:15 -07:00
dependabot[bot] 13b8d02170
build(deps): bump console from 0.15.7 to 0.15.8 (#34726)
* build(deps): bump console from 0.15.7 to 0.15.8

Bumps [console](https://github.com/console-rs/console) from 0.15.7 to 0.15.8.
- [Changelog](https://github.com/console-rs/console/blob/master/CHANGELOG.md)
- [Commits](https://github.com/console-rs/console/compare/0.15.7...0.15.8)

---
updated-dependencies:
- dependency-name: console
  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-11 12:17:34 +08:00
Ryo Onodera a1be1042a9
Make check{2,3} faster by enabling parallel rustc for dcou (#34739)
Try to make check3 faster
2024-01-11 13:16:47 +09:00
Brooks e9a6bb35e2
Removes remaining unused accounts data len bits (#34732) 2024-01-10 18:16:56 -05:00
steviez 7ee9d9a1f2
ledger-tool: Move blockstore commands to blockstore subcommand (#34597)
solana-ledger-tool is a bit of a kitchen sink and currently has
upwards of 30 commands at the top level of the CLI. UI aside, the
contents of ledger-tool/src/main.rs are somewhat cluttered.

To reduce clutter and introduce a more hierarchical structure, this
change introduces a new blockstore subcommand and moves all commands
that only touch the blockstore to a blockstore subcommand. For example,
  solana-ledger-tool slot X 
is now invoked like
  solana-ledger-tool blockstore slot X

However, given how long the tool has existed, support is retained for
calling these old commands without the extra blockstore command. But,
the commands are not listed in the help in order to steer new users to
use the newer calling structure.
2024-01-10 15:42:09 -06:00
Jon C 5cb30cf9cc
cli: Use program length for deployments instead of 2x length (#34730)
* cli: Deploy the appropriate length program

* Extend the extend-program test for new default

* Add CHANGELOG entry

* Update docs, and include `extend`

* Update CHANGELOG.md

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

---------

Co-authored-by: Tyera <teulberg@gmail.com>
2024-01-10 20:12:29 +00:00
Ashwin Sekar fb97e93fe3
fix duplicate confirmed rollup detection for descendants (#34014)
* fix duplicate confirmed rollup detection for descendants

* pr feedback: optimistic rename -> guard new enum
2024-01-10 15:10:30 -05:00
Brooks fb35552f5b
Removes AccountsDataMeter (#34727) 2024-01-10 15:07:14 -05:00
Lijun Wang 843854409e
update docs for tpu using Quic (#34721)
Update tpu doc on using QUIC about streams and throttling
2024-01-10 10:51:15 -08:00
Yihau Chen 74df203dd4
ci: cancel the previous build when a new commit lands (#34733) 2024-01-10 18:33:39 +00:00
Brooks dc5af2c615
Removes AccountsDataMeter from InvokeContext (#34698) 2024-01-10 12:36:29 -05:00
HaoranYi 61e42cb390
Fix program buffer account rent-exempt lamport calculation (#34722)
fix program buffer size in minimul for rent exempt calculation

Co-authored-by: HaoranYi <haoran.yi@solana.com>
2024-01-10 11:32:51 -06:00
Yihau Chen e3df207963
ci: use larger runner for macos nightly clippy (#34725)
* ci: using larger runner for macos nightly clippy

* update mergify rules
2024-01-11 01:26:20 +08:00
Andrew Fitzgerald ac04a758e1
Remove chain-joining thread-selection (#34554) 2024-01-10 09:10:12 -08:00
Tao Zhu 88f8d11da2
program-test consumes some units as native (#34714)
program-test consumes some units as native;
harden a unit test wrt if builtin consumes units;
2024-01-10 09:05:30 -06:00
Illia Bobyr c5d51acda8
GitHub workflows: Disable cron schedule for forks (#34703)
Forks will run all the cron schedules.  And I do not think they benefit
from those.  For the downstream project checks, these runs are actually
very expensive - about an hour of run time per execution.  Easily
draining free account limits.
2024-01-09 16:54:31 -08:00
Justin Starry 5f74fc4f16
Update genesis processing to have a fallback collector id for tests (#34135)
* Update genesis processing to have a fallback collector id for tests

* DCOU-ify the collector id for tests parameter (#1902)

* wrap test_collector_id in DCOU

* rename param to collector_id_for_tests

* fix program test

* fix dcou

---------

Co-authored-by: Brooks <brooks@prumo.org>
2024-01-10 08:34:41 +08:00
steviez 48391152ae
ledger-tool: Minor cleanup on accountsdb config argument parsing (#34671)
- Avoid repeated parsing + use of values_t_or_exit!()
- Move associated items closer to show grouping
2024-01-09 16:42:15 -06:00
Brooks 642a7e0acb
Moves where the TransactionExecutionDetails::accounts_data_len_delta is interpreted (#34692) 2024-01-09 17:39:42 -05:00
Brooks abe699b7b4
Adds newline to fastboot's CLI help (#34712) 2024-01-09 15:28:39 -05:00
Brooks 38494e5956
Removes unused Bank::accounts_data_size_limit() (#34700) 2024-01-09 12:46:57 -05:00
Andrew Fitzgerald 95f888ab54
Unlock only if lock_result was Ok (#34652) 2024-01-09 08:19:25 -08:00
dependabot[bot] 74fde2dd64
build(deps): bump crossbeam-channel from 0.5.10 to 0.5.11 (#34708)
* build(deps): bump crossbeam-channel from 0.5.10 to 0.5.11

Bumps [crossbeam-channel](https://github.com/crossbeam-rs/crossbeam) from 0.5.10 to 0.5.11.
- [Release notes](https://github.com/crossbeam-rs/crossbeam/releases)
- [Changelog](https://github.com/crossbeam-rs/crossbeam/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crossbeam-rs/crossbeam/compare/crossbeam-channel-0.5.10...crossbeam-channel-0.5.11)

---
updated-dependencies:
- dependency-name: crossbeam-channel
  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-09 22:09:11 +08:00
dependabot[bot] 20e3e0c5b7
build(deps): bump base64 from 0.21.5 to 0.21.6 (#34709)
* build(deps): bump base64 from 0.21.5 to 0.21.6

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

---
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-09 22:08:10 +08:00
Brooks 39976ccb0b
Upgrades Rust nightly to 2024-01-05 (#34673) 2024-01-09 09:07:29 -05:00
Alessandro Decina 896a531931
programs/sbf: "fix" invalid_reference_casting lint (#34706) 2024-01-09 23:08:15 +11:00
Alessandro Decina a78b5203cb
git: ignore all `target/` directories (#34705)
git: ignore all target directories
2024-01-09 12:30:11 +01:00
Jon C e681d8bf61
security-policy: Refer to SPL for on-chain programs (#34697)
* security-policy: Refer to SPL for on-chain programs

* Add SPL as a bullet point instead

* Remove reference to token

* Add another bit about SPL at the top
2024-01-09 12:26:11 +01:00
dependabot[bot] 5c2d7b6b8a
build(deps): bump libc from 0.2.151 to 0.2.152 (#34682)
* build(deps): bump libc from 0.2.151 to 0.2.152

Bumps [libc](https://github.com/rust-lang/libc) from 0.2.151 to 0.2.152.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.151...0.2.152)

---
updated-dependencies:
- dependency-name: libc
  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-09 12:34:56 +08:00
Tao Zhu a1d300326d
add max cu-limit to test transactions (#34702) 2024-01-08 20:55:16 -06:00
Brooks d3690ddfc3
Removes unnecessary feature activation when testing accounts data size (#34701) 2024-01-08 19:21:02 -05:00
Brooks 40e410341a
Removes cap-accounts-data-len bits when constructing a new Bank (#34688) 2024-01-08 17:24:27 -05:00
Yueh-Hsuan Chiang 2082f8b3ca
[TieredStorage] HotStorageWriter::new() (#34659)
#### Problem
The implementation of HotAccountWriter is missing.

#### Summary of Changes
This PR kicks off the implementation of HotStorageWriter by
adding HotStorageWriter::new().

#### Test Plan
Add a new unit-test that verifies the correctness of HotStorageWriter
writing zero accounts using HotStorageReader.
2024-01-08 14:14:30 -08:00
Yueh-Hsuan Chiang 3a2f1320c5
[TieredStorage] Rename AddressAndBlockOffsetOnly to AddressesThenOffsets (#34658)
#### Problem
In the previous refactoring, IndexBlockFormat::AddressAndBlockOffsetOnly
can now work independently with the AccountMetaFormat.  As a result,
the naming of this format should be updated to reflect this.

#### Summary of Changes
As the format first persists the list of addresses followed by the list of offsets,
this PR renames AddressAndBlockOffsetOnly to AddressesThenOffsets.
2024-01-08 13:10:37 -08:00
dependabot[bot] 30fa449a33
build(deps): bump serde from 1.0.194 to 1.0.195 (#34683)
* build(deps): bump serde from 1.0.194 to 1.0.195

Bumps [serde](https://github.com/serde-rs/serde) from 1.0.194 to 1.0.195.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.194...v1.0.195)

---
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>
2024-01-08 21:25:08 +08:00
dependabot[bot] 6ec21084f6
build(deps): bump proc-macro2 from 1.0.75 to 1.0.76 (#34684)
* build(deps): bump proc-macro2 from 1.0.75 to 1.0.76

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

---
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-08 21:24:47 +08:00