Dear all,

I have a continuous query on a client node like
    IgniteCache<BalancePK, Balance> cache =
ignite.getOrCreateCache(StoreHelper.getCacheName(BalanceStore.class));

    ContinuousQuery<BalancePK, Balance> qry = new ContinuousQuery<>();

    qry.setLocalListener(handler);

    qry.setRemoteFilterFactory((Factory<CacheEntryEventFilter&lt;BalancePK,
Balance>>) () -> event -> true);

    QueryCursor<Cache.Entry&lt;BalancePK, Balance>> cur = cache.query(qry);

It works fine, however if I restart the server node, the query seems to be
disconnected. I tried to listen to the EVT_CLIENT_NODE_RECONNECTED event and
rerun the above code segment, but it just throwing thread dump print out.

    ignite.events().localListen(new IgnitePredicate<Event>() {
      @Override public boolean apply(Event event) {

        switch (event.type()) {
          case EventType.EVT_CLIENT_NODE_DISCONNECTED:
            log.info("#####Ignite Client disconnect!");
            break;
          case EventType.EVT_CLIENT_NODE_RECONNECTED:
            log.info("#####Ignite Client reconnected!");

            IgniteCache<BalancePK, Balance> cache =
ignite.getOrCreateCache(StoreHelper.getCacheName(BalanceStore.class));

            ContinuousQuery<BalancePK, Balance> qry = new
ContinuousQuery<>();

            qry.setLocalListener(handler);

           
qry.setRemoteFilterFactory((Factory<CacheEntryEventFilter&lt;BalancePK,
Balance>>) () -> evt -> true);

            QueryCursor<Cache.Entry&lt;BalancePK, Balance>> cur =
cache.query(qry);
        }

        return true;
      }
    }, EventType.EVT_CLIENT_NODE_DISCONNECTED,
EventType.EVT_CLIENT_NODE_RECONNECTED);


Any clue?

Thanks & Regards,
Rick



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Reply via email to