[infinispan-issues] [JBoss JIRA] (ISPN-8504) View change during cluster listener registration can throw SuspectException

Pedro Ruivo (JIRA) issues at jboss.org
Tue Nov 7 05:28:00 EST 2017


Pedro Ruivo created ISPN-8504:
---------------------------------

             Summary: View change during cluster listener registration can throw SuspectException
                 Key: ISPN-8504
                 URL: https://issues.jboss.org/browse/ISPN-8504
             Project: Infinispan
          Issue Type: Bug
            Reporter: Pedro Ruivo


when registering a cluster listener, if a view change happens, it tries to register the listener in the joiner. However, if the joiner doesn't have the cache, a SuspectException is thrown. 

I noticed also the cluster listener registration uses the view and not the cache members. 

In the first iteration, the SuspectException is ignored:

Line 872:
{code:java}
for (int i = 0; i < members.size() - 1; ++i) {
  try {
     decs.take().get();
  } catch (InterruptedException e) {
     throw new CacheListenerException(e);
  } catch (ExecutionException e) {
     Throwable cause = e.getCause();
     // If we got a SuspectException it means the remote node hasn't started this cache yet.
     // Just ignore, when it joins it will retrieve the listener
     if (!(cause instanceof SuspectException)) {
        throw new CacheListenerException(cause);
     }
  }
}
{code}


However, when trying in the joiners, the exception isn't ignored:

Line 902
{code:java}
for (int i = 0; i < extraCount; ++i) {
  try {
     decs.take().get();
  } catch (InterruptedException e) {
     throw new CacheListenerException(e);
  } catch (ExecutionException e) {
     throw new CacheListenerException(e);
  }
}
{code}




--
This message was sent by Atlassian JIRA
(v7.5.0#75005)


More information about the infinispan-issues mailing list