spring-boot/spring-boot-tools
Andy Wilkinson d241171fff Use fast exceptions in hasMoreElements in LaunchedURLClassLoader
When nested jars are being used, hasMoreElements requires opening a
connection for an entry in every nested jar. If that entry doesn't
exist, a FileNotFoundException is thrown to indicate that a particular
jar doesn't contain the requested entry. This exception is used to
indicate the lack of an entry and is then swallowed, i.e. its stack
trace is of no importance. This means that the performance of
hasMoreElements can be improved by switching on fast exceptions while
it's being called. When fast exceptions are switched on a general
purpose pre-initialized FileNotFoundException is thrown rather than
creating a new FileNotFoundException instance each time.

In certain situations, the use of fast exceptions as described above
can improve performance fairly significantly. The JRE's default SAAJ
implementation uses META-INF/services-based discovery for _every_
request that's handled by Spring Web Services. Each discovery attempt
results in hasMoreElements being called making its performance
critical to throughput.

See gh-3640
2015-08-03 15:39:56 +01:00
..
spring-boot-configuration-processor Next development version 2015-07-01 22:48:01 -07:00
spring-boot-dependency-tools Next development version 2015-07-01 22:48:01 -07:00
spring-boot-gradle-plugin Next development version 2015-07-01 22:48:01 -07:00
spring-boot-loader Use fast exceptions in hasMoreElements in LaunchedURLClassLoader 2015-08-03 15:39:56 +01:00
spring-boot-loader-tools Formatting 2015-07-09 10:37:21 -07:00
spring-boot-maven-plugin Fix maven plugin configuration 2015-07-27 08:18:09 +02:00
pom.xml Next development version 2015-07-01 22:48:01 -07:00