Uploaded image for project: 'Sling'
  1. Sling
  2. SLING-4783

The JavaScript scripting engine can generate classloader leaks

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    Description

      The implementation of the JavaScript scripting engine, based on Rhino, can lead to classloader leaks due to Rhino's ClassCache if the used classloader for loading objects is a DynamicClassLoader. The cache is used by default to cache object translation from JavaScript to Java and generally outlives the objects it stores, holding a hard reference to them.

      Disabling the cache is not a solution as synthetic tests proved that the execution of JavaScript code had increased two times.

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            radu Radu Cotescu
            radu Radu Cotescu
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment