Improve file upload mechanism to avoid memory leaks

Description

The current implementation of RestVerticle inside of RMB contains the method
private void handleInputStreamUpload(...)

This part of the code is Buffering all body content that was sent chunked into the UnpoolHeapBuffer. So if we try to upload 1Gb file it needs 1Gb of the java heap memory.

There are two possible solutions:
Store uploaded file into a temp file and create a FileOutputStream and push it inside of the API method or just push HttpServerRequest inside API method and read file chunks manually.

Environment

None

Potential Workaround

None

Checklist

hide

TestRail: Results

Activity

Show:

Adam DickmeissJanuary 29, 2019 at 2:20 PM

Believe the release of RMB 23.5.0 with updated documentation will do for this.

Done

Details

Assignee

Reporter

Priority

Story Points

Sprint

Development Team

Core: Platform

Fix versions

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs

Created January 11, 2019 at 2:19 PM
Updated February 4, 2019 at 10:21 AM
Resolved January 29, 2019 at 2:20 PM
TestRail: Cases
TestRail: Runs