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

Kevin Sutter reopened OPENJPA-184:
----------------------------------

      Assignee: David Wisneski

Sorry, I'm going to re-open this Issue.  I don't see any mention of this added 
functionality in our OpenJPA documentation.  Without documentation, the feature 
is not of much use.  So, I think we should leave it open until it is properly 
documented.

> use DB2 Diagnostic interface to report extended error diagnostics on SQL 
> Exception
> ----------------------------------------------------------------------------------
>
>                 Key: OPENJPA-184
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-184
>             Project: OpenJPA
>          Issue Type: New Feature
>         Environment: DB2 database
>            Reporter: David Wisneski
>         Assigned To: David Wisneski
>
> When using DB2 database and the SQLException occurs 
> if the SQLException instance supports the DB2Diagnosable interface, 
> extended error information from the SQLCA will be written to the SQL channel. 
> The message format produced by DB2Diagnosable writer is
>  
>        SQLCA OUTPUT[Errp=SQLDMISR, Errd=[-2146893819, 5, 0, 0, -957, 0]]
> Errp is the name of the DB2 module that detected the error and Errd are 6 
> integers of diagnostic information, SQLWARN are 6 characters 
> of warning flags..  Often this additional information can be used by an 
> administrator in doing problem determination.
> This message will be appended to the persistence exception error message 
> already created by OpenJPA
> and it will be written to SQL logging channel (if active).
> DB2Dictionary class is modified to use java reflection on the SQLException 
> instance to determine 
> if it supports DB2Diagnosble methods "getErrp" and if so 
> it invokes the methods to retrieve Errp and Errd fields, formats and logs the 
> error message.
> Reflection is used so that the DB2Dictionary does not contain any compile 
> time or runtime 
> dependency on the DB2 jdbc driver.  If the DB2Diagnosable methods do not 
> exist on the SQLException
> instance,  no extended error information is logged.  
> org.apache.openjpa.jdbc.sql.SQLException class is modified so in the event of 
> an exception 
> if the Dictionary is DB2, to call the Dictionary routines above.

-- 
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