Three Network Server problems related to large data transfer from server to
client.
-----------------------------------------------------------------------------------
Key: DERBY-170
URL: http://issues.apache.org/jira/browse/DERBY-170
Project: Derby
Type: Bug
Components: Network Server
Environment: Derby Network Server running with either JDBC or ODBC driver.
Reporter: A B
Attachments: assert_repro.java, storedProcs.java, stored_proc_repro.java
The following three failures, all of which deal with large data in some form or
another, can occur when an application is running against Derby Network Server.
The failures are reproducible both from a JDBC client (JCC) and from an ODBC
client (in this case, DB2 Runtime Client).
I'm filing all three failures as a single JIRA entry since they all share the
characteristic of "large data transfer", though the context in which the
transfer occurs is different for each failure. A fix for this bug won't
necessarily be a single patch--it's reasonable and acceptable that the
different failures be addressed in different patches, and that the set of
patches as a whole is considered the "fix" for this bug. Of course, if people
prefer that I break this down into separate JIRA entries, feel free to say so.
Failure 1: When trying to insert a large string value (ex. 1 million chars)
into a non-existent table using a prepared statement, an ASSERT failure occurs
on the Derby side (because data size < 0), which leads to connection closure
and communication link failure. Note that the problem does NOT happen if the
target table actually exists. Repro can be found in the "assert_repro.java"
file attached to this bug.
Failure 2: When Derby Network Server tries to return ~32K or greater data as
part of the result set for a stored procedure, a protocol exception occurs and
causes deallocation of the connection. Repro can be found in the
"stored_proc_repro.java" file, which uses the stored procedure "BIG_COL"
declared in "storedProcs.java". Both files are attached to this bug.
Failure 3: Server hangs in communication with client when it (the server) tries
to send a DSS continuation header to accommodate a high number (hundreds) of
return columns from a Java procedure. Problem appears to be in the way the
server creates the DSS continuation header. Repro can be found in the
"stored_proc_repro.java" file, which uses the stored procedure "LOTS_O_COLS"
declared in "storedProcs.java". Both files are attached to this bug.
NOTE: In order for the repros for #2 and #3 to work, you must compile
"storedProcs.java" and include the storedProcs.class file in the _server_'s
classpath.
--
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
-
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira