[ 
http://issues.apache.org/jira/browse/DERBY-1459?page=comments#action_12420146 ] 

Rick Hillegas commented on DERBY-1459:
--------------------------------------

Hi Kathey,

Here are some answers to your questions. And don't forget to thank Knut Anders, 
who suggested this approach!

1) This approach should fix DERBY-1399. My clean derbyall run against the jars 
on 1.6 confirms this.

2) Under this approach, the 10.2/jdk1.6 engine should boot (and lookup system 
properties) in the same fashion as the current 10.1.3 engine does. There is a 
subtle differences though:

DriverManager.getDriver() will return a different driver in 10.2, viz., 
AutoloadedDriver. In 10.1.3, this method returns Driver20 or Driver30 depending 
on the JDBC level. This could affect users who care about the name of the 
returned driver and who want to call public Derby-specific methods on these 
classes. Since these classes aren't part of our public API, I don't think we 
want to encourage or support this practice.

I do not anticipate any impact for customers who have coded their applications 
against our published API.

> Early load of Derby driver with JDBC 4.0 autoloading can lead to derby 
> properties not being processed or derby boot time actions consuming resources 
> when a connection is made with another driver
> --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>          Key: DERBY-1459
>          URL: http://issues.apache.org/jira/browse/DERBY-1459
>      Project: Derby
>         Type: Bug

>   Components: JDBC, Services
>     Versions: 10.2.0.0
>  Environment: JDK 1.6 
>     Reporter: Kathey Marsden
>     Priority: Critical
>      Fix For: 10.2.0.0
>  Attachments: autoloading_scenarios.html, bug1459_v01.diff, bug1459_v02.diff, 
> bug1459_v03.diff, bug1459_v04.diff
>
> The addition of support for autoloading of Derby drivers, DERBY-930, caused 
> two potentially serious regresions for applications.
> 1) Early load of driver can mean that  derby system properties, such as 
> derby.system.home may not be processed by the driver because they are set 
> after the driver is loaded.
> 2) Early load of the driver can mean boot time operations, such as starting 
> network server with derby.drda.startNetworkServer can happen even when Derby 
> is never used if a connection is made to another database such as Oracle.
> The attached file autoloading_scenarios.html  shows scenarios that show these 
> regressions plus another case that will regress if boot time operations are 
> moved to the first Derby embedded connection.   I don't know what solution is 
> available that would handle all three cases.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to