proxyd: Fix concurrent WS write panic#2711
Merged
mergify[bot] merged 1 commit intoethereum-optimism:developfrom Jun 8, 2022
Merged
proxyd: Fix concurrent WS write panic#2711mergify[bot] merged 1 commit intoethereum-optimism:developfrom
mergify[bot] merged 1 commit intoethereum-optimism:developfrom
Conversation
🦋 Changeset detectedLatest commit: 37ebb69 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Contributor
|
This PR changes implementation code, but doesn't include a changeset. Did you forget to add one? |
e6e7c22 to
62b4e9f
Compare
Inphi
reviewed
Jun 8, 2022
Contributor
Inphi
left a comment
There was a problem hiding this comment.
the fix looks good. i left a couple comments on unit testing.
62b4e9f to
1c385a8
Compare
Inphi
approved these changes
Jun 8, 2022
smartcontracts
approved these changes
Jun 8, 2022
1d4b20f to
d6a6c8e
Compare
Fixes a panic in the websocket proxyd logic. Normally, the `clientPump` and `backendPump` methods in `WSProxier` send data in one direction. However, when the client sends an invalid RPC, the `clientPump` will send a response _directly to the client_ in order to avoid unnecessary roundtrips to the backend. This could be interleaved with concurrent writes to the client's WS in `backendPump`, and would cause a panic in the WS library. To test this, this PR includes a dedicated integration test that reliably triggers the issue. In addition, this PR adds additional testing for WS functionality.
d6a6c8e to
37ebb69
Compare
Contributor
|
This PR has been added to the merge queue, and will be merged soon. |
Contributor
|
This PR is next in line to be merged, and will be merged as soon as checks pass. |
theochap
pushed a commit
that referenced
this pull request
Dec 10, 2025
## Overview Adds a CI job to run `kona-client` on `cannon64`. Also upgrades the dep of `nybbles`; There was a bug that I introduced recently for big-endian targets, fix included in alloy-rs/nybbles#35. --------- Co-authored-by: refcell <abigger87@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes a panic in the websocket proxyd logic. Normally, the
clientPumpandbackendPumpmethods inWSProxiersend data in one direction. However, when the client sends an invalid RPC, theclientPumpwill send a response directly to the client in order to avoid unnecessary roundtrips to the backend. This could be interleaved with concurrent writes to the client's WS inbackendPump, and would cause a panic in the WS library.To test this, this PR includes a dedicated integration test that reliably triggers the issue. In addition, this PR adds additional testing for WS functionality.