Skip to content

Multipart decoder retention on abort/reset/exception paths #6014

@shblue21

Description

@shblue21

Version

5.0.x

Context

While looking into multipart abort/reset handling, I noticed that multipart decoders can remain retained on exception/reset/close paths instead of being cleaned up like on normal completion.

I reproduced this by sending incomplete multipart/form-data requests and closing the connection before the final boundary. In my PoC, terminal decoders remained retained for more than 30 seconds after traffic stopped.

The previous discussion and PoC details are here:

Steps to reproduce

  1. Run a simple Vert.x HTTP server with a POST /upload endpoint that calls setExpectMultipart(true).
  2. Send many incomplete multipart/form-data requests and close the connection before the final boundary.
  3. Observe that decoder instances can remain retained on terminal paths for an extended time.

Do you have a reproducer?

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions