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

Alexey Kuznetsov edited comment on IGNITE-1094 at 5/23/17 12:10 PM:
--------------------------------------------------------------------

 [~DmitriyGovorukhin] 
There are some issues regarding your comment on withdrawing cache :

    *public DynamicCacheDescriptor withdrawCache(String cacheName){*
    *It is not enough for correct clean up. Check all shared managers.*  

When an exception raised in createCache(), no cache managers are created, and 
no cache context created.I see no cache-related info in *shared managers* in 
that very time.
But there are some info in *grid components* from GridKernalContext(i.e. 
GridContinuousProcessor). So could you clearify what *shared managers* should 
be deleted.

So , there 2 options on how to delete cache-related info from *grid components*:
1)manually delete it (first i need to make field 
*ClusterCachesInfo#registeredCaches* public and then call 
*registeredCaches.remove()*, and then delete other info)

2)Or, i could initiatate correct cache delete request by calling 
*GridCacheProcessor#dynamicDestroyCache()*.

PS.
Unfortunately, i cannot delete cache by creating *DynamicCacheChangeRequest* 
and putting it into *exchActions.addCacheToStop* from 
GridDhtPartitionsExchangeFuture.
Because method onDone() is got called with error.


was (Author: alexey kuznetsov):
 [~DmitriyGovorukhin] 
There are some issues regarding your comment on withdrawing cache :

    *public DynamicCacheDescriptor withdrawCache(String cacheName){*
    *It is not enough for correct clean up. Check all shared managers.*  

When an exception raised in createCache(), no cache managers are created, and 
no cache context created.I see no cache-related info in *shared managers* in 
that very time.
But there are some info in *grid components* from GridKernalContext(i.e. 
GridContinuousProcessor). So could you clearify what *shared managers* should 
be deleted.

So , there 2 options on how to delete cache-related info from *grid components*:
manually delete it (first i need to make field 
*ClusterCachesInfo#registeredCaches* public and then call 
*registeredCaches.remove()*, and then delete other info)
Or, i could initiatate correct cache delete request by calling 
*GridCacheProcessor#dynamicDestroyCache()*.

PS.
Unfortunately, i cannot delete cache by creating *DynamicCacheChangeRequest* 
and putting it into *exchActions.addCacheToStop* from 
GridDhtPartitionsExchangeFuture.
Because method onDone() is got called with error.

> Ignite.createCache(CacheConfiguration) hangs if some exception occurs during 
> cache initialization
> -------------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-1094
>                 URL: https://issues.apache.org/jira/browse/IGNITE-1094
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>            Reporter: Sergey Evdokimov
>            Assignee: Alexey Kuznetsov
>              Labels: Muted_test
>             Fix For: 2.1
>
>
> User can pass broken configuration, for example, store factory that throws 
> exception from create() method. I created test to demonstrate the problem. 
> See IgniteDynamicCacheStartSelfTest#testBrokenStoreFactory in 'ignite-1094' 
> branch 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to