Issue Details (XML | Word | Printable)

Key: DERBY-3230
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Critical Critical
Assignee: Kathey Marsden
Reporter: Stefan Huber
Votes: 0
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
Derby

Selecting data from a Table raises Error XN008: Query processing has been terminated due to an error on the server

Created: 27/Nov/07 09:50 AM   Updated: 30/Jun/09 03:55 PM
Return to search
Component/s: Network Client, Network Server
Affects Version/s: 10.3.1.4
Fix Version/s: 10.3.3.0, 10.4.1.3

Time Tracking:
Not Specified

File Attachments:
  Size
Text File Licensed for inclusion in ASF works derby-3230_diff.txt 2008-01-17 12:06 AM Kathey Marsden 3 kB
Text File Licensed for inclusion in ASF works derby-3230_stat.txt 2008-01-17 12:00 AM Kathey Marsden 0.2 kB
Java Source File Licensed for inclusion in ASF works Repro3230.java 2008-01-16 12:48 AM Kathey Marsden 3 kB
File Licensed for inclusion in ASF works test.rar 2007-11-27 09:53 AM Stefan Huber 358 kB
Java Source File Licensed for inclusion in ASF works TestBoundaries.java 2008-01-15 05:11 PM Kathey Marsden 2 kB
Environment: Windows XP

Urgency: Urgent
Issue & fix info: Patch Available
Bug behavior facts: Regression
Resolution Date: 17/Jan/08 06:11 PM


 Description  « Hide
I got a table (PCLASS) in my database where I cannot select the data via a simple select statement:
- If I execute 'select * from PCLASS': XN008: Query processing has been terminated due to an error on the server
- If I execute 'select * from PCLASS order by CLASSNAME': it works
- If I add or remove only one row to/from the table: it works

If I use the embedded driver everything works fine. But as soon as I use the derby network client to access the database, this problem occurs.

This is very odd. I spent a lot of time to do some research on this behavior because I could not believe that the network client produces errors depending on the data contained in a table. But after all it looks like I managed to fill the table with an exact amount of data that causes this error to arise.

To reproduce the problem download the attached file and follow these instructions:
* extract test.rar to $derby.system.home$
* start derby network server
* start ji utility and execute the following commands:
** connect to database test using client driver:
connect 'jdbc:derby://localhost/test;user=ZOL;password=zol';
** select content of table PCLASS
select * from PCLASS;
--> Error XN008: Query processing has been terminated due to an error on the server

** disconnect from database
disconnect;
** shutdown database 'test'
connect 'jdbc:derby://localhost/test;user=ZOL;password=zol;shutdown=true';
** connect to database 'test' using embedded driver:
connect 'jdbc:derby:test;user=ZOL;password=zol';
** select content of table PCLASS
select * from PCLASS;
--> everything o.k.


 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Repository Revision Date User Message
ASF #612849 Thu Jan 17 15:51:40 UTC 2008 kmarsden DERBY-3230 Selecting data from a Table raises Error XN008: Query processing has been terminated due to an error on the server

The solution was to move the retrieval of all of the data associated with the QRYDTA before the ResultSet is marked as closed on the server.
Files Changed
MODIFY /db/derby/code/trunk/java/client/org/apache/derby/client/net/NetCursor.java
MODIFY /db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/derbynet/PrepareStatementTest.java

Repository Revision Date User Message
ASF #612901 Thu Jan 17 18:10:46 UTC 2008 kmarsden DERBY-3230 Selecting data from a Table raises Error XN008: Query processing has been terminated due to an error on the server

port revision 612849 from trunk.
Files Changed
MODIFY /db/derby/code/branches/10.3/java/client/org/apache/derby/client/net/NetCursor.java
MODIFY /db/derby/code/branches/10.3/java/testing/org/apache/derbyTesting/functionTests/tests/derbynet/PrepareStatementTest.java