[ 
https://issues.apache.org/jira/browse/IGNITE-13858?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17306501#comment-17306501
 ] 

Stanislav Lukyanov commented on IGNITE-13858:
---------------------------------------------

Talked about this with [~agoncharuk].

It seems that there is a relatively cheap way of improving this.

First, we can throw away the value from the entry stored on-heap. We only need 
the key for the near cache algorithm to work.

Second, we can have a background thread iterating over the entries and removing 
the ones that don't have any alive readers (near cache clients).

Third, we can have the same background thread perform no-op updates (e.g. no-op 
EntryProcessor invocations) which will automatically remove unneeded entries 
from the heap using the existing protocol.

> Enabling near cache on a client node may lead to blocking eviction on server 
> nodes
> ----------------------------------------------------------------------------------
>
>                 Key: IGNITE-13858
>                 URL: https://issues.apache.org/jira/browse/IGNITE-13858
>             Project: Ignite
>          Issue Type: Bug
>    Affects Versions: 2.8, 2.9, 2.9.1
>            Reporter: Vyacheslav Koptilin
>            Priority: Major
>
> When Native Persistence is off, creating near-cache on client node enforces 
> (to be more accurate, near-cache entries) to maintain a list client node ids 
> (aka readers) per-entry basis.
> Unfortunately, this list is not cleaned even though the eviction policy is 
> configured on the near cache. Moreover, such entries cannot be evicted on the 
> server-side, with corresponding pages, and this may lead to hanging cache 
> operations.
> Originally discussed at user-list: 
> http://apache-ignite-users.70518.x6.nabble.com/Apache-Ignite-Clientside-NearCache-and-Serverside-Eviction-blocking-cluster-tt34645.html



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to