[infinispan-dev] https://jira.jboss.org/jira/browse/ISPN-38

Mircea Markus mircea.markus at jboss.com
Sun Jun 28 08:49:40 EDT 2009


Hi,

This is related to https://jira.jboss.org/jira/browse/ISPN-38 (Early 
distributed deadlock detection).
When I determine that a deadlock scenario happens, I try to interrupt a 
tx originated locally. This translates to an thread.interrupt() call on 
a thread that is replicating to other caches. The issue is that this 
call is ignored in jgroups's GroupRequest:
    private boolean collectResponses(long timeout)  {
                .....
                if(timeout > 0) {
                    try {
                        completed.await(timeout, TimeUnit.MILLISECONDS); 
//LINE 552
                    }
                    catch(Exception e) {
                    }
                }
                ....
   }

So my call to interrupt is ignored (line 552) and the collectResponses 
method will only return after timeout elapses - not good for me, as I 
want the method to return immediately if thread is interrupted.
Would it be possible to enhance the code to be aware of interrupt calls? 
This is in JGroups 2.8.0 Beta2.

Cheers,
Mircea




More information about the infinispan-dev mailing list