Uploaded image for project: 'JBoss Transaction Manager'
  1. JBoss Transaction Manager
  2. JBTM-2266

TransactionReaper is using currentTimeMillis for timeout calculation

    Details

    • Type: Enhancement
    • Status: Open (View Workflow)
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 5.0.3
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      Noticed while browsing through some code that the TransactionReaper uses currentTimeMillis() to calculate timeouts. However the timestamp reported by this method can change in an unexpected way if the system clock is changed.

      An artificial clock based on System.nanoTime() should be used instead, since while this time may vary slightly between cores, in general it will be highly accurate and, most importantly, monotonic and steady (and unaffected by changes to the system time).

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                dmlloyd David Lloyd
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated: