db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kathey Marsden (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DERBY-1191) Some SQLExceptions, for example those generated from BrokeredStatements, do not print to derby.log even when derby.stream.error.logSeverityLevel=0
Date Thu, 23 Jul 2009 00:13:14 GMT

    [ https://issues.apache.org/jira/browse/DERBY-1191?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12734399#action_12734399
] 

Kathey Marsden commented on DERBY-1191:
---------------------------------------

Looking back at the comments in this issue, I see that Dan had some objection to logging exceptions
at the JDBC API level especially usage errors.  I still think logging all  exceptions is useful.
 The one I especially am interested in logging  at the moment is:

SQLState 25001
java.sql.SQLException: Cannot close a connection while a transaction is still active.

which is new after the DERBY-3319 fix for pooled connections and has proved hard to track
down in the cases of DERBY-4053, DERBY-4225 and I think perhaps a current user case I am trying
to diagnose.

I think this exception would fall into the category of  usage error and JDBC API level, but
 it sure would be helpful to see it especially for something that used to work.   

Do others have opinions on this?


> Some SQLExceptions, for example those generated from BrokeredStatements,  do not print
to derby.log even  when  derby.stream.error.logSeverityLevel=0
> -----------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-1191
>                 URL: https://issues.apache.org/jira/browse/DERBY-1191
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC
>    Affects Versions: 10.1.3.1, 10.2.1.6
>            Reporter: Kathey Marsden
>
> I found this when working on DERBY-1047.   Exceptions thrown  using 
> org.apache.derby.impl.jdbc.Util.generateCsSQLException()
> do not print to derby.log even when derby.stream.error.logSeverityLevel=0
> For example the attached repro  generates an expected exception but does not  print the
error to the log.
> java -Dderby.stream.error.logSeverityLevel=0 Derby1047
> This causes an expected exception to be thrown but it does not print to the derby.log
> 10.2.0.0 alpha
> Apache Derby
> Apache Derby Embedded JDBC Driver
> done creating  table
> COL1
> -----------
> 1
> 2
> PASS: Expected Exception can'tholdable cusror in global xact:Cannot set holdability ResultSet.HOLD_CURSORS_OVER_COMMIT
for a global transaction.
> COL1
> -----------
> 1
> 2
> 3
> The code generating the exception is in org.apache.derby.iapi.jdbc.BrokeredStatement
>   final void checkHoldability() throws SQLException {
>         int holdability = controlCheck().checkHoldCursors(resultSetHoldability);
>         if (holdability != resultSetHoldability)
>             throw Util.generateCsSQLException(SQLState.CANNOT_HOLD_CURSOR_XA);
>     }

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