[ 
https://issues.apache.org/jira/browse/DERBY-2472?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Knut Anders Hatlen updated DERBY-2472:
--------------------------------------

    Attachment: initCause.stat
                initCause.diff

Attaching initCause.diff which removes the possibly dangerous use of 
initCause(). After a discussion on derby-dev, I chose to go for a solution 
where only the first exception caught is re-thrown. This is because it might be 
confusing for users to get a caused-by chain when the exceptions are not 
necessarily caused by eachother, and the code will be very complex for little 
added value if we want to do the chaining.

Derbyall and suites.All ran cleanly on Sun Java 1.6.

> Use Throwable.initCause() to improve error reporting
> ----------------------------------------------------
>
>                 Key: DERBY-2472
>                 URL: https://issues.apache.org/jira/browse/DERBY-2472
>             Project: Derby
>          Issue Type: Improvement
>          Components: JDBC, Miscellaneous
>    Affects Versions: 10.3.0.0
>            Reporter: Kristian Waagan
>         Assigned To: Knut Anders Hatlen
>            Priority: Minor
>         Attachments: derby-2472_initial_patch.diff, embedsqlexception.diff, 
> embedsqlexception.stat, initCause.diff, initCause.stat, seenext.diff, 
> seenext.stat, setStackTrace-v2.diff, setStackTrace.diff, 
> standardexception.diff, standardexception.stat
>
>
> As Derby has moved to J2SE 1.4, Throwable.initCause() can now be used to 
> improve error reporting.
> As stated in the initial commit (that was backed out, see below):
> 'Set Throwable.initCause() in a couple of locations at the JDBC level where 
> we setup nested SQLExceptions.
> This means that automatically the stack trace for a database failed to start 
> includes the reason
> for the failure, rather than just "see next exception". This is a great help 
> when running
> JUnit tests and getting failures to start a database.'
> The initial commit was backed out because it broke numerous tests under JDK 
> 1.6, and the author indicated he had no time to investigate.
> The patch caused no failures when running the tests with Java SE 5.0.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to