Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
2.1
Description
TTL expire times for entries are stored in PendingEntriesTree, which is singleton for cache. When expiration occurs, all system threads iterate through the tree in order to remove expired entries. Iterating through single tree causes contention and perfomance loss.
Related performance issue: https://issues.apache.org/jira/browse/IGNITE-5793
We should keep instance of PendingEntriesTree for each partition, like we do for CacheDataTree.
Attachments
Attachments
Issue Links
- Blocked
-
IGNITE-7742 AssertionError in IgniteCacheOffheapManagerImpl when Iterate Cache with expire policy and persistence
- Resolved
- blocks
-
IGNITE-9707 TouchedExpiryPolicy with persistent on atomic cache, update TTL without lock
- Resolved
-
IGNITE-8046 New flaky tests added in JettyRestProcessorAuthenticationSelfTest
- Closed
-
IGNITE-7778 User's authentication data must be persisted on cluster with disabled persistence
- Open
- causes
-
IGNITE-8659 Wrong FreeList usage in PendingTree may lead to page corruption.
- Resolved
-
IGNITE-8681 Using ExpiryPolicy with persistence causes significant slowdown.
- Resolved
- is duplicated by
-
IGNITE-6959 Split a ttl index tree by partition
- Resolved
- is related to
-
IGNITE-6815 "Unexpected exception during cache update" via NullPointerException thrown using TouchedExpiryPolicy
- Resolved
-
IGNITE-8295 Possible deadlock on partition eviction.
- Closed
-
IGNITE-8483 Per partition TTL pending tree for in-memory caches.
- Open
- relates to
-
IGNITE-6964 Ignite restart with PDS enabled may cause delays in TTL cleanup worker
- Resolved
- links to