ryleung-solana
842fa993c8
Quic fix calculation of staked number of concurrent streams ( #28705 )
...
* Fix calculation of staked number of concurrent streams
2022-11-03 20:45:44 +08:00
Lijun Wang
f156bc12ca
Enforce stream receive timeout ( #28513 )
...
In the quic server handle_connection, when we timed out in receiving the chunks, we loop forever to wait for the chunk. If the client never provide another chunk, the server can hopelessly wait for that chunk and wasting server resources. Instead WAIT_FOR_CHUNK_TIMEOUT_MS is introduced to bound this to 10 seconds at maximum. The stream will be dropped if it times out.
2022-11-02 10:09:32 -07:00
Lijun Wang
f10ef763dc
Time out async sends to avoid slackers stuck in the queue for too long ( #28545 )
...
* Time out async sends to avoid slackers stuck in the queue for too long
* Fixed a clippy error
* Added stats for timeout counts
* Link with stats correctly
2022-10-31 13:46:45 -07:00
Lijun Wang
03f4204297
Check the boundary condition correctly.
2022-10-19 16:46:36 -07:00
Lijun Wang
ab85ab7a5b
handle semaphore locally without impacting the interface
2022-10-19 16:46:36 -07:00
Lijun Wang
a6884d682c
Restore the dev-dependency
2022-10-19 16:46:36 -07:00
Lijun Wang
a378284621
removed crossbeam
2022-10-19 16:46:36 -07:00
Lijun Wang
6a7f78028d
Removed unnecessary dependency
2022-10-19 16:46:36 -07:00
Lijun Wang
f829f3583e
FMT code
2022-10-19 16:46:36 -07:00
Lijun Wang
062c7f828c
Fixed tests
2022-10-19 16:46:36 -07:00
Lijun Wang
5fbbad991e
FMT code
2022-10-19 16:46:36 -07:00
Lijun Wang
8a269246ac
Limit the number async tasks spawned to the runtime to avoid congestions.
2022-10-19 16:46:36 -07:00
Lijun Wang
a8d5731e5b
Give the quic client and server thread the names
2022-10-06 16:55:21 -07:00
Tyera Eulberg
10db560278
Add TpuConnectionCache and begin disentangling quic and udp ( #28080 )
...
* Add new empty crates and tpu_connection_cache module
* Add BaseTpuConnection trait and impl for udp and quic
* Add ConnectionPool trait and impl for udp and quic (quic-client doesn't build)
* Add a couple quic-specific apis to QuicConfig (from ConnectionCache)
* Re-export quic- and udp-client modules to prep for move
* Move ConnectionCacheStats to new module
* Move consts
* Duplicate ConnectionCache into tpu_connection_cache (doesn't build)
* Move methods to QuicConfig and remove unneeded methods (doesn't build)
* Genericize new ConnectionCache
* Rename new struct
* Copy unit tests (tests don't build)
* Fixup unit tests
* Move quic-specific test to quic-client crate
* DRY by using ConnectionPool method
* Prevent evicting pool about to be used
2022-09-30 19:51:50 -06:00
behzad nouri
9ee53e594d
patches clippy errors from new rust nightly release ( #28028 )
2022-09-23 20:57:27 +00:00
dependabot[bot]
e1a49f7766
chore: bump indicatif from 0.17.0 to 0.17.1 ( #27968 )
...
* chore: bump indicatif from 0.17.0 to 0.17.1
Bumps [indicatif](https://github.com/console-rs/indicatif ) from 0.17.0 to 0.17.1.
- [Release notes](https://github.com/console-rs/indicatif/releases )
- [Commits](https://github.com/console-rs/indicatif/compare/0.17.0...0.17.1 )
---
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>
2022-09-21 23:32:11 +00:00
dependabot[bot]
c4fa849844
chore: bump itertools from 0.10.3 to 0.10.5 ( #27962 )
...
* chore: bump itertools from 0.10.3 to 0.10.5
Bumps [itertools](https://github.com/rust-itertools/itertools ) from 0.10.3 to 0.10.5.
- [Release notes](https://github.com/rust-itertools/itertools/releases )
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-itertools/itertools/commits )
---
updated-dependencies:
- dependency-name: itertools
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>
2022-09-21 15:28:49 -06:00
Will Hickey
c0e4379f43
Whickey/version v1.15 ( #27739 )
...
* Bump version to v1.13.0
* Bump version to v1.14.0
* Bump version to v1.15.0
2022-09-13 09:06:15 -05:00
Lijun Wang
7f223dc582
Added option to turn on UDP for TPU transaction and make UDP based TPU off by default ( #27462 )
...
--tpu-enable-udp is introduced. And when this is on, the transaction receive and transaction forward is enabled using udp.
Except for a few tests which was hard-coded sending transactions using udp, most tests are being done with udp based tpu disabled.
2022-09-07 13:19:14 -07:00
Pankaj Garg
49df1c47e8
Use batch send in bench-tps to send transactions ( #27527 )
...
* Use batch send in bench-tps to send transactions
* serialize using par iter
2022-09-01 17:32:23 +00:00
Tyera Eulberg
7bd08ad3ae
Featurize spinner in rpc-client and tpu-client ( #27381 )
...
* Add spinner features to rpc-client and tpu-client, and disable where unneeded
* Add doc comment
2022-08-30 09:56:56 -06:00
ryleung-solana
b7b03cbb05
Fix quic staked chunking ( #27402 )
2022-08-25 21:10:28 +00:00
Tyera Eulberg
c24eaa36f8
Split up solana-client ( #27246 )
...
* Move thin-client to new crate
* Move tpu client and varieties to new crate
* Move pubsub-client to new crate
* Move rpc-client to new crate
* Add client-common crate to avoid circular dependencies
* Move rpc_cache and make less pub
* Remove unused unpub modules
* Add nonce-client
* Remove unused dependencies
* Fix rpc_client docs
* Move spinner to calling clients
* Rename client-common to rpc-client-api
* Remove unnecessary rpc_ prefix
* Remove unused ClientErrorKind variant
* Remove unnecessary Client prefix
* Move mod declarations into lib.rs and remove unnecessary files
* Rename nonce-client and remove redundant module name
* Restore mock_sender_for_cli in solana-client
2022-08-24 05:34:35 +00:00