Author: markt
Date: Wed Jun 22 14:59:11 2011
New Revision: 1138497
URL: http://svn.apache.org/viewvc?rev=1138497&view=rev
Log:
Further improvements to startup performance.
Use File URLs where they can be determined for speed.
Modified:
tomcat/trunk/java/org/apache/tomcat/util/scan/StandardJarScanner.java
tomcat/trunk/webapps/docs/changelog.xml
Modified: tomcat/trunk/java/org/apache/tomcat/util/scan/StandardJarScanner.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/scan/StandardJarScanner.java?rev=1138497&r1=1138496&r2=1138497&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/scan/StandardJarScanner.java
(original)
+++ tomcat/trunk/java/org/apache/tomcat/util/scan/StandardJarScanner.java Wed
Jun 22 14:59:11 2011
@@ -155,7 +155,14 @@ public class StandardJarScanner implemen
}
URL url = null;
try {
- url = context.getResource(path);
+ // File URLs are always faster to work with so use them
+ // if available.
+ String realPath = context.getRealPath(path);
+ if (realPath == null) {
+ url = context.getResource(path);
+ } else {
+ url = (new File(realPath)).toURI().toURL();
+ }
process(callback, url);
} catch (IOException e) {
log.warn(sm.getString("jarScan.webinflibFail", url),
e);
Modified: tomcat/trunk/webapps/docs/changelog.xml
URL:
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1138497&r1=1138496&r2=1138497&view=diff
==============================================================================
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Wed Jun 22 14:59:11 2011
@@ -121,6 +121,11 @@
<bug>51403</bug>: Avoid NPE in JULI FileHandler if formatter is
misconfigured. (kkolinko)
</add>
+ <fix>
+ Previous improvements in JAR scanning performance introduced a start-up
+ performance penalty for some use cases. This fix addresses those
+ performance penalties while retaining the original improvements.
(markt)
+ </fix>
</changelog>
</subsection>
<subsection name="Coyote">
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]