Tapestry 5
  1. Tapestry 5
  2. TAP5-945

Unnecessary and severe lock contention in PerthreadManagerImpl

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 5.1.0.5
    • Fix Version/s: 5.2.0
    • Component/s: tapestry-core
    • Labels:
      None

      Description

      When load testing our new high-volume site before soft launch, we found that we have severe lock contention in org.apache.tapestry5.ioc.internal.services.PerthreadManagerImpl.

      It synchronizes on "this" before invoking ThreadLocal.get() and ThreadLocal.remove(), which I believe is unnecessary.

      During our tests, approximately 35% of all Tomcat threads were waiting for this lock in any of 10 thread dumps taken 15 seconds apart.

        Issue Links

          Activity

          No work has yet been logged on this issue.

            People

            • Assignee:
              Howard M. Lewis Ship
              Reporter:
              Olle Hallin
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development