Derby
  1. Derby
  2. DERBY-4521

Stream passed out to user does not heed close, allowing reads after next ResultSet#getXXX

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 10.0.2.0, 10.0.2.1, 10.1.1.0, 10.1.2.1, 10.1.3.1, 10.2.1.6, 10.2.2.0, 10.3.1.4, 10.3.2.1, 10.3.3.0, 10.4.1.3, 10.4.2.0, 10.5.1.1, 10.5.2.0, 10.5.3.0, 10.6.1.0, 10.6.2.1, 10.7.1.1
    • Fix Version/s: 10.9.1.0
    • Component/s: JDBC
    • Urgency:
      Low
    • Issue & fix info:
      Repro attached
    • Bug behavior facts:
      Deviation from standard, Embedded/Client difference

      Description

      This was discovered investigating DERBY-4477 using the repro for DERBY-3646, which erroneously
      tries to keep two streams passed out via REsultSet#getBinaryStream open at the same time. This is prohibited by JDBC [1],
      but Derby allows it for non-materialized streams because the close call on the passed out stream (performed by EmbedResultSet#closeCurrentStream at the time of the next getXXX) is not heed by the underlying Derby stream.

      [1] http://java.sun.com/j2se/1.5.0/docs/api/java/sql/ResultSet.html#getBinaryStream(int)

      1. repro.diff
        2 kB
        Dag H. Wanvik

        Issue Links

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              Dag H. Wanvik
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development