Uploaded image for project: 'Geronimo'
  1. Geronimo
  2. GERONIMO-555

Write a thread-safe timer/interrupt based transaction timout implementation

    Details

    • Type: New Feature
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: Wish List
    • Component/s: transaction manager
    • Labels:
      None

      Description

      This is a long term research project that will probably take a month of concentrated effort.

      We should investigate whether it is practical to have a thread safe timer/interrupt based transaction timeout implementation. A non-thread safe implementation was present prior to revision 128441.

      Among the issues that need to be investigated are the extent to which IO is actually interruptable and what existing drivers do when they are interrupted. For this to work, managed connections that get interrupted during io must be reliably destroyed.

      We should also investigate to what extent this provides a solution for deadlock resolution.

      If we decide that this is impractical, we should change the internal time unit for timeouts from milliseconds to seconds as proposed in GERONIMO-550

        Attachments

        1. TransactionManagerImpl.java
          13 kB
          Sajida Abdul Salam
        2. TransactionImpl.java
          29 kB
          Sajida Abdul Salam
        3. ThreadSafetyTest.java
          13 kB
          Sajida Abdul Salam
        4. patch.txt
          15 kB
          Sajida Abdul Salam
        5. geronimo_interrupts_POST
          8 kB
          Sajida Abdul Salam

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              djencks David Jencks
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated: