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

Handle exceptions thrown by HTTP header validation #107355

Conversation

DaveCTurner
Copy link
Contributor

Today if the HTTP header validation throws an exception (rather than
calling listener.onFailure()) then we treat this as a server-side
error, record it in the logs, and close the connection abruptly without
sending a response. In practice such an exception is more likely a
client-side error, so with this commit we catch it and marshal it back
to the client instead.

Closes #107338

Today if the HTTP header validation throws an exception (rather than
calling `listener.onFailure()`) then we treat this as a server-side
error, record it in the logs, and close the connection abruptly without
sending a response. In practice such an exception is more likely a
client-side error, so with this commit we catch it and marshal it back
to the client instead.

Closes elastic#107338
@DaveCTurner DaveCTurner added >bug :Distributed/Network Http and internode communication implementations auto-backport-and-merge Automatically create backport pull requests and merge when ready v8.14.0 v8.13.3 labels Apr 11, 2024
@elasticsearchmachine
Copy link
Collaborator

Pinging @elastic/es-distributed (Team:Distributed)

@elasticsearchmachine elasticsearchmachine added the Team:Distributed Meta label for distributed team label Apr 11, 2024
@elasticsearchmachine
Copy link
Collaborator

Hi @DaveCTurner, I've created a changelog YAML for you.

Copy link
Member

@ywangd ywangd left a comment

Choose a reason for hiding this comment

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

LGTM

@DaveCTurner DaveCTurner added the auto-merge Automatically merge pull request when CI checks pass (NB doesn't wait for reviews!) label Apr 15, 2024
@elasticsearchmachine elasticsearchmachine merged commit faa7a3c into elastic:main Apr 15, 2024
14 checks passed
@DaveCTurner DaveCTurner deleted the 2024/04/11/Netty4HttpHeaderValidator-validation-exception branch April 15, 2024 09:14
@elasticsearchmachine
Copy link
Collaborator

💚 Backport successful

Status Branch Result
8.13

DaveCTurner added a commit to DaveCTurner/elasticsearch that referenced this pull request Apr 15, 2024
Today if the HTTP header validation throws an exception (rather than
calling `listener.onFailure()`) then we treat this as a server-side
error, record it in the logs, and close the connection abruptly without
sending a response. In practice such an exception is more likely a
client-side error, so with this commit we catch it and marshal it back
to the client instead.

Closes elastic#107338
elasticsearchmachine pushed a commit that referenced this pull request Apr 15, 2024
Today if the HTTP header validation throws an exception (rather than
calling `listener.onFailure()`) then we treat this as a server-side
error, record it in the logs, and close the connection abruptly without
sending a response. In practice such an exception is more likely a
client-side error, so with this commit we catch it and marshal it back
to the client instead.

Closes #107338
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
auto-backport-and-merge Automatically create backport pull requests and merge when ready auto-merge Automatically merge pull request when CI checks pass (NB doesn't wait for reviews!) >bug :Distributed/Network Http and internode communication implementations Team:Distributed Meta label for distributed team v8.13.3 v8.14.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Requests to Elasticsearch with two traceparent headers should yield 400 Bad Request
3 participants