It is a Map storaging a snapshot of ignite cache data.You can see it defined in
my code.
private Map<String, Object> cacheMap = new ConcurrentHashMap<>();
public void continueQueryCache() {
try {
IgniteCache<String, Object> clientCache = makeIgniteCache();
if (clientCache != null) {
ContinuousQuery<String, Object> query = new ContinuousQuery<>();
query.setIncludeExpired(true);
query.setInitialQuery(new ScanQuery<>());
// listener
query.setLocalListener(new CacheEntryUpdatedListener<String, Object>() {
@Override
public void onUpdated(Iterable<CacheEntryEvent<? extends String, ? extends
Object>> evts) {
for (CacheEntryEvent<? extends String, ? extends Object> e : evts) {
switch (e.getEventType()) {
case CREATED:
cacheMap.put(e.getKey(), e.getValue());
break;
case UPDATED:
cacheMap.put(e.getKey(), e.getValue());
break;
case REMOVED:
cacheMap.remove(e.getKey());
break;
case EXPIRED:
cacheMap.remove(e.getKey());
break;
default:
throw new IllegalStateException("Unknown type: " + e.getEventType());
}
}
LOG.info("reload [{}] objects from remote cache..", cacheMap.size());
}
});
// start query
QueryCursor<Cache.Entry<String, Object>> cursor = clientCache.query(query);
for (Entry<String, Object> entry : cursor) {
cacheMap.put(entry.getKey(), entry.getValue());
}
}
}catch(Exception e) {
LOG.error("continueQueryCache():get cacheClient error");
}
}
------------------------------------------------------------------
发件人:akurbanov <[email protected]>
发送时间:2018年9月6日(星期四) 20:45
收件人:user <[email protected]>
主 题:Re: how does Ignite Client restart ContinuousQuery when Ignite cluster
failed and restart
Hello,
Can you clarify what is "local cache" in your use-case? What are you using
as a client for Ignite?
--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/