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

fabrizio giustina updated JCR-1644:
-----------------------------------

    Attachment: JCR-1644-patch.diff

new patch, covering both getUri() and getPrefix().

Note: I tried creating a testcase to reproduce the issue, but looks like there 
that the number of recursions allowed can be very different due to the 
environment or other factor. On a testcase I had to create an xml system with 
with about 5000 nested nodes, while on a real case I saw it crashing after few 
hundreds of nested nodes.


> make NamespaceContext#getPrefix(java.lang.String) iterative instead of 
> recursive
> --------------------------------------------------------------------------------
>
>                 Key: JCR-1644
>                 URL: https://issues.apache.org/jira/browse/JCR-1644
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-core
>            Reporter: Philippe Marschall
>            Priority: Minor
>         Attachments: JCR-1644-patch.diff, NamespaceContext.java, 
> NamespaceContext.java.patch
>
>
> Currently the method 
> org.apache.jackrabbit.core.xml.NamespaceContext#getPrefix(java.lang.String) 
> uses recursion. For very large XML files (50 MB Magnolia website exports) 
> this causes a stack overflow. The method can easily be rewritten using 
> iteration.

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

Reply via email to