He-Pin opened a new pull request, #1041:
URL: https://github.com/apache/pekko-http/pull/1041

   Motivation:
   Port the upstream Akka HTTP fix for recovering HTTP/2 handler failures into 
500 responses. The upstream commit is 
https://github.com/akka/akka-http/commit/02bb9872e1d391f53e21b663336e5052085a0b8c,
 which is now Apache licensed.
   
   Modification:
   - Wrap HTTP/2 request handlers so failed futures and synchronous NonFatal 
throws become `500 InternalServerError` responses.
   - Keep HTTP/1 fallback requests on the original handler so existing HTTP/1 
error classification is preserved.
   - Reject unknown HTTP/2 pseudo-headers during request parsing so protocol 
errors remain HTTP/2 protocol errors instead of being converted to 500 
responses.
   - Add HTTP/2 regression coverage for failed futures and synchronous handler 
throws.
   
   Result:
   HTTP/2 user handler failures now return 500 responses without breaking the 
connection, while malformed HTTP/2 pseudo-headers still produce protocol errors 
as required by h2spec.
   
   References:
   - Upstream: 
https://github.com/akka/akka-http/commit/02bb9872e1d391f53e21b663336e5052085a0b8c
   - Source range: https://github.com/akka/akka-http/compare/v10.2.6...v10.5.2
   
   Validation:
   - `git diff --check`
   - `sbt 'http-core / scalafmtCheck' 'http2-tests / scalafmtCheck' 
'http2-tests / Test / testOnly 
org.apache.pekko.http.impl.engine.http2.Http2ClientServerSpec 
org.apache.pekko.http.impl.engine.http2.H2SpecIntegrationSpec'`
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to