db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Myrna van Lunteren (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DERBY-3390) SQLException thrown from user function kills network connection
Date Thu, 02 Oct 2008 17:55:44 GMT

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

Myrna van Lunteren commented on DERBY-3390:
-------------------------------------------

I updated the javadoc with revision 701199.

> SQLException thrown from user function kills network connection
> ---------------------------------------------------------------
>
>                 Key: DERBY-3390
>                 URL: https://issues.apache.org/jira/browse/DERBY-3390
>             Project: Derby
>          Issue Type: Bug
>          Components: Network Server
>    Affects Versions: 10.1.3.1, 10.2.1.6, 10.2.2.0, 10.3.1.4, 10.3.2.1
>            Reporter: Rick Hillegas
>            Assignee: Myrna van Lunteren
>             Fix For: 10.5.0.0
>
>         Attachments: DERBY-3390_a.diff, DERBY-3390_b.diff, DERBY-3390_c.diff
>
>
> Thanks to Frank Griffin for pointing out this issue in a derby-dev email thread: http://www.nabble.com/SQLException-thrown-from-Table-Function-ResultSet-to15241332.html#a15241332
> If a user-coded function throws a SQLException, Derby will try to cast the exception
to a Derby exception class before shipping the exception to the network client. This raises
a ClassCastException and kills the connection. I have observed this in 10.4, 10.3, 10.2, and
10.1. You can reproduce this problem with the following function class and sql script.
> The function class:
> import java.sql.*;
> public  class   BadFunction
> {
>     /**
>      * <p>
>      * This function just throws a SQLException.
>      * </p>
>      */
>     public  static  int badFunction()
>         throws SQLException
>     {
>         throw new SQLException( "I refuse to return an int!" );
>     }
>     
> }
> Here is the SQL script:
> connect 'jdbc:derby://localhost:8246/derby10.4';
> drop function badFunction;
> create function badFunction()
> returns int
> language java
> parameter style java
> no sql
> external name 'BadFunction.badFunction'
> ;
> values ( badFunction() );
> values ( badFunction() );

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