Jetspeed 2
  1. Jetspeed 2
  2. JS2-800

Memeory Leak Caused by org.apache.jetspeed.container.window.impl.PortletWindowAccessorImpl

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.1.2
    • Fix Version/s: 2.1.3, 2.2.0
    • Component/s: None
    • Labels:
      None

      Description

      org.apache.jetspeed.container.window.impl.PortletWindowAccessorImpl uses a straight HashMap to cache instances of portlet windows. In high-usages environments this can cause enough of a memory leak to crash the JVM.

      1. TopObjects.Png
        38 kB
        Scott T Weaver
      2. PortletWindowAccessor.Png
        6 kB
        Scott T Weaver

        Activity

        Hide
        Scott T Weaver added a comment -

        Sample profiler output prior to fixes: http://people.apache.org/~taylor/large_profiler_hashmap.jpeg

        Show
        Scott T Weaver added a comment - Sample profiler output prior to fixes: http://people.apache.org/~taylor/large_profiler_hashmap.jpeg
        Hide
        Scott T Weaver added a comment -

        Here is the YourKit top object capture after implementing a cache for PortletWindows.

        Show
        Scott T Weaver added a comment - Here is the YourKit top object capture after implementing a cache for PortletWindows.
        Hide
        Scott T Weaver added a comment -

        The capture was tested with 20 different user hitting simultaneously for about a minute.

        Show
        Scott T Weaver added a comment - The capture was tested with 20 different user hitting simultaneously for about a minute.
        Hide
        Scott T Weaver added a comment -

        Uploaded the PortletWindowAccessorImpl it now uses virtually no memory.

        Show
        Scott T Weaver added a comment - Uploaded the PortletWindowAccessorImpl it now uses virtually no memory.
        Hide
        Scott T Weaver added a comment -

        A better top object listing using the the newest version of YourKit.

        Show
        Scott T Weaver added a comment - A better top object listing using the the newest version of YourKit.
        Hide
        Ate Douma added a comment -

        Adding this feature to 2.2 too now.
        I will commit the synchronization of this feature to trunk shortly

        Show
        Ate Douma added a comment - Adding this feature to 2.2 too now. I will commit the synchronization of this feature to trunk shortly

          People

          • Assignee:
            Scott T Weaver
            Reporter:
            Scott T Weaver
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development