]
Pedro Ruivo updated ISPN-7218:
------------------------------
Status: Pull Request Sent (was: Open)
Git Pull Request:
FIFO command does not wait for topology
---------------------------------------
Key: ISPN-7218
URL:
https://issues.jboss.org/browse/ISPN-7218
Project: Infinispan
Issue Type: Bug
Components: Core
Reporter: Pedro Ruivo
Assignee: Pedro Ruivo
FIFO order commands are handled in the deliver thread.
However, they don't wait in the {{future}} before checking if the node is a valid
member (check code below)
{code:java}
switch (topologyMode) {
case WAIT_TOPOLOGY:
future = handler.getStateTransferLock().topologyFuture(waitTopology());
break;
case WAIT_TX_DATA:
future =
handler.getStateTransferLock().transactionDataFuture(waitTopology());
break;
default:
break;
}
if (handler.isCommandSentBeforeFirstTopology(commandTopologyId)) {
return future == null ?
CompletableFuture.completedFuture(CacheNotFoundResponse.INSTANCE) :
future.thenApply(nil -> CacheNotFoundResponse.INSTANCE);
}
{code}