Skip to content

Review DataBuffer handling code for proper release in case of error or cancellation [SPR-17408] #21941

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

Closed
spring-projects-issues opened this issue Oct 18, 2018 · 1 comment
Assignees
Labels
in: web Issues in web modules (web, webmvc, webflux, websocket) type: enhancement A general enhancement
Milestone

Comments

@spring-projects-issues
Copy link
Collaborator

spring-projects-issues commented Oct 18, 2018

Rossen Stoyanchev opened SPR-17408 and commented

Recent, related efforts on this topic include #21563, #21779, and #21322, but those changes needs some refinement plus a comprehensive review of all DataBuffer handling code with an eye towards error and cancellation signal cases.

This is an umbrella ticket with sub-tasks:

  1. Review DataBufferUtils [SPR-17411] #21944 DataBufferUtils.
  2. Review DataBuffer handling in Servlet and Undertow server adapters [SPR-17410] #21943 ReactorServerHttpRequest to drop the onDiscard hook.
  3. Review DataBuffer handling in Servlet and Undertow server adapters [SPR-17410] #21943 Reactive Streams bridge in spring-web (Servlet, Undertow, HTTP and WebSocket).
  4. Review decoders and message readers [SPR-17418] #21951 Decoders and message readers.
  5. Review encoders and message writers [SPR-17419] #21952 Encoders and message writers.
  6. Review Jetty ClientHttpConnector code for buffer handling on error/cancellation [SPR-17424] #21957 Jetty ClientHttpConnector.
  7. Improve guidance on working with and releasing DataBuffer's [SPR-17409] #21942 Update docs for releasing data buffers on error/cancellation.

For 4) and 5) above, perhaps we should consider inserting a common onDiscard at the point of using codecs to ensure consistent behavior? Of course individual codecs still need to be able to do the right thing on their own, but perhaps a hint could be passed in to indicate when onDiscard is handled externally..

 


Affects: 5.0.10, 5.1.1

Sub-tasks:

Issue Links:

Referenced from: commits 149d416, 488a1d4

@spring-projects-issues
Copy link
Collaborator Author

Rossen Stoyanchev commented

Commit 857b60 from earlier today before ticket was created.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in: web Issues in web modules (web, webmvc, webflux, websocket) type: enhancement A general enhancement
Projects
None yet
Development

No branches or pull requests

2 participants