[ 
https://issues.apache.org/jira/browse/JCR-2744?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12908816#action_12908816
 ] 

Michael Dürig commented on JCR-2744:
------------------------------------

I'm in favor of further optimizing Path.Element or even trying to get rid of it 
when it turns out to be feasible. Since getElements() is called from quite many 
places, we might gain some quick insight into the impact of further 
optimization from changing the method to an iterative implementation and 
running the performance test suite. 

Also - if it turn out to be beneficial performance wise - I'd prefer to have an 
iterative implementation of getElements() in 2.2 if further optimizations won't 
make it into the release.

> Avoid element arrays in PathImpl
> --------------------------------
>
>                 Key: JCR-2744
>                 URL: https://issues.apache.org/jira/browse/JCR-2744
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi, jackrabbit-spi-commons
>            Reporter: Jukka Zitting
>         Attachments: TransientManyChildNodesTest.png
>
>
> The path handling code in spi-commons shows quite often in thread dumps and 
> profiling results, as the current implementation does quite a bit of 
> repetitive allocating and copying of path element arrays. We should be able 
> to streamline and simplify the path handling code by only tracking the latest 
> path element and a reference to the parent path. To do this efficiently we 
> may need to adjust some of the Path and PathFactory method declarations (that 
> currently assume element array -based paths) also in the SPI.

-- 
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