You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@karaf.apache.org by "Jean-Baptiste Onofré (Jira)" <ji...@apache.org> on 2020/09/02 11:47:00 UTC
[jira] [Updated] (KARAF-6837) Place a bound on the data read in the
rest servlet + socket collectors
[ https://issues.apache.org/jira/browse/KARAF-6837?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jean-Baptiste Onofré updated KARAF-6837:
----------------------------------------
Fix Version/s: decanter-2.6.0
> Place a bound on the data read in the rest servlet + socket collectors
> ----------------------------------------------------------------------
>
> Key: KARAF-6837
> URL: https://issues.apache.org/jira/browse/KARAF-6837
> Project: Karaf
> Issue Type: Task
> Components: decanter
> Reporter: Colm O hEigeartaigh
> Assignee: Jean-Baptiste Onofré
> Priority: Major
> Fix For: decanter-2.6.0
>
>
> This task is to place a bound on the amount of data read in the rest servlet + socket collectors, as otherwise BufferedReader.readLine() will block until all data is read, potentially leading to a java.lang.OutOfMemoryError: Java heap space error.
> e.g. I see on sending a large file to the rest servlet collector:
> <table>
> <tr><th>URI:</th><td>/decanter/collect/rest-servlet</td></tr>
> <tr><th>STATUS:</th><td>500</td></tr>
> <tr><th>MESSAGE:</th><td>java.lang.OutOfMemoryError: Java heap space</td></tr>
> <tr><th>SERVLET:</th><td>org.ops4j.pax.web.service.spi.model.ServletModel-5</td></tr>
> <tr><th>CAUSED BY:</th><td>java.lang.OutOfMemoryError: Java heap space</td></tr>
> </table>
> <pre>java.lang.OutOfMemoryError: Java heap space
> at java.util.Arrays.copyOf(Arrays.java:3332)
> at java.lang.AbstractStringBuilder.ensureCapacityInternal(AbstractStringBuilder.java:124)
> at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:596)
> at java.lang.StringBuilder.append(StringBuilder.java:190)
> at java.io.BufferedReader.readLine(BufferedReader.java:370)
> at java.io.BufferedReader.readLine(BufferedReader.java:389)
> at org.apache.karaf.decanter.collector.rest.servlet.RestServletCollector.doPost(RestServletCollector.java:86)
--
This message was sent by Atlassian Jira
(v8.3.4#803005)