[ 
https://issues.apache.org/jira/browse/IGNITE-6380?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16219607#comment-16219607
 ] 

rajeev gandhi edited comment on IGNITE-6380 at 10/25/17 9:52 PM:
-----------------------------------------------------------------

This seems like another deadlock defect. This time with reentrant locks.

The code is stuck because this line below is deadlocked (waiting for an 
unrelated lock cache2.lock("fake") to be released):
ignite.reentrantLock("blah", true, true, true);

Frankly, these defects are pretty basic. We are just starters in using this 
library and it was not hard to run into these.


was (Author: rajivgandhi):
This seems like another deadlock defect. This time with reentrant locks.

The code is stuck because this line is deadloked (waiting for an unrelated lock 
cache2.lock("fake") to released):
ignite.reentrantLock("blah", true, true, true);

Frankly, these defects are pretty basic. We are just starters in using this 
library and it was not hard to run into these.

> Exception should be thrown on cache creation attempt inside transaction
> -----------------------------------------------------------------------
>
>                 Key: IGNITE-6380
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6380
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Yakov Zhdanov
>            Assignee: Pavel Pereslegin
>              Labels: newbie, usability
>
> Exception should be thrown on cache creation attempt inside transaction to 
> prevent deadlocks since cache start triggers exchange and exchange cannot 
> finish until all txs are finished.
> We need to check if thread owns a tx before starting cache and if it does 
> then IllegalStateException should be thrown.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to