geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tim McConnell (JIRA)" <>
Subject [jira] Resolved: (GERONIMO-4497) Searching for resources in MultiParentClassLoader is not fully optimized
Date Wed, 07 Jan 2009 21:18:44 GMT


Tim McConnell resolved GERONIMO-4497.

    Resolution: Fixed

Changed MultiParentClassLoader to use a HashSet to maintain of list of those resources which
have already been searched for, but not found, and thus preventing multiple searches for the
same "not found" resources. This dramatically improves the performance when "not found" resources
are searched for multiple times (e.g., by the BIRT reporting engine) especially when many
parent classloaders are involved, and would otherwise have to be searched again. 

> Searching for resources in MultiParentClassLoader is not fully optimized
> ------------------------------------------------------------------------
>                 Key: GERONIMO-4497
>                 URL:
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: kernel
>    Affects Versions: 2.1.4, 2.2
>            Reporter: Tim McConnell
>            Assignee: Tim McConnell
>             Fix For: 2.1.4, 2.2
> In one failing scenario, the BIRT reporting engine is invoked with an XML data file to
generate a PDF report file. MultiParentClassLoader.getResource() is invoked many times to
search for various XML resources (e.g., DocumentBuilderFactory). MultiParentClassLoader searches
through the current classloader and all the parent classloaders, which it should, but this
can take a considerable amount of time if the resource is never found. It seems that once
a resource has been searched for and not found, there is no need to search for it again in
the same classloader hierarchy. 

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

View raw message