Re: [infinispan-dev] JGroupsDistSync and ISPN-83

2011-05-17 Thread Vladimir Blagojevic
-Original Message- From: infinispan-dev-boun...@lists.jboss.org [mailto:infinispan-dev-boun...@lists.jboss.org] On Behalf Of Vladimir Blagojevic Sent: Monday, May 16, 2011 4:25 PM To: infinispan -Dev List Cc: Manik Surtani Subject: Re: [infinispan-dev] JGroupsDistSync and ISPN-83

Re: [infinispan-dev] JGroupsDistSync and ISPN-83

2011-05-16 Thread Vladimir Blagojevic
Manik (and others), Can you run this code on your laptops and let me know what happened! Vladimir public static void main (String [] arg) throws Exception { final JGroupsDistSync ds = new JGroupsDistSync(); ds.acquireProcessingLock(false, 3, TimeUnit.SECONDS);

Re: [infinispan-dev] JGroupsDistSync and ISPN-83

2011-05-16 Thread Sanne Grinovero
] JGroupsDistSync and ISPN-83 Manik (and others), Can you run this code on your laptops and let me know what happened! Vladimir    public static void main (String [] arg) throws Exception {       final JGroupsDistSync ds = new JGroupsDistSync();       ds.acquireProcessingLock(false, 3, TimeUnit.SECONDS

Re: [infinispan-dev] JGroupsDistSync and ISPN-83

2011-05-15 Thread Vladimir Blagojevic
I agree Manik. Codebase has evolved and the solution I have for this problem involves detecting such a lockup happening again but this time we will capture which threads locked RWL and why thus leading to a final resolution. I will include the fix in the next CR and follow up in later releases

Re: [infinispan-dev] JGroupsDistSync and ISPN-83

2011-05-13 Thread Manik Surtani
Yes, please have a look. If we are relying on lock upgrades then that's really bad. I am aware of the inability to (safely) upgrade a RWL and I'm pretty sure we don't try, but the dist sync codebase has evolved a lot and could do with some careful analysis. Sent from my mobile phone On 12

Re: [infinispan-dev] JGroupsDistSync and ISPN-83

2011-05-12 Thread Vladimir Blagojevic
On 11-05-11 11:23 AM, Dan Berindei wrote: If ReentrantReadWriteLock would allow upgrades then you would get a deadlock when two threads both hold the read lock and try to upgrade to a write lock at the same time. There's always a trade-off... I'm not familiar with the code, but are you sure

Re: [infinispan-dev] JGroupsDistSync and ISPN-83

2011-05-11 Thread Vladimir Blagojevic
The more I research ReentrantReadWriteLock the more shocked I am. Not only that a thread wanting to acquire write lock first has to release read lock, but we can block forever even if we release the read lock if we have acquired that read lock reentrantly. Each call to unlock just reduces the

Re: [infinispan-dev] JGroupsDistSync and ISPN-83

2011-05-11 Thread Dan Berindei
On Wed, May 11, 2011 at 11:25 AM, Vladimir Blagojevic vblag...@redhat.com wrote: The more I research ReentrantReadWriteLock the more shocked I am. Not only that a thread wanting to acquire write lock first has to release read lock, but we can block forever even if we release the read lock if