[
https://issues.apache.org/jira/browse/IGNITE-1094?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16513583#comment-16513583
]
Alexey Goncharuk commented on IGNITE-1094:
------------------------------------------
[~slava.koptilin], I have the following comments:
1) I do not like that we catch an exception in the global {{init()}} catch
block when we cover the cache start failure. Note that this catch introduces
another flow of exchange completion which is not correct. For example, any
other exception thrown even when there are no caches started will be handled
according to this flow. Instead, I would like to catch and handle the exception
in the code specific to dynamic cache start (for example,
{{onCacheChangeRequest()}}), and complete the exchange in generic way.
2) Tests coverage is not complete. Please add the following checks:
* Check that a cache with the same name can be started after failure if config
is corrected
* Check that other caches (existed before the failed start) are still operable
after the failure (includes cache API ops, SQL, data streamer, WAL
enable/disable)
* Check that other caches work after the failure AND further topology changes
(node join, node add, both server and client). The check should include the ops
above + check that affinity is correct on all nodes
* Check coordinator failover during cache start failure. Specifically, the
following case: cache start fails on one node, but the coordinator fails before
the node sends it's single message and a new coordinator is elected
> 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: Vyacheslav Koptilin
> Priority: Major
> Labels: Muted_test
> Fix For: 2.6
>
>
> 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
(v7.6.3#76005)