I am running into java memory issues with the current scenario:
We have a loop that loops over 25 attachment ids, each attachment is around 100MB. We have 3GB of memory allocated to the integration server itself.
When looping through the ids, we receive the InputStream from our application, pass it into the mimeStream with addBodyPart, and then send the request to an external site. Afterwards, we close the InputStream and then drop any variables that are no longer needed. Once we get to file #13 or so, we get a Java Heap Error because the Integration Server has ran out of memory. I’m guessing there is a memory leak somewhere with how we are dropping variables and such, but having a hard time tracking it down. When I did get the server to generate the heap stack so I could analyze it, it was failing on copying the ByteArrayOutputStream when the InputStream is added to the mimeStream with addBodyPart, but that is probably not the issue. The issue I believe is with the memory slowly being filled up as it loops until it runs out of memory, as I can send a single 200MB file just fine.
Any advice would definitely be appreciated, especially if anyone else has run into similar issues before with large file handling/streaming with mime parts.