Service Bus 12.2.1: Unexpected heap usage when posting large binary files with Chunk Streaming Mode
(Doc ID 2154069.1)
Last updated on JANUARY 14, 2019
Applies to:Oracle Service Bus - Version 126.96.36.199.0 to 188.8.131.52.0
Information in this document applies to any platform.
The issue occurs when writing a large amount of binary data to the service with a POST method through Service Bus 12.2.1.
The binary data is streamed from the client through all OSB components to the servlet, but assigning the complete payload additionally to an object of type:
This greatly increases the heap usage to a potentially problematic level.
When reading a large amount of binary data from the service with a GET method, the binary data is streamed from the servlet through all OSB components to the client without using any additional heap memory.
The POST method is expected to work in a similar fashion.
The following stack trace shows ReusableDataSourceMemoryBuffer.readUntil() is invoked to buffer the outbound request message in memory which is unnecessary in the pass-through case:
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!
In this Document