Uploaded image for project: 'Jackrabbit Content Repository'
  1. Jackrabbit Content Repository
  2. JCR-3775

Avoid lock contention in ISO8601.parse()

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.8
    • Component/s: jackrabbit-jcr-commons
    • Labels:
      None

      Description

      The ISO8601.parse() method calls the synchronized TimeZone.getTimeZone() method, which causes lock contention in concurrent code that frequently parses ISO8601 strings.

      To avoid the synchronization, we could use a static flyweight map of all known time zones, and only fall back to the getTimeZone() method if some unknown time zone is encountered.

        Attachments

          Activity

            People

            • Assignee:
              jukkaz Jukka Zitting
              Reporter:
              jukkaz Jukka Zitting
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: