Details
-
Bug
-
Resolution: Done
-
Major
-
fuse-7.3
-
None
-
%
-
fuse-7.7-build5
-
-
Description
When Camel routes start, there are unnecessary calls from class DefaultFactoryFinder in method
protected Class<?> addToClassMap(String key, ClassSupplier mappingFunction) throws ClassNotFoundException, IOException { try { return classMap.computeIfAbsent(key, (String classKey) -> { ...
In a Karaf environment with the Java security manager enabled, this causes a massive delay in starting Camel routes, since there are thousands of calls into org.apache.felix.framework.BundleImpl.getEntry(), which is then authorised by the Java Security Manager. Its seems a bulk of these calls could be avoided if the call to classMap.computeIfAbsent() dealt with null values as well.