Review request 7190657 Modify getDriver() to call Thread.currentThread().getContextClassLoader(); (original) (raw)
David Holmes david.holmes at oracle.com
Sun Aug 12 11:19:32 UTC 2012
- Previous message: Review request 7190657 Modify getDriver() to call Thread.currentThread().getContextClassLoader();
- Next message: hg: jdk8/tl/jdk: 3 new changesets
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Lance,
On 11/08/2012 3:19 AM, Lance Andersen - Oracle wrote:
Looking for a reviewer for the following change:
- add a call to Thread.currentThread().getContextClassLoader() to DriverManager.getDriver() - Remove the synchronized block for the same call in getConnection()
What is the context for the change? What is it trying to achieve or avoid?
David
Thank you.
Best Lance localhost:sql lanceandersen$ hg diff DriverManager.java diff -r 629f357fc17b src/share/classes/java/sql/DriverManager.java --- a/src/share/classes/java/sql/DriverManager.java Fri Aug 10 09:17:14 2012 -0400 +++ b/src/share/classes/java/sql/DriverManager.java Fri Aug 10 13:05:00 2012 -0400 @@ -264,6 +264,10 @@ // be null. ClassLoader callerCL = DriverManager.getCallerClassLoader(); + if(callerCL == null) { + callerCL = Thread.currentThread().getContextClassLoader(); + } + // Walk through the loaded registeredDrivers attempting to locate someone // who understands the given URL. for (DriverInfo aDriver : registeredDrivers) { @@ -563,11 +567,8 @@ * classloader, so that the JDBC driver class outside rt.jar * can be loaded from here. */ - synchronized(DriverManager.class) { - // synchronize loading of the correct classloader. - if(callerCL == null) { - callerCL = Thread.currentThread().getContextClassLoader(); - } + if(callerCL == null) { + callerCL = Thread.currentThread().getContextClassLoader(); } if(url == null) { localhost:sql lanceandersen$ Lance Andersen| Principal Member of Technical Staff | +1.781.442.2037 Oracle Java Engineering 1 Network Drive Burlington, MA 01803 Lance.Andersen at oracle.com
- Previous message: Review request 7190657 Modify getDriver() to call Thread.currentThread().getContextClassLoader();
- Next message: hg: jdk8/tl/jdk: 3 new changesets
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]