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

Purging cache writers is [mostly] redundant when eviction is disabled and preload is enabled

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • 8.2.2.Final
    • Loaders and Stores
    • None

      This issue arised when I was testing a cluster with about 16 million entries. Our configuration is that all the data is also kept in memory, so eviction is disabled in this cache. But expiration is enabled. During the test I noticed pauses that started small but increased while the test was progressing, reaching more than 20 seconds at one point. After ruling out maintenance tasks in MySQL that could interfere, I discovered that the pause is caused by the expiration thread purging the database for expired entries. This was a huge and unnecessary drag so I hacked Infinispan to skip the purge of persistent state in cases when it's likely to be redundant with purging the transient state. I say "likely" because entries evicted maually via the evict() call poke a huge hole in the underlying assumptions Anyway, our cluster no longer regularly pauses for half a minute, so here's something for your consideration.

            Unassigned Unassigned
            ksobolewski_jira Krzysztof Sobolewski (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: