[
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)