[
https://issues.apache.org/jira/browse/DERBY-3076?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Knut Anders Hatlen updated DERBY-3076:
--------------------------------------
Attachment: timeout.java
Attached is a repro. derbyTesting.jar must be in the classpath since the repro
uses a user-defined function from SetQueryTimeoutTest.
Exception in thread "main" java.sql.SQLException: The statement has been
cancelled or timed out.
at
org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source)
at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown
Source)
at
org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown
Source)
at
org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown
Source)
at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown
Source)
at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown
Source)
at
org.apache.derby.impl.jdbc.EmbedResultSet.closeOnTransactionError(Unknown
Source)
at org.apache.derby.impl.jdbc.EmbedResultSet.movePosition(Unknown
Source)
at org.apache.derby.impl.jdbc.EmbedResultSet.next(Unknown Source)
at timeout.main(timeout.java:12)
Caused by: java.sql.SQLException: The statement has been cancelled or timed out.
at
org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
at
org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown
Source)
... 10 more
Caused by: ERROR XCL52: The statement has been cancelled or timed out.
at org.apache.derby.iapi.error.StandardException.newException(Unknown
Source)
at
org.apache.derby.impl.sql.execute.BasicNoPutResultSetImpl.checkCancellationFlag(Unknown
Source)
at
org.apache.derby.impl.sql.execute.BulkTableScanResultSet.getNextRowCore(Unknown
Source)
at
org.apache.derby.impl.sql.execute.ProjectRestrictResultSet.getNextRowCore(Unknown
Source)
at
org.apache.derby.impl.sql.execute.BasicNoPutResultSetImpl.getNextRow(Unknown
Source)
... 3 more
> Statement timeout should throw SQLTimeoutException
> --------------------------------------------------
>
> Key: DERBY-3076
> URL: https://issues.apache.org/jira/browse/DERBY-3076
> Project: Derby
> Issue Type: Improvement
> Components: JDBC
> Affects Versions: 10.4.0.0
> Environment: JDBC 4.0 driver
> Reporter: Knut Anders Hatlen
> Priority: Minor
> Attachments: timeout.java
>
>
> When a query times out (because Statement.setQueryTimeout() has been called),
> a plain SQLException is thrown. JDBC 4.0 defines a sub-class
> SQLTimeoutException for these errors. Derby should throw SQLTimeoutException
> if such timeouts occur.
> From SQLTimeoutException's javadoc:
> > The subclass of SQLException thrown when the timeout specified by Statement
> > has expired.
> >
> > This exception does not correspond to a standard SQLState.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.