You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Vladimir Ozerov (JIRA)" <ji...@apache.org> on 2017/06/01 11:31:04 UTC
[jira] [Created] (IGNITE-5380) Validate cache QueryEntities in
discovery thread
Vladimir Ozerov created IGNITE-5380:
---------------------------------------
Summary: Validate cache QueryEntities in discovery thread
Key: IGNITE-5380
URL: https://issues.apache.org/jira/browse/IGNITE-5380
Project: Ignite
Issue Type: Task
Components: cache, sql
Reporter: Vladimir Ozerov
Assignee: Alexander Paschenko
Fix For: 2.1
Consider the following case:
1) Execute SQL: TABLE Person ...}}
2) Then again: TABLE Person ...}}
Second call will lead to exception in exchange thread and will hang the whole cluster.
We need to add validation of {{CacheConfiguration.queryEntities}} wrt to other caches. This check should be performed in discovery thread. Note that we cannot rely on {{GridQueryProcessor}} or {{IgniteH2Indexing}} state, as some cache start requests may already be enqueued to exchange worker. Instead, we should perform cross-cache validation base only on two things:
1) {{DynamicCacheDescriptor.cacheCfg}}
2) {{DynamicCacheDescriptor.schema}}
That is, we should resolve cache schema name from configuration, tables and indexes from schema, and then cross-validate them with other caches.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)