Erik Salter created ISPN-2423:
---------------------------------
Summary: Handle the site unreachable case when sending unicasts to backup
sites.
Key: ISPN-2423
URL:
https://issues.jboss.org/browse/ISPN-2423
Project: Infinispan
Issue Type: Bug
Components: Cross-Site Replication
Affects Versions: 5.2.0.Beta2
Reporter: Erik Salter
Assignee: Mircea Markus
When the BackupInterceptors send a unicast to an unreachable site, the underlying RELAY2
protocol can be configured to retry sending the message.
The current implementation iterates over sites and sequentially tries to send a message.
If one of the sites is unreachable, it will block waiting for a response. For instance,
if in sites {A,B,C} and A is down, we can block on waiting for the response from A. As
this is in the critical path for transactions, locks, etc., this affects the overall
throughput of the system.
Note that this happens for async and sync replication.
A potential solution is in JGroupsTransport.backupRemotely(), we create a Runnable which
calls MessageDispatcher.sendWithFuture() and submit it to the internal asyncExecutor
thread pool. For async replication, the responses can then be processed (and sites taken
offline, etc) outside the tx critical path.
--
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