[jira] Updated: (DERBY-3243) (jdbc net client) exception during normal iteration through "ResultSet" of "select * from t"

2008-01-24 Thread Kathey Marsden (JIRA)

 [ 
https://issues.apache.org/jira/browse/DERBY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kathey Marsden updated DERBY-3243:
--

Derby Info: [Existing Application Impact, Regression]  (was: [Existing 
Application Impact])

When I run the program at:http://www.os1.net/error.java  with trunk, 
10.3.2.1, and 10.3.1.4 I get a different exception than the one reported:

java.sql.SQLException: Insufficient data while reading from the network - 
expected a minimum of 6 bytes and received on
y -1 bytes.  The connection has been terminated.
at 
org.apache.derby.client.am.SQLExceptionFactory.getSQLException(SQLExceptionFactory.java:46)
at 
org.apache.derby.client.am.SqlException.getSQLException(SqlException.java:362)
at 
org.apache.derby.client.am.PreparedStatement.executeUpdate(PreparedStatement.java:391)
at error.fill_db(error.java:147)
at error.main(error.java:171)
Caused by: org.apache.derby.client.am.DisconnectException: Insufficient data 
while reading from the network - expected
 minimum of 6 bytes and received only -1 bytes.  The connection has been 
terminated.
at org.apache.derby.client.net.Reply.fill(Reply.java:195)
at 
org.apache.derby.client.net.Reply.ensureALayerDataInBuffer(Reply.java:215)
at org.apache.derby.client.net.Reply.readDssHeader(Reply.java:317)
at 
org.apache.derby.client.net.Reply.startSameIdChainParse(Reply.java:1147)
at 
org.apache.derby.client.net.NetStatementReply.readExecute(NetStatementReply.java:69)
at 
org.apache.derby.client.net.StatementReply.readExecute(StatementReply.java:55)
at 
org.apache.derby.client.net.NetPreparedStatement.readExecute_(NetPreparedStatement.java:183)
at 
org.apache.derby.client.am.PreparedStatement.readExecute(PreparedStatement.java:1796)
at 
org.apache.derby.client.am.PreparedStatement.flowExecute(PreparedStatement.java:2116)
at 
org.apache.derby.client.am.PreparedStatement.executeUpdateX(PreparedStatement.java:396)
at 
org.apache.derby.client.am.PreparedStatement.executeUpdate(PreparedStatement.java:382)
... 2 more



With 10.2.2.0 the program runs cleanly.  Marking as a regression.




> (jdbc net client) exception during normal iteration through "ResultSet" of 
> "select * from t"
> 
>
> Key: DERBY-3243
> URL: https://issues.apache.org/jira/browse/DERBY-3243
> Project: Derby
>  Issue Type: Bug
>  Components: JDBC
>Affects Versions: 10.3.2.1
> Environment: -- Java Information --
> Java Version:1.4.2_03
> Java Vendor: Sun Microsystems Inc.
> Java home:   C:\Programme\Java\j2re1.4.2_03
> Java classpath:  derbyclient.jar
> OS name: Windows XP
> OS architecture: x86
> OS version:  5.1
> Java user name:  cbdqok
> Java user home:  C:\Dokumente und Einstellungen\cbdqok
> Java user dir:   D:\users\cbdqok\privat\osj\lib_derby_net\lib
> java.specification.name: Java Platform API Specification
> java.specification.version: 1.4
> - Derby Information 
> JRE - JDBC: J2SE 1.4.2 - JDBC 3.0
> [D:\users\cbdqok\privat\osj\lib_derby_net\lib\derbyclient.jar] 10.3.1.4 - 
> (561794)
> --
> - Locale Information -
> --
>Reporter: Oliver Seidel
>Priority: Critical
>
> Thanks again to the DERBY developers.
> For my convenience I use the client/server variant of DERBY.  This is where 
> the error occurs.  I have temporarily alleviated the problem for my case by 
> using the embedded version.
> I'm forced to use outlook and have built a program which siphons the messages 
> into a derby database (phase 1 -- table has two varchar fields and a clob).  
> When reading them back (phase 2 -- simple select of all records in no 
> particular order, all 3 attributes), it has developed an exception.  This is 
> a result of data volume.  I have reduced the problem to a single 
> demonstration program.
> This behaviour, and the fact that the error is not a "DERBY Exception", but a 
> proper exception coming back from the JDBC call, leads me to the diagnosis 
> that it is a derby network client jdbc problem.
> The problem has been reproduced once by Bryan Pendleton: 
> http://www.nabble.com/IndexOutOfBoundsException-t4926228.html
> I'll try to attach the code "error.java"; it can also be found on: 
> http://www.os1.net/error.java
> Please use as follows:
> javac -classpath derby.jar:derbynet.jar error.java
> java -cp .:derby.jar:derbynet.jar error
> It will create a directory "test_db" and fill it with approx 120mb data.
> Then you will observe the failure. 
> /* -*- Mode:Java; c-basic-offset

[jira] Updated: (DERBY-3243) (jdbc net client) exception during normal iteration through "ResultSet" of "select * from t"

2008-01-26 Thread Kathey Marsden (JIRA)

 [ 
https://issues.apache.org/jira/browse/DERBY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kathey Marsden updated DERBY-3243:
--

Attachment: derby-3243_fix_double_hashmap_entry_stat.txt
derby-3243_fix_double_hashmap_entry_diff.txt

Attached is a patch to fix the double entry of lobs in the lob hashmap for 
network server.  We now store the locator in the lob so network server can 
retrieve it instead of doing a second store of the lob.  

The test case still fails but retrieves double the number of rows before 
failing, so it does not fix the core bug.  I just thought I would fix this 
while it was in front of me.  I didn't add a functional test. I wasn't sure how 
appropriate it was to add a test with a table with 32K rows to the functional 
tests.

The patch also resets the lob key on commit/rollback which will help prevent 
this bug from hitting upon retrieving 32K lobs even across transaction 
boundaries.




> (jdbc net client) exception during normal iteration through "ResultSet" of 
> "select * from t"
> 
>
> Key: DERBY-3243
> URL: https://issues.apache.org/jira/browse/DERBY-3243
> Project: Derby
>  Issue Type: Bug
>  Components: JDBC
>Affects Versions: 10.3.2.1
> Environment: -- Java Information --
> Java Version:1.4.2_03
> Java Vendor: Sun Microsystems Inc.
> Java home:   C:\Programme\Java\j2re1.4.2_03
> Java classpath:  derbyclient.jar
> OS name: Windows XP
> OS architecture: x86
> OS version:  5.1
> Java user name:  cbdqok
> Java user home:  C:\Dokumente und Einstellungen\cbdqok
> Java user dir:   D:\users\cbdqok\privat\osj\lib_derby_net\lib
> java.specification.name: Java Platform API Specification
> java.specification.version: 1.4
> - Derby Information 
> JRE - JDBC: J2SE 1.4.2 - JDBC 3.0
> [D:\users\cbdqok\privat\osj\lib_derby_net\lib\derbyclient.jar] 10.3.1.4 - 
> (561794)
> --
> - Locale Information -
> --
>Reporter: Oliver Seidel
>Priority: Critical
> Attachments: derby-3243_fix_double_hashmap_entry_diff.txt, 
> derby-3243_fix_double_hashmap_entry_stat.txt
>
>
> Thanks again to the DERBY developers.
> For my convenience I use the client/server variant of DERBY.  This is where 
> the error occurs.  I have temporarily alleviated the problem for my case by 
> using the embedded version.
> I'm forced to use outlook and have built a program which siphons the messages 
> into a derby database (phase 1 -- table has two varchar fields and a clob).  
> When reading them back (phase 2 -- simple select of all records in no 
> particular order, all 3 attributes), it has developed an exception.  This is 
> a result of data volume.  I have reduced the problem to a single 
> demonstration program.
> This behaviour, and the fact that the error is not a "DERBY Exception", but a 
> proper exception coming back from the JDBC call, leads me to the diagnosis 
> that it is a derby network client jdbc problem.
> The problem has been reproduced once by Bryan Pendleton: 
> http://www.nabble.com/IndexOutOfBoundsException-t4926228.html
> I'll try to attach the code "error.java"; it can also be found on: 
> http://www.os1.net/error.java
> Please use as follows:
> javac -classpath derby.jar:derbynet.jar error.java
> java -cp .:derby.jar:derbynet.jar error
> It will create a directory "test_db" and fill it with approx 120mb data.
> Then you will observe the failure. 
> /* -*- Mode:Java; c-basic-offset:8 -*- */
> // 
> 
> public class error {
>   // 
> 
>   public static final int port = 1527;
>   public static final String host = "127.0.0.1";
>   // 
> 
>   public static void log(String x) { System.out.println(x); };
>   // 
> 
>   public static void log_stacktrace(Exception e) {
> java.io.StringWriter sw = new java.io.StringWriter();
> java.io.PrintWriter pw = new java.io.PrintWriter(sw);
> e.printStackTrace(pw);
> log(sw.toString());
>   };
>   // 
> 
>   public static void start_server() {
>   try {
>   org.apache.derby.drda.NetworkServerControl server =
>   new 
> org.apache.derby.drda.NetworkServerContro

[jira] Updated: (DERBY-3243) (jdbc net client) exception during normal iteration through "ResultSet" of "select * from t"

2008-01-26 Thread Kathey Marsden (JIRA)

 [ 
https://issues.apache.org/jira/browse/DERBY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kathey Marsden updated DERBY-3243:
--

Derby Info: [Patch Available, Existing Application Impact, Regression]  
(was: [Regression, Existing Application Impact])

partial patch available.

> (jdbc net client) exception during normal iteration through "ResultSet" of 
> "select * from t"
> 
>
> Key: DERBY-3243
> URL: https://issues.apache.org/jira/browse/DERBY-3243
> Project: Derby
>  Issue Type: Bug
>  Components: JDBC
>Affects Versions: 10.3.2.1
> Environment: -- Java Information --
> Java Version:1.4.2_03
> Java Vendor: Sun Microsystems Inc.
> Java home:   C:\Programme\Java\j2re1.4.2_03
> Java classpath:  derbyclient.jar
> OS name: Windows XP
> OS architecture: x86
> OS version:  5.1
> Java user name:  cbdqok
> Java user home:  C:\Dokumente und Einstellungen\cbdqok
> Java user dir:   D:\users\cbdqok\privat\osj\lib_derby_net\lib
> java.specification.name: Java Platform API Specification
> java.specification.version: 1.4
> - Derby Information 
> JRE - JDBC: J2SE 1.4.2 - JDBC 3.0
> [D:\users\cbdqok\privat\osj\lib_derby_net\lib\derbyclient.jar] 10.3.1.4 - 
> (561794)
> --
> - Locale Information -
> --
>Reporter: Oliver Seidel
>Priority: Critical
> Attachments: derby-3243_fix_double_hashmap_entry_diff.txt, 
> derby-3243_fix_double_hashmap_entry_stat.txt
>
>
> Thanks again to the DERBY developers.
> For my convenience I use the client/server variant of DERBY.  This is where 
> the error occurs.  I have temporarily alleviated the problem for my case by 
> using the embedded version.
> I'm forced to use outlook and have built a program which siphons the messages 
> into a derby database (phase 1 -- table has two varchar fields and a clob).  
> When reading them back (phase 2 -- simple select of all records in no 
> particular order, all 3 attributes), it has developed an exception.  This is 
> a result of data volume.  I have reduced the problem to a single 
> demonstration program.
> This behaviour, and the fact that the error is not a "DERBY Exception", but a 
> proper exception coming back from the JDBC call, leads me to the diagnosis 
> that it is a derby network client jdbc problem.
> The problem has been reproduced once by Bryan Pendleton: 
> http://www.nabble.com/IndexOutOfBoundsException-t4926228.html
> I'll try to attach the code "error.java"; it can also be found on: 
> http://www.os1.net/error.java
> Please use as follows:
> javac -classpath derby.jar:derbynet.jar error.java
> java -cp .:derby.jar:derbynet.jar error
> It will create a directory "test_db" and fill it with approx 120mb data.
> Then you will observe the failure. 
> /* -*- Mode:Java; c-basic-offset:8 -*- */
> // 
> 
> public class error {
>   // 
> 
>   public static final int port = 1527;
>   public static final String host = "127.0.0.1";
>   // 
> 
>   public static void log(String x) { System.out.println(x); };
>   // 
> 
>   public static void log_stacktrace(Exception e) {
> java.io.StringWriter sw = new java.io.StringWriter();
> java.io.PrintWriter pw = new java.io.PrintWriter(sw);
> e.printStackTrace(pw);
> log(sw.toString());
>   };
>   // 
> 
>   public static void start_server() {
>   try {
>   org.apache.derby.drda.NetworkServerControl server =
>   new 
> org.apache.derby.drda.NetworkServerControl(java.net.InetAddress.getByName(host),port);
>   server.start(null);
>   try { java.lang.Thread.sleep(5000); } catch (Exception 
> e) { };
>   log("started DERBY on host "+host+" port 
> "+Integer.toString(port)+".");
>   } catch (Exception e) {
>   log_stacktrace(e);
>   };
>   };
>   // 
> 
>   public static java.sql.Connection con()
>   throws java.sql.SQLException, java.lang.ClassNotFoundException {
>   Class.forName("org.apache.derby.jdbc.Clie

[jira] Updated: (DERBY-3243) (jdbc net client) exception during normal iteration through "ResultSet" of "select * from t"

2008-01-29 Thread Kathey Marsden (JIRA)

 [ 
https://issues.apache.org/jira/browse/DERBY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kathey Marsden updated DERBY-3243:
--

Attachment: derby-3243_fix_double_hashmap_entry_diff2.txt

Here is the patch to fix the double hashmap entries without resetting the lob 
key.  I plan to commit this tomorrow if I don't hear back.

Kathey



> (jdbc net client) exception during normal iteration through "ResultSet" of 
> "select * from t"
> 
>
> Key: DERBY-3243
> URL: https://issues.apache.org/jira/browse/DERBY-3243
> Project: Derby
>  Issue Type: Bug
>  Components: JDBC
>Affects Versions: 10.3.2.1
> Environment: -- Java Information --
> Java Version:1.4.2_03
> Java Vendor: Sun Microsystems Inc.
> Java home:   C:\Programme\Java\j2re1.4.2_03
> Java classpath:  derbyclient.jar
> OS name: Windows XP
> OS architecture: x86
> OS version:  5.1
> Java user name:  cbdqok
> Java user home:  C:\Dokumente und Einstellungen\cbdqok
> Java user dir:   D:\users\cbdqok\privat\osj\lib_derby_net\lib
> java.specification.name: Java Platform API Specification
> java.specification.version: 1.4
> - Derby Information 
> JRE - JDBC: J2SE 1.4.2 - JDBC 3.0
> [D:\users\cbdqok\privat\osj\lib_derby_net\lib\derbyclient.jar] 10.3.1.4 - 
> (561794)
> --
> - Locale Information -
> --
>Reporter: Oliver Seidel
>Priority: Critical
> Attachments: derby-3243_fix_double_hashmap_entry_diff.txt, 
> derby-3243_fix_double_hashmap_entry_diff2.txt, 
> derby-3243_fix_double_hashmap_entry_stat.txt
>
>
> Thanks again to the DERBY developers.
> For my convenience I use the client/server variant of DERBY.  This is where 
> the error occurs.  I have temporarily alleviated the problem for my case by 
> using the embedded version.
> I'm forced to use outlook and have built a program which siphons the messages 
> into a derby database (phase 1 -- table has two varchar fields and a clob).  
> When reading them back (phase 2 -- simple select of all records in no 
> particular order, all 3 attributes), it has developed an exception.  This is 
> a result of data volume.  I have reduced the problem to a single 
> demonstration program.
> This behaviour, and the fact that the error is not a "DERBY Exception", but a 
> proper exception coming back from the JDBC call, leads me to the diagnosis 
> that it is a derby network client jdbc problem.
> The problem has been reproduced once by Bryan Pendleton: 
> http://www.nabble.com/IndexOutOfBoundsException-t4926228.html
> I'll try to attach the code "error.java"; it can also be found on: 
> http://www.os1.net/error.java
> Please use as follows:
> javac -classpath derby.jar:derbynet.jar error.java
> java -cp .:derby.jar:derbynet.jar error
> It will create a directory "test_db" and fill it with approx 120mb data.
> Then you will observe the failure. 
> /* -*- Mode:Java; c-basic-offset:8 -*- */
> // 
> 
> public class error {
>   // 
> 
>   public static final int port = 1527;
>   public static final String host = "127.0.0.1";
>   // 
> 
>   public static void log(String x) { System.out.println(x); };
>   // 
> 
>   public static void log_stacktrace(Exception e) {
> java.io.StringWriter sw = new java.io.StringWriter();
> java.io.PrintWriter pw = new java.io.PrintWriter(sw);
> e.printStackTrace(pw);
> log(sw.toString());
>   };
>   // 
> 
>   public static void start_server() {
>   try {
>   org.apache.derby.drda.NetworkServerControl server =
>   new 
> org.apache.derby.drda.NetworkServerControl(java.net.InetAddress.getByName(host),port);
>   server.start(null);
>   try { java.lang.Thread.sleep(5000); } catch (Exception 
> e) { };
>   log("started DERBY on host "+host+" port 
> "+Integer.toString(port)+".");
>   } catch (Exception e) {
>   log_stacktrace(e);
>   };
>   };
>   // 
> 
>   public static java.sql.Connection con()
>   throws java.s

[jira] Updated: (DERBY-3243) (jdbc net client) exception during normal iteration through "ResultSet" of "select * from t"

2008-01-31 Thread Kathey Marsden (JIRA)

 [ 
https://issues.apache.org/jira/browse/DERBY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kathey Marsden updated DERBY-3243:
--

Attachment: derby-3243_stat.txt
derby-3243_diff.txt

Attached is a patch which implements Oystein's suggestion to exclude the 
extended length value from being a valid locator value.  I had to exclude 
0x8000, 0x8002, 0x8004, and 0x8008 as these are all possible valid values with 
10.1.

I tried the repro with the patch with various version combinations of 10.1, 
10.2 and  trunk with the patch.
I am running tests now.


> (jdbc net client) exception during normal iteration through "ResultSet" of 
> "select * from t"
> 
>
> Key: DERBY-3243
> URL: https://issues.apache.org/jira/browse/DERBY-3243
> Project: Derby
>  Issue Type: Bug
>  Components: JDBC
>Affects Versions: 10.3.2.1
> Environment: -- Java Information --
> Java Version:1.4.2_03
> Java Vendor: Sun Microsystems Inc.
> Java home:   C:\Programme\Java\j2re1.4.2_03
> Java classpath:  derbyclient.jar
> OS name: Windows XP
> OS architecture: x86
> OS version:  5.1
> Java user name:  cbdqok
> Java user home:  C:\Dokumente und Einstellungen\cbdqok
> Java user dir:   D:\users\cbdqok\privat\osj\lib_derby_net\lib
> java.specification.name: Java Platform API Specification
> java.specification.version: 1.4
> - Derby Information 
> JRE - JDBC: J2SE 1.4.2 - JDBC 3.0
> [D:\users\cbdqok\privat\osj\lib_derby_net\lib\derbyclient.jar] 10.3.1.4 - 
> (561794)
> --
> - Locale Information -
> --
>Reporter: Oliver Seidel
>Priority: Critical
> Attachments: derby-3243_diff.txt, 
> derby-3243_fix_double_hashmap_entry_diff.txt, 
> derby-3243_fix_double_hashmap_entry_diff2.txt, 
> derby-3243_fix_double_hashmap_entry_stat.txt, derby-3243_stat.txt
>
>
> Thanks again to the DERBY developers.
> For my convenience I use the client/server variant of DERBY.  This is where 
> the error occurs.  I have temporarily alleviated the problem for my case by 
> using the embedded version.
> I'm forced to use outlook and have built a program which siphons the messages 
> into a derby database (phase 1 -- table has two varchar fields and a clob).  
> When reading them back (phase 2 -- simple select of all records in no 
> particular order, all 3 attributes), it has developed an exception.  This is 
> a result of data volume.  I have reduced the problem to a single 
> demonstration program.
> This behaviour, and the fact that the error is not a "DERBY Exception", but a 
> proper exception coming back from the JDBC call, leads me to the diagnosis 
> that it is a derby network client jdbc problem.
> The problem has been reproduced once by Bryan Pendleton: 
> http://www.nabble.com/IndexOutOfBoundsException-t4926228.html
> I'll try to attach the code "error.java"; it can also be found on: 
> http://www.os1.net/error.java
> Please use as follows:
> javac -classpath derby.jar:derbynet.jar error.java
> java -cp .:derby.jar:derbynet.jar error
> It will create a directory "test_db" and fill it with approx 120mb data.
> Then you will observe the failure. 
> /* -*- Mode:Java; c-basic-offset:8 -*- */
> // 
> 
> public class error {
>   // 
> 
>   public static final int port = 1527;
>   public static final String host = "127.0.0.1";
>   // 
> 
>   public static void log(String x) { System.out.println(x); };
>   // 
> 
>   public static void log_stacktrace(Exception e) {
> java.io.StringWriter sw = new java.io.StringWriter();
> java.io.PrintWriter pw = new java.io.PrintWriter(sw);
> e.printStackTrace(pw);
> log(sw.toString());
>   };
>   // 
> 
>   public static void start_server() {
>   try {
>   org.apache.derby.drda.NetworkServerControl server =
>   new 
> org.apache.derby.drda.NetworkServerControl(java.net.InetAddress.getByName(host),port);
>   server.start(null);
>   try { java.lang.Thread.sleep(5000); } catch (Exception 
> e) { };
>   log("started DERBY on host "+host+" port 
> "+Integer.toString(port)+".");

[jira] Updated: (DERBY-3243) (jdbc net client) exception during normal iteration through "ResultSet" of "select * from t"

2008-02-01 Thread Kathey Marsden (JIRA)

 [ 
https://issues.apache.org/jira/browse/DERBY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kathey Marsden updated DERBY-3243:
--

Attachment: derby-3243_diff2.txt

Attached is derby-3243_diff.txt addressing Knut's comments to skip negative and 
0 locators.


> (jdbc net client) exception during normal iteration through "ResultSet" of 
> "select * from t"
> 
>
> Key: DERBY-3243
> URL: https://issues.apache.org/jira/browse/DERBY-3243
> Project: Derby
>  Issue Type: Bug
>  Components: JDBC
>Affects Versions: 10.3.2.1
> Environment: -- Java Information --
> Java Version:1.4.2_03
> Java Vendor: Sun Microsystems Inc.
> Java home:   C:\Programme\Java\j2re1.4.2_03
> Java classpath:  derbyclient.jar
> OS name: Windows XP
> OS architecture: x86
> OS version:  5.1
> Java user name:  cbdqok
> Java user home:  C:\Dokumente und Einstellungen\cbdqok
> Java user dir:   D:\users\cbdqok\privat\osj\lib_derby_net\lib
> java.specification.name: Java Platform API Specification
> java.specification.version: 1.4
> - Derby Information 
> JRE - JDBC: J2SE 1.4.2 - JDBC 3.0
> [D:\users\cbdqok\privat\osj\lib_derby_net\lib\derbyclient.jar] 10.3.1.4 - 
> (561794)
> --
> - Locale Information -
> --
>Reporter: Oliver Seidel
>Priority: Critical
> Attachments: derby-3243_diff.txt, derby-3243_diff2.txt, 
> derby-3243_fix_double_hashmap_entry_diff.txt, 
> derby-3243_fix_double_hashmap_entry_diff2.txt, 
> derby-3243_fix_double_hashmap_entry_stat.txt, derby-3243_stat.txt
>
>
> Thanks again to the DERBY developers.
> For my convenience I use the client/server variant of DERBY.  This is where 
> the error occurs.  I have temporarily alleviated the problem for my case by 
> using the embedded version.
> I'm forced to use outlook and have built a program which siphons the messages 
> into a derby database (phase 1 -- table has two varchar fields and a clob).  
> When reading them back (phase 2 -- simple select of all records in no 
> particular order, all 3 attributes), it has developed an exception.  This is 
> a result of data volume.  I have reduced the problem to a single 
> demonstration program.
> This behaviour, and the fact that the error is not a "DERBY Exception", but a 
> proper exception coming back from the JDBC call, leads me to the diagnosis 
> that it is a derby network client jdbc problem.
> The problem has been reproduced once by Bryan Pendleton: 
> http://www.nabble.com/IndexOutOfBoundsException-t4926228.html
> I'll try to attach the code "error.java"; it can also be found on: 
> http://www.os1.net/error.java
> Please use as follows:
> javac -classpath derby.jar:derbynet.jar error.java
> java -cp .:derby.jar:derbynet.jar error
> It will create a directory "test_db" and fill it with approx 120mb data.
> Then you will observe the failure. 
> /* -*- Mode:Java; c-basic-offset:8 -*- */
> // 
> 
> public class error {
>   // 
> 
>   public static final int port = 1527;
>   public static final String host = "127.0.0.1";
>   // 
> 
>   public static void log(String x) { System.out.println(x); };
>   // 
> 
>   public static void log_stacktrace(Exception e) {
> java.io.StringWriter sw = new java.io.StringWriter();
> java.io.PrintWriter pw = new java.io.PrintWriter(sw);
> e.printStackTrace(pw);
> log(sw.toString());
>   };
>   // 
> 
>   public static void start_server() {
>   try {
>   org.apache.derby.drda.NetworkServerControl server =
>   new 
> org.apache.derby.drda.NetworkServerControl(java.net.InetAddress.getByName(host),port);
>   server.start(null);
>   try { java.lang.Thread.sleep(5000); } catch (Exception 
> e) { };
>   log("started DERBY on host "+host+" port 
> "+Integer.toString(port)+".");
>   } catch (Exception e) {
>   log_stacktrace(e);
>   };
>   };
>   // 
> 
>   public static java.sql.Connection con()
>   throws java.sql.SQLExcept

[jira] Updated: (DERBY-3243) (jdbc net client) exception during normal iteration through "ResultSet" of "select * from t"

2008-02-05 Thread Kathey Marsden (JIRA)

 [ 
https://issues.apache.org/jira/browse/DERBY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kathey Marsden updated DERBY-3243:
--

Derby Info: [Patch Available, Regression]  (was: [Regression, Existing 
Application Impact, Patch Available])

Unchecking Existing Application Impact. This fix does not require any action or 
have impact on existing applications.


> (jdbc net client) exception during normal iteration through "ResultSet" of 
> "select * from t"
> 
>
> Key: DERBY-3243
> URL: https://issues.apache.org/jira/browse/DERBY-3243
> Project: Derby
>  Issue Type: Bug
>  Components: JDBC
>Affects Versions: 10.3.2.1
> Environment: -- Java Information --
> Java Version:1.4.2_03
> Java Vendor: Sun Microsystems Inc.
> Java home:   C:\Programme\Java\j2re1.4.2_03
> Java classpath:  derbyclient.jar
> OS name: Windows XP
> OS architecture: x86
> OS version:  5.1
> Java user name:  cbdqok
> Java user home:  C:\Dokumente und Einstellungen\cbdqok
> Java user dir:   D:\users\cbdqok\privat\osj\lib_derby_net\lib
> java.specification.name: Java Platform API Specification
> java.specification.version: 1.4
> - Derby Information 
> JRE - JDBC: J2SE 1.4.2 - JDBC 3.0
> [D:\users\cbdqok\privat\osj\lib_derby_net\lib\derbyclient.jar] 10.3.1.4 - 
> (561794)
> --
> - Locale Information -
> --
>Reporter: Oliver Seidel
>Assignee: Kathey Marsden
>Priority: Critical
> Fix For: 10.3.2.2, 10.4.0.0
>
> Attachments: derby-3243_diff.txt, derby-3243_diff2.txt, 
> derby-3243_fix_double_hashmap_entry_diff.txt, 
> derby-3243_fix_double_hashmap_entry_diff2.txt, 
> derby-3243_fix_double_hashmap_entry_stat.txt, derby-3243_stat.txt
>
>
> Thanks again to the DERBY developers.
> For my convenience I use the client/server variant of DERBY.  This is where 
> the error occurs.  I have temporarily alleviated the problem for my case by 
> using the embedded version.
> I'm forced to use outlook and have built a program which siphons the messages 
> into a derby database (phase 1 -- table has two varchar fields and a clob).  
> When reading them back (phase 2 -- simple select of all records in no 
> particular order, all 3 attributes), it has developed an exception.  This is 
> a result of data volume.  I have reduced the problem to a single 
> demonstration program.
> This behaviour, and the fact that the error is not a "DERBY Exception", but a 
> proper exception coming back from the JDBC call, leads me to the diagnosis 
> that it is a derby network client jdbc problem.
> The problem has been reproduced once by Bryan Pendleton: 
> http://www.nabble.com/IndexOutOfBoundsException-t4926228.html
> I'll try to attach the code "error.java"; it can also be found on: 
> http://www.os1.net/error.java
> Please use as follows:
> javac -classpath derby.jar:derbynet.jar error.java
> java -cp .:derby.jar:derbynet.jar error
> It will create a directory "test_db" and fill it with approx 120mb data.
> Then you will observe the failure. 
> /* -*- Mode:Java; c-basic-offset:8 -*- */
> // 
> 
> public class error {
>   // 
> 
>   public static final int port = 1527;
>   public static final String host = "127.0.0.1";
>   // 
> 
>   public static void log(String x) { System.out.println(x); };
>   // 
> 
>   public static void log_stacktrace(Exception e) {
> java.io.StringWriter sw = new java.io.StringWriter();
> java.io.PrintWriter pw = new java.io.PrintWriter(sw);
> e.printStackTrace(pw);
> log(sw.toString());
>   };
>   // 
> 
>   public static void start_server() {
>   try {
>   org.apache.derby.drda.NetworkServerControl server =
>   new 
> org.apache.derby.drda.NetworkServerControl(java.net.InetAddress.getByName(host),port);
>   server.start(null);
>   try { java.lang.Thread.sleep(5000); } catch (Exception 
> e) { };
>   log("started DERBY on host "+host+" port 
> "+Integer.toString(port)+".");
>   } catch (Exception e) {
>   log_stacktrace(e);
>   };
>