Uploaded image for project: 'Derby'
  1. Derby
  2. DERBY-3646

Embedded returns wrong results when selecting a blob column twice and using getBinaryStream()

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 10.1.3.1, 10.2.2.0, 10.3.3.0, 10.4.1.3, 10.5.1.1
    • Fix Version/s: 10.5.3.1, 10.6.1.0
    • Component/s: JDBC
    • Labels:
      None
    • Urgency:
      Normal
    • Issue & fix info:
      High Value Fix, Repro attached
    • Bug behavior facts:
      Wrong query result

      Description

      The attached program DoubleSelect selects a blob column twice and tries to access the blob column with getBinaryStream.

      With embedded the output is:
      4 5 6 7 8 9 10 11 12 13
      14 15 16 17 18 19 20 21 22 23
      I am done

      Two things seem to be happening with embedded.
      1) Both getBinaryStream() calls are returning the same stream.
      2) The second getBinaryStream() call throws away 4 bytes.

      With client the output is:
      Exception in thread "main" java.io.IOException: The object is already
      closed.
      at
      org.apache.derby.client.am.CloseFilterInputStream.read(CloseFilterInputStream.java:50)
      at DoubleSelect.printNextTen(DoubleSelect.java:53)
      at DoubleSelect.main(DoubleSelect.java:43)
      0 1 2 3 4 5 6 7 8 9
      So with client it looks like the second getBinaryStream() call closes
      the first stream but then returns the right result for the second stream.

      Perhaps embedded should behave the same as client or perhaps the query should just work. Regardless embedded should not return wrong results.

        Attachments

        1. DoubleSelect.java
          2 kB
          Kathey Marsden
        2. derby-3646_diff_10_5.txt
          16 kB
          Kathey Marsden

          Issue Links

            Activity

              People

              • Assignee:
                dagw Dag H. Wanvik
                Reporter:
                kmarsden Kathey Marsden
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: