Derby
  1. Derby
  2. DERBY-2381

ParameterMappingTest fails due to ArrayIndexOutOfBoundsException executing a procedure

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 10.3.1.4
    • Fix Version/s: 10.3.1.4
    • Component/s: Network Client
    • Labels:
      None

      Description

      The test ParameterMappingTest fails due to a connection reset error during tearDown. Commenting out the teardown actions I see that the real cause of the connection reset is an ArrayIndexOutOfBoundsException executing a callable statement. I have not narrowed it down more than this. Currently the test runs only for embedded. It should be reenabled for client once this bug is fixed. Below is the stack trace:

      java.lang.ArrayIndexOutOfBoundsException
      at java.lang.System.arraycopy(Native Method)
      at org.apache.derby.client.net.Reply.shiftBuffer(Reply.java:107)
      at org.apache.derby.client.net.Reply.ensureSpaceInBufferForFill(Reply.java:153)
      at org.apache.derby.client.net.Reply.fill(Reply.java:165)
      at org.apache.derby.client.net.Reply.ensureALayerDataInBuffer(Reply.java(Compiled Code))
      at org.apache.derby.client.net.Reply.readDssHeader(Reply.java:317)
      at org.apache.derby.client.net.Reply.peekCodePoint(Reply.java:1008)
      at org.apache.derby.client.net.NetStatementReply.parseEXCSQLSTTreply(NetStatementReply.java:324)
      at org.apache.derby.client.net.NetStatementReply.readExecuteCall(NetStatementReply.java:105)
      at org.apache.derby.client.net.StatementReply.readExecuteCall(StatementReply.java:75)
      at org.apache.derby.client.net.NetStatement.readExecuteCall_(NetStatement.java:176)
      at org.apache.derby.client.am.Statement.readExecuteCall(Statement.java:1464)
      at org.apache.derby.client.am.PreparedStatement.flowExecute(PreparedStatement.java:2151)
      at org.apache.derby.client.am.PreparedStatement.executeX(PreparedStatement.java:1571)
      at org.apache.derby.client.am.PreparedStatement.execute(PreparedStatement.java:1556)
      at org.apache.derbyTesting.functionTests.tests.jdbcapi.ParameterMappingTest.testParameterMapping(ParameterMappingTest.java:487)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60)
      at java.lang.reflect.Method.invoke(Method.java:391)
      at junit.framework.TestCase.runTest(TestCase.java:154)
      at junit.framework.TestCase.runBare(TestCase.java:127)
      at org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:76)
      at junit.framework.TestResult$1.protect(TestResult.java:106)
      at junit.framework.TestResult.runProtected(TestResult.java:124)
      at junit.framework.TestResult.run(TestResult.java:109)
      at junit.framework.TestCase.run(TestCase.java:118)
      at junit.framework.TestSuite.runTest(TestSuite.java:208)
      at junit.framework.TestSuite.run(TestSuite.java:203)
      at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
      at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
      at junit.framework.TestResult.runProtected(TestResult.java:124)
      at junit.extensions.TestSetup.run(TestSetup.java:23)
      at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
      at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
      at junit.framework.TestResult.runProtected(TestResult.java:124)
      at junit.extensions.TestSetup.run(TestSetup.java:23)
      at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:128)
      at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
      at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
      at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
      at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
      at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)

      1. d2381.java
        1 kB
        Knut Anders Hatlen
      2. DERBY-2381_diff.txt
        8 kB
        Kathey Marsden
      3. DERBY-2381_stat.txt
        0.3 kB
        Kathey Marsden

        Issue Links

          Activity

          Gavin made changes -
          Workflow jira [ 12398460 ] Default workflow, editable Closed status [ 12800669 ]
          Kathey Marsden made changes -
          Status Resolved [ 5 ] Closed [ 6 ]
          Kathey Marsden made changes -
          Fix Version/s 10.3.0.0 [ 12310800 ]
          Status Open [ 1 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Kathey Marsden made changes -
          Comment [ After syncing up with DERBY-2604, the test case attached to this issue and ParameterMappingTest no longer pass.
          The new trace is below. There is no exception on the server.

          Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException
                  at java.lang.System.arraycopy(Native Method)
                  at org.apache.derby.client.net.Reply.shiftBuffer(Reply.java:107)
                  at org.apache.derby.client.net.Reply.ensureSpaceInBufferForFill(Reply.java:153)
                  at org.apache.derby.client.net.Reply.fill(Reply.java:165)
                  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.peekCodePoint(Reply.java:1008)
                  at org.apache.derby.client.net.NetStatementReply.parseEXCSQLSTTreply(NetStatementReply.java:324)
                  at org.apache.derby.client.net.NetStatementReply.readExecuteCall(NetStatementReply.java:105)
                  at org.apache.derby.client.net.StatementReply.readExecuteCall(StatementReply.java:75)
                  at org.apache.derby.client.net.NetStatement.readExecuteCall_(NetStatement.java:176)
                  at org.apache.derby.client.am.Statement.readExecuteCall(Statement.java:1464)
                  at org.apache.derby.client.am.PreparedStatement.flowExecute(PreparedStatement.java:2157)
                  at org.apache.derby.client.am.PreparedStatement.executeX(PreparedStatement.java:1577)
                  at org.apache.derby.client.am.PreparedStatement.execute(PreparedStatement.java:1562)
                  at d2381.main(D2381.java:39)

          ]
          Kathey Marsden made changes -
          Attachment DERBY-2381_stat.txt [ 12356675 ]
          Kathey Marsden made changes -
          Attachment DERBY-2381_diff.txt [ 12356674 ]
          Kathey Marsden made changes -
          Assignee Kathey Marsden [ kmarsden ]
          Knut Anders Hatlen made changes -
          Attachment d2381.java [ 12354069 ]
          Kathey Marsden made changes -
          Field Original Value New Value
          Link This issue blocks DERBY-2333 [ DERBY-2333 ]
          Kathey Marsden created issue -

            People

            • Assignee:
              Kathey Marsden
              Reporter:
              Kathey Marsden
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development