Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-7191

CacheManager.removeCache leaks

    XMLWordPrintable

Details

    • Bug
    • Resolution: Obsolete
    • Major
    • None
    • 8.2.4.Final, 10.1.1.Final
    • None
    • None
    • Hide

      See the attached JUnit test for Infinispan 8.2.4. Three different leaks are documented in the test. Static constants can be used to vary which leaks are "fixed". The fixes are reflective runtime hacks, but suffice to demonstrate the nature of the leaks. It is best to run the test with very little heap: -Xmx32m

      — The class JavaDoc reads —

      This is a test which tries to use Infinispan for a large number of anonymous transient caches. Such caches may live for a very long time, or a short time, but are generally not given well-known-names so they can be shared with others. Internally we like to call these "local unshared" caches.

      There are 3 leaks which prevent this from working. The first two only manifest if Cache.stop() is called before EmbeddedCacheManager.removeCache(String), the third always manifests. Using a simple cache does not seem to affect the leaks.

      Show
      See the attached JUnit test for Infinispan 8.2.4. Three different leaks are documented in the test. Static constants can be used to vary which leaks are "fixed". The fixes are reflective runtime hacks, but suffice to demonstrate the nature of the leaks. It is best to run the test with very little heap: -Xmx32m — The class JavaDoc reads — This is a test which tries to use Infinispan for a large number of anonymous transient caches. Such caches may live for a very long time, or a short time, but are generally not given well-known-names so they can be shared with others. Internally we like to call these "local unshared" caches. There are 3 leaks which prevent this from working. The first two only manifest if Cache.stop() is called before EmbeddedCacheManager.removeCache(String), the third always manifests. Using a simple cache does not seem to affect the leaks.

    Description

      Tests to try to use Infinispan caches for a large number of anonymous transient caches eventually runs out of memory. 3 different kinds of leaks were identified.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              rgustav_jira Ryan Gustafson (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: