[ http://issues.apache.org/jira/browse/DERBY-149?page=all ]
     
Kristian Waagan closed DERBY-149:
---------------------------------


Verified the fix on 10.1.2.1 and trunk, and closed the issue.
Also tested that the test program indeed did hang on 10.0.2.1 and 10.1.1.0.

Output from test program on 10.1.2.1:
]$ java -classpath 
./db2jcc.jar:./db2jcc_license_c.jar:../db-derby-10.1.2.1-lib/lib/derbyclient.jar:./
 go
Got 22007: DB2 SQL error: SQLCODE: -1, SQLSTATE: 22007, SQLERRMC: 22007.S.181

> Server hang when invalid string is bound to datetime columns.
> -------------------------------------------------------------
>
>          Key: DERBY-149
>          URL: http://issues.apache.org/jira/browse/DERBY-149
>      Project: Derby
>         Type: Bug
>   Components: Network Server
>  Environment: Derby running with Network Server via JDBC universal driver.
>     Reporter: A B
>     Assignee: Kathey Marsden
>      Fix For: 10.2.0.0, 10.1.2.0, 10.1.1.2

>
> When running against Derby Network Server with the JCC driver, attempts to 
> bind an invalid date/time string to a date/time/timestamp parameter lead to a 
> hang in either the JCC client or in the Network Server (not sure which).
> The problem does NOT occur if the same thing is run against a DB2 server, 
> which suggests the bug is in Network Server, not in the JCC driver.  That 
> said, though, the problem also does NOT happen if one uses an ODBC client to 
> connect to Network Server, instead of a JDBC client--so perhaps it's a 
> problem with JCC, after all...hard to say one way or the other...
> Here's a simple program to reproduce the problem:
> import java.sql.*;
> public class go {
>       public static void main (String[] args) throws Exception {
>               Class.forName("com.ibm.db2.jcc.DB2Driver");
>               Connection c = DriverManager.getConnection(
>                       "jdbc:derby:net://localhost:1527/ugh;create=true", 
> "bah", "humbug");
>               Statement s = c.createStatement();
>               try {
>                       s.execute("drop table dt");
>               } catch (SQLException se) {}
>               s.execute("create table dt (d date)");
>               PreparedStatement pSt = c.prepareStatement("insert into dt 
> values (?)");
>               try {
>                       pSt.setString(1, "oops"); // invalid date value.
>                       pSt.execute();
>               } catch (SQLException se) {
>                       System.out.println("Got " + se.getSQLState() + ": " + 
> se.getMessage());
>               }
>       }
> }
> Of course, in order for the program to run, one must start the Network Server 
> on port 1527 first.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to