cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jörg Heinicke (JIRA) <j...@apache.org>
Subject [jira] Updated: (COCOON-2168) ResourceReader produces Java Heap Overflow when reading a huge resource
Date Thu, 24 Apr 2008 05:27:21 GMT

     [ https://issues.apache.org/jira/browse/COCOON-2168?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Jörg Heinicke updated COCOON-2168:
----------------------------------

    Affects version (Component): Parent values: Components: Pipeline(10157). Level 1 values:
1.0.0-RC1(10224). 
        Fix version (Component): Parent values: Components: Pipeline(10228). 
                     Other Info:   (was: [Patch available])
              Affects Version/s: 2.1.11
                  Fix Version/s: 2.2-dev (Current SVN)
                                 2.1.12-dev (Current SVN)
                       Assignee: Jörg Heinicke

As discussed in http://marc.info/?t=120473411300003&r=1&w=4 I changed the default
buffer size used in Cocoon to 1 MB. This will prevent OOMEs with overly large resources in
most circumstances when the user has not configured the buffer size. On the other hand it
will hardly affect any "normal" Cocoon pipeline rendering since 1 MB for markup is rather
large. The buffer size can still be configured to complete buffering by setting it to -1 explicitly
(which used to be the default).

> ResourceReader produces Java Heap Overflow when reading a huge resource
> -----------------------------------------------------------------------
>
>                 Key: COCOON-2168
>                 URL: https://issues.apache.org/jira/browse/COCOON-2168
>             Project: Cocoon
>          Issue Type: Bug
>          Components: * Cocoon Core
>    Affects Versions: 2.1.11, 2.2
>            Reporter: Felix Knecht
>            Assignee: Jörg Heinicke
>             Fix For: 2.1.12-dev (Current SVN), 2.2-dev (Current SVN)
>
>         Attachments: ResourceReader.diff, test-case.tar.gz
>
>
> When reading a huge resource (i.e. 700MB file) the ResourceReader produces an overflow
due to the BufferedOutputStream which is used (and forced to be used via AbstractReader).
The BufferedOutputStream flushes only at the end (or when forced to), but overwrites the flush
method to do nothing.
> As I don't know exactly where the BufferedOutputStream is used and what kind of impacts
it will have to change it there I'm just going to fix the ResourceReader.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message