Hi Rajiv,

Seems, it is same issue as IGNITE-6380.
I see tread blocks on dynamic cache for ignite datastructures creation.


[1] https://issues.apache.org/jira/browse/IGNITE-6380


On Sat, Oct 28, 2017 at 12:15 AM, rajivgandhi <rajiv.gan...@gmail.com>
wrote:

> Hi,
> In line with a deadlock reported  earlier
> <https://issues.apache.org/jira/browse/IGNITE-6380#>  , please see below
> another deadlock scenario, this time with renetrant locks:
> private void start2() {
> Ignite ignite = null;
> try{
> ignite = Ignition.start("ignite-deadlock.xml");
> IgniteCache<Object, Object> cache1 =
> ignite.getOrCreateCache(getConfig("cache1"));
> IgniteCache<Object, Object> cache2 =
> ignite.getOrCreateCache(getConfig("cache2"));
> //      ignite.l
> CountDownLatch latch1 = new CountDownLatch(1);
> CountDownLatch latch2 = new CountDownLatch(1);
> Thread t = new Thread(() -> {
> Lock lock = cache2.lock("fake");
> try
> { lock.lock(); System.out.println("Locked"); latch1.countDown();
> latch2.await(); cache1.clear(); }
> catch(InterruptedException e)
> { Thread.currentThread().interrupt(); e.printStackTrace(); throw new
> RuntimeException(e); }
> catch(Exception e)
> {       e.printStackTrace(); throw new RuntimeException(e); }
> finally
> { lock.unlock(); }
>
> });
> t.start();
> latch1.await();
> ignite.reentrantLock("blah", true, true, true);
> latch2.countDown();
> t.join();
> System.out.println("No deadlock");
> }catch(InterruptedException e)
> { Thread.currentThread().interrupt(); e.printStackTrace(); throw new
> RuntimeException(e); }
> finally
> { if(ignite!=null) ignite.close(); }
>
> }
>
>
> If you could please triage and accept this as a defect.
>
>
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>



-- 
Best regards,
Andrey V. Mashenkov

Reply via email to