[
https://issues.jboss.org/browse/ISPN-2950?page=com.atlassian.jira.plugin....
]
Mircea Markus commented on ISPN-2950:
-------------------------------------
{quote} Why should the ClusterCacheLoader be deprecated? I think that's totally
unrelated, I might still want to load data from a different grid instance, or another
cache having a different configuration.{quote}
The ClusterCacheLoader won't help you with that, as it only looks up data *in the same
cache* on the remaining members of the cluster. It's the RemoteCacheStore you're
after for the use case you mentioned.
In distributed mode cache store data should be read through the main
data owner (vs directly from the store)
------------------------------------------------------------------------------------------------------------
Key: ISPN-2950
URL:
https://issues.jboss.org/browse/ISPN-2950
Project: Infinispan
Issue Type: Feature Request
Components: Loaders and Stores
Reporter: Mircea Markus
Assignee: Mircea Markus
Fix For: 5.3.0.Alpha1, 5.3.0.Final
Dist cache with a cache store(shared or not), k owned by \{N1, N2\}. k is read on N3.
What currently happens at this stage, if k is not present in N3's memory (likely
unless L1 is configured), the N3's cache store is queried and data is loaded from
there. This has several drawback:
- the data might already be in the memory of the owner node (N1,N2) so reading it from
the disk is highly inefficient. Especially for hot data: data requested from various nodes
at the same time (see also mailing list discussion around lucene query performance
depending on this)
- if this is a local cache store, it might contain stale data which would be returned to
the user
- for async configured cache store this would result in dirty reads, given that a change
might be in the async store's memory but not in the store at the moment when it is in
read by N3. (Note that using async stores still leaves place to inconsistencies when a
node leaves, e.g. because of node crashing before managing to flush the async store.)
This JIRA is about changing the distribution mode: when asked for a specific key, a node
would only touch a cache store if it is an owner of that key, otherwise would first go to
the main owner of the key to read the value from there. The ClusterCacheLoader should be
deprecated as well.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira