Uploaded image for project: 'Geode'
  1. Geode
  2. GEODE-10328

Cache close with partitioned regions does not close all the region's statistics

    XMLWordPrintableJSON

Details

    Description

      I noticed when looking at hprof memory dumps of a JVM whose cache had been closed that something was keeping the PartitionedRegion instances from being garbage collected. It turns out that the region's RegionPerfStats instance was not closed. Other stats for the region were closed but not the one owned by PartitionedRegionDataStore's bucketStats instance variable. This indicates that the PartitionedRegionDataStore.cleanUp method is not being called.
      It looks like the bug is in: PartitionedRegion.postDestroyRegion. It has a code path that handles Operation.CACHE_CLOSE and Operation.FORCED_DISCONNECT without calling "closePartitionedRegion" which invokes "dataStore.cleanup".
      This buggy code path has its reasons for not calling closePartitionedRegion. To fix this bug it would be easy and safe to have this code path call dataStore.getCachePerfStats().close()

      Attachments

        Issue Links

          Activity

            People

              dschneider Darrel Schneider
              dschneider Darrel Schneider
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: