Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-15816

Run.ID_FORMATTER caches stale timezone values

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • core
    • None

      If you change the timezone while Jenkins is running, the value of Run.ID_FORMATTER in some threads will reflect the new TZ while that in other threads reflects the old TZ. (Apparently SimpleDateFormat copies the TZ in effect when it was constructed.)

      In particular, executor threads (which create the ID) are likely to use the old value while HTTP service threads are likely to use the new value. The result is that Run.rootDir when evaluated from an HTTP thread refers to a nonexistent directory, so the console appears to be empty, etc.

      Since the format string omits Z the build’s ID is also ambiguous—must be interpreted according to the server’s local TZ.

            jglick Jesse Glick
            jglick Jesse Glick
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: