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

Configured eviction bases on COUNT will unexpected start eviction to early and might evict until the cache is empty

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Do
    • Icon: Critical Critical
    • None
    • JDG 7.3 GA, JDG 7.3.1 GA, JDG 7.3.2 GA
    • None

      If a cache is populated and configured with eviction and maybe expiration the eviction will start earlier than expected and the size count will go down to more or less 0.

      Assume the cache is configured like this
      <distributed-cache name="ExpirationCache">
      <memory>
      <binary eviction="COUNT" size="120"/>
      </memory>
      <expiration lifespan="60000" interval="-1"/>
      </distributed-cache>

      The client is simple and add a new entry every second to keep the monitoring simple
      minute 1 - entries are added up to ~59 without eviction
      minute 2 - entries are added but the cache.size() is still 59
      CLI check attribute number_of_entries and evictions for the cache
      shows the same size and no eviction
      minute 3 - continue adding, cache.size()==59 but
      CLI shows the same size and increasing evictions
      minute 4 - still adding but size() decrease as well as CLI n-o-e and evictions grow

      The fact is that having less than 120 entries in the cache is unexpected as well as remove more entries after a time.
      The issue remain for
      <off-heap> and <object> with object count.
      as well as without exiration element or configured with interval - here the entries are expiring but eviction will have effects as well and drop the cache content unexpected.
      So it seems not releated to expiration at all

              rhn-support-wfink Wolf Fink
              rhn-support-wfink Wolf Fink
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: