ArrayIndexOutOfBoundsException in DDMReader, on a specific data size
--------------------------------------------------------------------
Key: DERBY-1533
URL: http://issues.apache.org/jira/browse/DERBY-1533
Project: Derby
Issue Type: Bug
Components: Network Server
Affects Versions: 10.1.3.1, 10.1.2.1
Environment: --------- Derby Network Server Information --------
Version: CSS10011/10.1.3.1 Build: 417277 DRDA Product Id: CSS10011
-- listing properties --
derby.drda.maxThreads=0
derby.drda.keepAlive=true
derby.drda.minThreads=0
derby.drda.portNumber=1527
derby.drda.logConnections=false
derby.drda.timeSlice=0
derby.drda.startNetworkServer=false
derby.drda.host=localhost
derby.drda.traceAll=false
------------------ Java Information ------------------
Java Version: 1.4.2_08
Java Vendor: Sun Microsystems Inc.
OS name: Windows XP
OS architecture: x86
OS version: 5.1
java.specification.name: Java Platform API Specification
java.specification.version: 1.4
--------- Derby Information --------
JRE - JDBC: J2SE 1.4.2 - JDBC 3.0
[C:\dev\derby\lib\derby.jar] 10.1.3.1 - (417277)
[C:\dev\derby\lib\derbytools.jar] 10.1.3.1 - (417277)
[C:\dev\derby\lib\derbynet.jar] 10.1.3.1 - (417277)
------------------------------------------------------
Reporter: Wiktor Lisowicz
As far as I know, this bug is not related to DERBY-428 bug.
I got this bug both on 10.1.3.1 and 10.1.2.1 - an
ArrayIndexOutOfBoundsException in DDMReader (in Network Server).
To reproduce the bug:
1. Compile the attached DerbyTest.java
2. Start the Network Server (startNetworkServer.bat under Windows)
3. Run: java DerbyTest
On client side you get:
org.apache.derby.client.am.DisconnectException: The DDM object is not
supported. Unsupported DDM object code point: 0x0
at
org.apache.derby.client.net.NetConnectionReply.doObjnsprmSemantics(Unknown
Source)
at
org.apache.derby.client.net.NetConnectionReply.parseCommonError(Unknown Source)
at
org.apache.derby.client.net.NetStatementReply.parseExecuteError(Unknown Source)
at
org.apache.derby.client.net.NetStatementReply.parseEXCSQLSTTreply(Unknown
Source)
at org.apache.derby.client.net.NetStatementReply.readExecute(Unknown
Source)
at org.apache.derby.client.net.StatementReply.readExecute(Unknown
Source)
at
org.apache.derby.client.net.NetPreparedStatement.readExecute_(Unknown Source)
at org.apache.derby.client.am.PreparedStatement.readExecute(Unknown
Source)
at org.apache.derby.client.am.PreparedStatement.flowExecute(Unknown
Source)
at org.apache.derby.client.am.PreparedStatement.executeX(Unknown Source)
at org.apache.derby.client.am.PreparedStatement.execute(Unknown Source)
at DerbyTest.main(DerbyTest.java:479)
On server side you get:
java.lang.ArrayIndexOutOfBoundsException
at java.lang.System.arraycopy(Native Method)
at org.apache.derby.impl.drda.DDMReader.compressBLayerData(Unknown
Source)
at
org.apache.derby.impl.drda.DDMReader.ensureBLayerDataInBuffer(Unknown Source)
at org.apache.derby.impl.drda.DDMReader.readNetworkShort(Unknown Source)
at org.apache.derby.impl.drda.DDMReader.readLDStringData(Unknown Source)
at org.apache.derby.impl.drda.DRDAConnThread.readAndSetParams(Unknown
Source)
at org.apache.derby.impl.drda.DRDAConnThread.parseSQLDTA_work(Unknown
Source)
at org.apache.derby.impl.drda.DRDAConnThread.parseSQLDTA(Unknown Source)
at
org.apache.derby.impl.drda.DRDAConnThread.parseEXCSQLSTTobjects(Unknown Source)
at org.apache.derby.impl.drda.DRDAConnThread.parseEXCSQLSTT(Unknown
Source)
at org.apache.derby.impl.drda.DRDAConnThread.processCommands(Unknown
Source)
at org.apache.derby.impl.drda.DRDAConnThread.run(Unknown Source)
agentThread[DRDAConnThread_11,5,main]
null
java.lang.ArrayIndexOutOfBoundsException
at java.lang.System.arraycopy(Native Method)
at org.apache.derby.impl.drda.DDMReader.compressBLayerData(Unknown
Source)
at
org.apache.derby.impl.drda.DDMReader.ensureBLayerDataInBuffer(Unknown Source)
at org.apache.derby.impl.drda.DDMReader.readNetworkShort(Unknown Source)
at org.apache.derby.impl.drda.DDMReader.readLDStringData(Unknown Source)
at org.apache.derby.impl.drda.DRDAConnThread.readAndSetParams(Unknown
Source)
at org.apache.derby.impl.drda.DRDAConnThread.parseSQLDTA_work(Unknown
Source)
at org.apache.derby.impl.drda.DRDAConnThread.parseSQLDTA(Unknown Source)
at
org.apache.derby.impl.drda.DRDAConnThread.parseEXCSQLSTTobjects(Unknown Source)
at org.apache.derby.impl.drda.DRDAConnThread.parseEXCSQLSTT(Unknown
Source)
at org.apache.derby.impl.drda.DRDAConnThread.processCommands(Unknown
Source)
at org.apache.derby.impl.drda.DRDAConnThread.run(Unknown Source)
--
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