Uploaded image for project: 'Red Hat Data Grid'
  1. Red Hat Data Grid
  2. JDG-6231

Compactor.java is not closing the files and causing acc on org.infinispan.persistence.manager.PersistenceManagerImpl

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Critical
    • RHDG 8.4.x CD
    • None
    • None
    • None
    • Important

    Description

      If expiration is enabled together with the file-store persistence there is a leak, accumulating on every invocation of the expiration reaper.

      Class Name                                                                                                  | Shallow Heap | Retained Heap
      -------------------------------------------------------------------------------------------------------------------------------------------
      org.infinispan.persistence.manager.PersistenceManagerImpl @ 0x4fcb97c40                                     |          104 | 4,928,584,776
      |- stores java.util.ArrayList @ 0x4fcb97ed8                                                                 |           24 | 4,928,584,544
      |  |- elementData java.lang.Object[1] @ 0x4fcb97ef0                                                         |           24 | 4,928,584,520
      |  |  |- [0] org.infinispan.persistence.manager.PersistenceManagerImpl$StoreStatus @ 0x4fcb97f08            |           32 | 4,928,584,496
      |  |  |  |- store org.infinispan.persistence.async.AsyncNonBlockingStore @ 0x4fcb97f28                      |           64 | 4,928,584,432
      |  |  |  |  |- actual org.infinispan.persistence.sifs.NonBlockingSoftIndexFileStore @ 0x4fcb97f68           |           72 | 4,928,584,320
      |  |  |  |  |  |- fileProvider org.infinispan.persistence.sifs.FileProvider @ 0x4fcb9dde0                   |           56 | 4,928,525,000
      |  |  |  |  |  |  |- iterators java.util.concurrent.ConcurrentHashMap$KeySetView @ 0x4fcb9f040              |           24 | 4,928,520,064
      |  |  |  |  |  |  |  |- map java.util.concurrent.ConcurrentHashMap @ 0x4fcb9f058                            |           64 | 4,928,520,040
      |  |  |  |  |  |  |  |  |- table java.util.concurrent.ConcurrentHashMap$Node[8192] @ 0x51728cc50            |       32,784 | 4,928,519,976
      |  |  |  |  |  |  |  |  |  |- [453] java.util.concurrent.ConcurrentHashMap$Node @ 0x517294f20               |           32 |     6,178,544
      |  |  |  |  |  |  |  |  |  |  |- next java.util.concurrent.ConcurrentHashMap$Node @ 0x517294f40             |           32 |     4,636,560
      |  |  |  |  |  |  |  |  |  |  |- key org.infinispan.persistence.sifs.FileProvider$FileIterator @ 0x4fe0bc128|           24 |     1,541,952  
      
      

      To mitigate this, if possible, the expiration reaper interval should be set to a lower frequency
      `<expiration interval="600000"/>`
      This will change the frequency from 1 minute (default) to 10 minutes.
      If it is expected that only a few entries expire in a preiod, or you have long expiration, like lifespan weeks or month, the interval might be set to 86400000 (1day) or 604800000 (1 week).
      This depends on the size of entries which are expiring and the amount of memory used by the RHDG instance.

      Attachments

        Issue Links

          Activity

            People

              wburns@redhat.com Will Burns
              fdemeloj1@redhat.com Francisco De Melo Junior
              Pavel Drobek Pavel Drobek
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: