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

Isolation level of local connection does not get reset after exiting a global transaction if the isolation level was changed using SQL

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 10.1.3.1, 10.2.1.6
    • Fix Version/s: 10.1.3.1, 10.2.1.6
    • Component/s: JDBC
    • Labels:
      None

      Description

      If we update the isolation level using SQL instead of JDBC and then join/resume a global transaction, on ending the transaction, the isolation level of the local connection is not restored. The problem seems to be in EmbedXAResource. So it happens with both embedded and client driver. Client driver internally uses SQL to set the transaction isolation. So the problem is more likely to be hit with the client. I will attach a repro and a draft patch with more details.

        Attachments

        1. derby-1325-10.1.diff
          4 kB
          Deepa
        2. derby-1325-10.1.status
          0.3 kB
          Deepa
        3. derby-1325-draft.diff
          1 kB
          Deepa
        4. derby-1325-v1.diff
          12 kB
          Deepa
        5. derby-1325-v1.status
          0.6 kB
          Deepa
        6. derby-1325-v2.diff
          4 kB
          Deepa
        7. derby-1325-v2.status
          0.4 kB
          Deepa
        8. SetIsolation_SQL_JDBC.java
          7 kB
          Deepa

        Issue Links

          Activity

            People

            • Assignee:
              deepa Deepa
              Reporter:
              deepa Deepa

              Dates

              • Created:
                Updated:
                Resolved:

                Issue deployment