db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Knut Anders Hatlen (JIRA)" <j...@apache.org>
Subject [jira] Updated: (DERBY-1440) jdk 1.6 client driver omits SQLStates and chained exceptions in error messages
Date Thu, 24 May 2007 21:42:16 GMT

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

Knut Anders Hatlen updated DERBY-1440:
--------------------------------------

       Derby Info:   (was: [Patch Available])
    Fix Version/s: 10.3.0.0

Thanks for the review, Øystein! I have committed 1440.diff to trunk with revision 541435
and will address your comments in a follow-up patch by adding more comments to wrapInSQLException().
I agree that nextSQLException should be renamed to something which matches how it's currently
being used.

The purpose of seeNextException and the recursive call to wrapInSQLException() is to convert
a StandardException to an SQLException and add a next pointer from the SQLException to another
SQLException which wraps the cause of the StandardException. For the JDBC 3.0 driver, this
should have the same effect as before (when it created the SQLException from the StandardException,
wrapped the cause of the StandardException and chained them with setNextException()), whereas
the JDBC 4.0 driver now will create the correct chain of DRDA ferry wrappers since Util.seeNextException()
goes through the exception factory instead of calling setNextException() directly.

> jdk 1.6 client driver omits SQLStates and chained exceptions in error messages
> ------------------------------------------------------------------------------
>
>                 Key: DERBY-1440
>                 URL: https://issues.apache.org/jira/browse/DERBY-1440
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC, Network Client, Tools
>    Affects Versions: 10.2.1.6
>         Environment: Sun JDK 1.6
>            Reporter: Olav Sandstaa
>         Assigned To: Knut Anders Hatlen
>            Priority: Minor
>             Fix For: 10.3.0.0
>
>         Attachments: 1440.diff, 1440.stat
>
>
> When running some SQL queries through ij that fails it seems like some
> information about chained exceptions is not presented to the user when
> running with the client driver and jdk 1.6.
> One example SQL that fails (taken from the ieptests.sql):
> =========================================================
> ij> call SYSCS_UTIL.SYSCS_EXPORT_TABLE ('inventory', 'ORDERTABLE' ,
> 'extinout/order.dat', null, null, null) ;
> When running this in ij the following error message is produced:
> Java 1.6 Embedded driver:
> =========================
> ERROR 38000: The exception 'java.sql.SQLSyntaxErrorException: Schema
> 'inventory' does not exist' was thrown while evaluating an expression.
> ERROR 42Y07: Schema 'inventory' does not exist
> Java 1.5 Client driver:
> =======================
> ERROR 38000: The exception 'SQL Exception: Schema 'inventory' does not
> exist' was thrown while evaluating an expression. SQLSTATE: 42Y07:
> Schema 'inventory' does not exist
> Java 1.6 Client driver:
> =======================
> ERROR 38000: The exception 'java.sql.SQLSyntaxErrorException: Schema
> 'inventory' does not exist' was thrown while evaluating an expression.
> The bug (or difference) here is that the client driver when running
> with jdk 1.6 does not print the chained exception and SQL state.
> It would be nice to have the same information in the output as what is
> written by the embedded driver (or client driver running with jdk
> 1.5).

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


Mime
View raw message