Dmitriy Setrakyan created IGNITE-730:
----------------------------------------
Summary: Need to implement TTL-ACCESS-TIME as eviction policy
Key: IGNITE-730
URL: https://issues.apache.org/jira/browse/IGNITE-730
Project: Ignite
Issue Type: Sub-task
Components: cache, streaming
Reporter: Dmitriy Setrakyan
Assignee: Yakov Zhdanov
Priority: Blocker
Fix For: sprint-4
# We should reuse our LRU policy for this.
# Just like with CREATE-TIME-TTL policy, we should keep a collection of
fix-sized buckets.
# Each bucket can be a List of entries.
# Each bucket should keep a timestamp of when that bucket was crated.
# However, each entry in LRU queue should keep a reference to its bucket and
index specifying it's location within that bucket (and vice-versa).
*Access*
Whenever an entry is accessed within some bucket, it should be removed from
that bucket and added to the first bucket.
*Eviction*
Whenever (currentTime - bucketCreateTime) > TTL, all the entries in the bucket
get evicted.
We should also add a flag in {{EvictableEntry}} specifying whether the access
was read or update, e.g. {{EvictableEntry.isUpdate()}}.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)