Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use parameter struct for configuring QUIC streamer #3328

Merged
merged 1 commit into from
Oct 30, 2024

Conversation

sakridge
Copy link

Problem

Methods with too many complicated parameters and duplication of parameterizing the quic server.

Summary of Changes

Add a parameter struct to pass the QUIC server parameters.

Fixes #

@sakridge sakridge force-pushed the quic-params-structs branch 2 times, most recently from 9b462c8 to 451f64a Compare October 27, 2024 15:55
Copy link

@alessandrod alessandrod left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice thanks

@alessandrod alessandrod added the v2.1 Backport to v2.1 branch label Oct 30, 2024
@alessandrod alessandrod merged commit 6319db8 into anza-xyz:master Oct 30, 2024
50 checks passed
Copy link

mergify bot commented Oct 30, 2024

Backports to the beta branch are to be avoided unless absolutely necessary for fixing bugs, security issues, and perf regressions. Changes intended for backport should be structured such that a minimum effective diff can be committed separately from any refactoring, plumbing, cleanup, etc that are not strictly necessary to achieve the goal. Any of the latter should go only into master and ride the normal stabilization schedule. Exceptions include CI/metrics changes, CLI improvements and documentation updates on a case by case basis.

@alessandrod
Copy link

@sakridge I merged this since I'm doing changes that would conflict otherwise

mergify bot pushed a commit that referenced this pull request Oct 30, 2024
refactor: Use parameter struct for configuring QUIC streamer
(cherry picked from commit 6319db8)
@sakridge sakridge deleted the quic-params-structs branch October 30, 2024 14:33
@sakridge
Copy link
Author

@sakridge I merged this since I'm doing changes that would conflict otherwise

great, thanks

@t-nelson
Copy link

these change break a public interface with external consumers. we should not be changing the function signatures like this

prefer something like spawn_server_with_config that spawn_server calls after constructing the config. then we deprecate spawn_server

recommend revert and resubmit

@lijunwangs
Copy link

these change break a public interface with external consumers. we should not be changing the function signatures like this

prefer something like spawn_server_with_config that spawn_server calls after constructing the config. then we deprecate spawn_server

recommend revert and resubmit

hmm. yes, the jito-relayers were using the interfaces.

@sakridge
Copy link
Author

sakridge commented Oct 30, 2024

these change break a public interface with external consumers. we should not be changing the function signatures like this

prefer something like spawn_server_with_config that spawn_server calls after constructing the config. then we deprecate spawn_server

recommend revert and resubmit

When did we ever bless these as consumable? Not every function we make public in a crate is intended to be consumed, and if so it's at your own risk of it being changed.

@lijunwangs
Copy link

lijunwangs commented Oct 30, 2024

https://crates.io/crates/solana-streamer/reverse_dependencies?page=3 -- only jito relayers are using it directly. I guess it won't be too difficult to correct their code.

@alessandrod
Copy link

When did we ever bless these as consumable? Not every function we make public in a crate is intended to be consumed, and if so it's at your own risk of it being changed.

Yeah I think I raised this a couple of times on discord, but by now I'm running with the assumption that all these crates and symbols are not really API unless they're re-exported by on chain stuff (which we should never break). Like... in this quic module we're even exporting rt which is clearly an internal util.

ray-kast pushed a commit to abklabs/agave that referenced this pull request Nov 27, 2024
refactor: Use parameter struct for configuring QUIC streamer
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
v2.1 Backport to v2.1 branch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants