[infinispan-dev] New algorithm to handle remote commands

Pedro Ruivo pedro at infinispan.org
Mon Sep 22 09:51:56 EDT 2014



On 09/18/2014 05:32 PM, Dan Berindei wrote:
>
>     >
>     > And InvalidateL1Commands are also TopologyAffectedCommands, so there's
>     > still a potential for deadlock when L1 is enabled and we have maxThreads
>     > write commands blocked sending L1 invalidations and those L1
>     > invalidation commands are stuck in the remote executor's queue on
>     > another node. And with (very) unlucky timing the remote executor might
>     > not even get to create maxThreads threads before the deadlock appears. I
>     > wonder if we could write a custom executor that checks what the first
>     > task in the queue is every second or so, and creates a bunch of new
>     > threads if the first task in the queue hasn't changed.
>

I found another potential deadlock with the transaction boundary 
commands when they are forwarded (state transfer) to the new owners. The 
forward commands may not have threads available to process them.


More information about the infinispan-dev mailing list