On 29 Sep 2009, at 09:57, Mircea Markus wrote:
Hi,
Again, this is a feature from Coherence[1].
Basic idea is to execute a query against the cache, and hold the
result object. This result object will always have up to date query
result; this means that whenever something is modified in the cache
the result itself is updated.
So I'm guessing a use case could be something like putting objects
into one node in a cluster and then running a query on a separate node?
Advantage: if one performs the same query very often(e.g. several
times every millisecond) the response will be fast and the system
will not be overloaded.
E.g.
Filter filter = new AndFilter(new EqualsFilter("getTrader", traderid),
new EqualsFilter("getStatus",
Status.OPEN));
ContinuousQueryCache cacheOpenTrades = new
ContinuousQueryCache(cache, filter);
Iterator iter = cacheOpenTrades.entrySet().iterator(); //*this
entrySet call will be instant!*
FOr a full list of scenario in which this can be used take a look at
[1].
Shall we consider adding something similar?
I guess it would depend if we were
thinking of keeping those
iterators. There was the debate about pagination vs iterators so I
guess it would depend on what happens with the debate.
Navin Surtani
Intern Infinispan
Intern JBoss Cache Searchable