Commit Graph

18931 Commits

Author SHA1 Message Date
behzad nouri 9b13b1b712
adds const_assert_eq for shred constants (#25288)
Adding const_assert_eq:
* Documents explicitly what the constants are equal to.
* Prevents introducing bugs by silently changing the constants as the
  code is updated.
2022-05-17 22:44:35 +00:00
steviez 3d8e5e91ed
Fix ledger-tool from erroring with unspecified archive_format (#25298)
value_t_or_exit()! will error if the user doesn't specify a value at
runtime, use value_of() instead which will give either the default value
or whatever the user specified.
2022-05-17 15:46:31 -06:00
Jon Cinque 0820065c98
rpc: Support token-2022 in token-specific calls (#25150)
* rpc: Support token-2022 in token-specific calls

* Address feedback
2022-05-17 21:02:43 +02:00
Brooks Prumo dff089e0dd
Fix RpcResponseContext in rpc_client test (#25296) 2022-05-17 12:44:43 -05:00
Brooks Prumo e608580040
Add get_stake_minimum_delegation() to rpc_client (#25200) 2022-05-17 11:46:34 -05:00
scriptrunner2049 4b43308f00
Update SECURITY.md 2022-05-18 00:23:38 +08:00
scriptrunner2049 dd22b0cb84
Update SECURITY.md 2022-05-18 00:23:21 +08:00
HaoranYi 85a2e599bb
revert memory map for reading snapshot (#25259) 2022-05-17 09:32:18 -05:00
scriptrunner2049 266c3059ca
Update SECURITY.md 2022-05-17 16:59:28 +08:00
scriptrunner2049 5503e1486d
Update SECURITY.md 2022-05-17 16:58:48 +08:00
Justin Starry 4690956849
RPC: Add minContextSlot param to ensure consistent responses (#25161)
* RPC: Add minContextSlot param to ensure consistent responses

* revert changes to deprecated endpoints

* update docs
2022-05-17 14:46:02 +08:00
Justin Starry 4e352bffaf
cli: Fix display of staked validators (#25216) 2022-05-17 14:32:52 +08:00
buffalu 6bcadc755e
Speedup bigtable block upload by factor of 8-10x (#24534)
Added multiple blockstore read threads.
Run the bigtable upload in tokio::spawn context.
Run bigtable tx and tx-by-addr uploads in tokio::spawn context.
2022-05-17 00:21:05 -06:00
Michael Vines e718c80a21 Avoid multiple base58 encodes for all votes when no `voteSubscribe` is disabled 2022-05-16 19:56:48 -07:00
Jon Cinque 48982778ef
ci: Remove downstream anchor projects (#25266) 2022-05-17 02:27:38 +02:00
ahlee42 9c754d6c95
Fixed typo in Docs ("transacton" -> "transaction") (#25260)
Co-authored-by: Arnold Lee <103599294+TamashiDev@users.noreply.github.com>
2022-05-16 14:48:59 -07:00
Brooks Prumo 18c45a610c
clippy: Use `unsigned_abs()` (#25250) 2022-05-16 16:08:42 -05:00
Jeff Washington (jwash) 2cf7c73ced
cleanup types in tests (#25254) 2022-05-16 15:54:40 -05:00
sakridge a63d99fd11
Use write! to fix clippy and save heap allocation (#25220) 2022-05-16 22:39:33 +02:00
Jack May 21e066ef26
Merge pull request from GHSA-wxrh-ff9f-fc6w 2022-05-16 12:30:37 -07:00
Yueh-Hsuan Chiang 5625959f7e
(LedgerStore) Change perf_samples_counter from Arc<AtomicUsize> to AtomicUsize (#25043)
#### Problem
After #25042, each LedgerColumn has its own BlockstoreRocksDbWritePerfMetrics
and BlockstoreRocksDbReadPerfMetrics instances.  As it has total ownership,
its member field does not need to use Arc.

#### Summary of Changes
Change perf_samples_counter from Arc<AtomicUsize> to AtomicUsize
under BlockstoreRocksDbWritePerfMetrics and BlockstoreRocksDbReadPerfMetrics.
2022-05-16 11:31:07 -07:00
Lijun Wang 196de1c043
Refactor make_connection (#25225)
1. Move logics related to creating endpoint, creating new connection and retry 0rtt connections into a wrapper construct QuicNewConnection to put the logic together.
2. get_or_add_connection: logic is much simplified to allow manage the connection cache -- the QUIC connection is lazy constructed. get_or_add_connection should no longer be a global hotspot.
3.  Per connection stats update is moved out of get_or_add_connection to avoid bad connection impacting good connections.
2022-05-16 11:13:18 -07:00
HaoranYi 3e44046a73
Support lz4 for snapshot archives (#25089)
* add lz4

* add cargo package file

* fix tests

* use fast lz4 compression

* report snapshot archive format

* add test

* code review feedback

* add cargo.lock

* fix var name

* refactor archive format parsing and add default compress cli arg

* clippy

* add from_cli_arg test

* update cargo.lock

* add lz4 support for mmap

* cargo.lock

* clippy
2022-05-16 12:44:15 -05:00
Justin Starry f81c5df1f0
Include account index in rent paying account tx error (#25189) 2022-05-16 23:35:34 +08:00
HaoranYi 389d78e424
Don't use mmarinus package (#25177)
* Revert "Revert "Use memory map to speed up snapshot untar (#24889)" (#25174)"

This reverts commit fc793de2dd.

* not use mmarinus

* enable secondary build

* Revert "enable secondary build"

This reverts commit 5aa43a94bbad59497506f02235597e7adc0dc47b.

* macbuild

* Revert "macbuild"

This reverts commit 0da92945a40dc5431eff4bd91054b407e22418fb.
2022-05-16 08:49:17 -05:00
Justin Starry daac9399ed
docs: Remove redundant and incorrect tx priority details (#25239) 2022-05-16 04:41:51 +00:00
Tao Zhu b1b3702e6d
Prioritize transactions in banking stage by their compute unit price (#25178)
* - get prioritization fee from compute_budget instruction;
- update compute_budget::process_instruction function to take instruction iter to support sanitized versioned message;
- updated runtime.md

* update transaction fee calculation for prioritization fee rate as lamports per 10K CUs

* review changes

* fix test

* fix a bpf test

* fix bpf test

* patch feedback

* fix clippy

* fix bpf test

* feedback

* rename prioritization fee rate to compute unit price

* feedback

Co-authored-by: Justin Starry <justin@solana.com>
2022-05-16 12:06:33 +08:00
sakridge 52db2e19bc
Lower default batch size to 64 and add 2 banking threads (#25226) 2022-05-15 16:52:47 +02:00
Justin Starry 6c10515ccf
Revert "Serialize lamports per signature in snapshots (#25181)" (#25228)
This reverts commit 35d2a0fd69.
2022-05-15 12:04:17 +00:00
kirill lykov 82dd0eaf8b
Refactoring and extending functionality of DoS tool (#24412)
* move cli to separate file

* move rpc_client  creation to function

* move rpc mode handling to separate function

* Separated unique transaction workflow, added keypairs generation

* use faucet to fund kp, add new transaction types

* update Cargo.lock

* update documentation

* fix clippy errors

* introduce num_instructions

* add cli tests

* clippy updates

* update Cargo.lock

* add cli tests for mode rpc

* address PR comments

* refactor mode rpc case

* formatting changes

* run_dos_rpc_mode with generics

* replaced &Option with Option&

* simplified nodes discovery

* formatting changes

* reduced number of iterations for random test

* address PR comments
2022-05-15 11:41:13 +02:00
Steven Luscher 4ea39c1cd3
feat: thread new blockheight expiry strategy through `sendAndConfirmTransaction` (#25227)
* chore: extract expirable blockhash record into its own type

* fix: the local latest blockhash cache now fetches and stores lastValidBlockHeight

* fix: allow people to supply a confirmation strategy to sendAndConfirmRawTransaction

* test: upgrade RPC helpers to use blockheight confirmation method

* test: patch up tests to use blockheight based confirmation strategy

* fix: eliminate deprecated construction of Transaction inside simulateTransaction

* test: eliminate deprecated constructions of Transaction in tests
2022-05-14 21:54:12 -07:00
Lijun Wang abd4ef889e
Fixed a race condition where in multiple thread environment that wasteful (#25176)
Duplicate and useless connections are being created which overloads the server and cause unreliable
connections on the client side.
2022-05-14 15:02:13 -07:00
Ashwin Sekar 35d2a0fd69
Serialize lamports per signature in snapshots (#25181)
* Serialize lamports per signature

* pr comments
2022-05-14 10:57:51 -07:00
Ryo Onodera 592aa4c21b
Improve hard fork message with more detail (#25214) 2022-05-15 01:14:23 +09:00
sakridge 3d96a1ab76
Block packets in vote-only mode (#24906) 2022-05-14 17:53:37 +02:00
Steven Luscher d513407485
test: getEstimatedFee change runs only in live environment now (#25210)
Co-authored-by: Marc Jaramillo <mnj.webdeveloper@gmail.com>
2022-05-13 21:16:39 -07:00
Marc Jaramillo 375968da3b fix: transaction confirmation strategy: wait until the last valid blockheight passes (closes #24211)
Co-authored-by: Marc Jaramillo <mnj.webdeveloper@gmail.com>
Co-authored-by: Stella Wang <stella01wang@gmail.com>
2022-05-13 20:21:24 -07:00
Jeff Washington (jwash) 7826fef120
clippy (#25206) 2022-05-13 21:03:54 -05:00
Yueh-Hsuan Chiang aaf417998d
Add ledger-store label description to CONTRIBUTING.md. (#25130)
#### Summary of Changes
Add ledger-store label and its description to CONTRIBUTING.md.
The label should help us track issues / PR easier.
2022-05-13 16:23:00 -07:00
Jeff Washington (jwash) 9ccdc8a050
populate ancient append vec metrics (#25204)
* populate ancient append vec metrics

* count ancient storages while enumerating storages anyway.
2022-05-13 18:20:15 -05:00
Jeff Washington (jwash) d7dcb62fe1
ancient_append_vec refactoring (#25203) 2022-05-13 16:40:26 -05:00
Jeff Washington (jwash) cb037e49ea
is_candidate_for_shrink respects ancient append vecs (#25205) 2022-05-13 16:26:46 -05:00
Dmitri Makarov 3c70220142 Remove obsolete string C header input file
string.h doesn't contain any syscall declarations that need to be
processed by the gen-headers C header file generating utility.
2022-05-13 10:37:25 -07:00
apfitzge 5eeb07fead
coalesce purge stats and reclaim result (#25183) 2022-05-13 12:34:11 -05:00
Yihau Chen e493e0033a
chore: build windows artifacts on Github Actions (#25188)
* chore: always checkout repo from master

* chore: rename variable tag => commit

* chore: gh-release when tag is present

* chore: add release-artifacts-auto

* chore: skip build when channel is empty

* chore: use GITHUB_REF_NAME as CI_BRANCH
2022-05-13 17:10:03 +08:00
Steven Luscher e024806aa5
fix: mark the socket as closed when receiving a close/error message (#25180) 2022-05-13 02:07:13 -07:00
Justin Starry 5948b6c741
explorer: Display error details on tx page (#25186) 2022-05-13 07:55:38 +00:00
Tyera Eulberg bc005e3408
Add configurable limit to number of blocks to check before Bigtable upload (#24716)
* Add ConfirmedBlockUploadConfig, no behavior changes

* Add comment

* A little DRY cleanup

* Add configurable limit to number of blocks to check in Blockstore and Bigtable before uploading

* Limit blockstore and bigtable look-ahead

* Exit iterator early when reach ending_slot

* Use rooted_slot_iterator instead of slot_meta_iterator

* Only check blocks in the ledger
2022-05-13 07:34:02 +00:00
Pankaj Garg 71dd95e842
Tune banking_stage receive loop timing (#25172) 2022-05-13 03:42:08 +00:00
dependabot[bot] e4ac75af90
chore: bump ts-mocha from 9.0.2 to 10.0.0 in /web3.js (#25102)
Bumps [ts-mocha](https://github.com/piotrwitek/ts-mocha) from 9.0.2 to 10.0.0.
- [Release notes](https://github.com/piotrwitek/ts-mocha/releases)
- [Changelog](https://github.com/piotrwitek/ts-mocha/blob/master/CHANGELOG.md)
- [Commits](https://github.com/piotrwitek/ts-mocha/commits)

---
updated-dependencies:
- dependency-name: ts-mocha
  dependency-type: direct:development
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-13 10:53:07 +08:00