-
Type:
Suggestion
-
Resolution: Fixed
-
Component/s: None
At present the velocity resource manager will query every configured resource loader for custom space decorators. If one exists it is found in the first resource loader (hibernate) and all is well. For cases where there are no custom decorators (the most common case) the entire resource loader chain is queried every time. This results in approximately four resource queries every page load which will scan through the entire resource loader chain. The final resource loader in the chain, the dynamic plugin resource loader, is quite expensive to query and negative hits are not cached. It also reduces performance on app servers which have slow and synchronized class loaders.
As custom space decorators can only be found in two of the resource loaders, hibernate and the classpath, we should limit scans to these two loaders only.