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

Vladimir Ozerov commented on IGNITE-6173:
-----------------------------------------

[~jooger], my comments:
# H2TreeClientIndex - looks like we do not need to define refreshColumnIds and 
destroy methods as they do nothing
# H2TreeClientIndex - error message is still duplicated many times. Can we move 
it to separate method to avoid duplication?
# DmlStatementsProcessor.processBulkLoadCommand - how do we ensure that cache 
will be initialized here during actual loading? Do we rely on a call to data 
streamer?
# I advice to use existing naming for old concepts and new naming for new. 
"gridCacheContext" -> "cacheContext"; methods "cacheContext" which returns 
"info" -> "cacheInfo"; variables where type is "info" should not be named 
"cctx"; "gcctx" is not approved abbreviation
# Please avoid automatic changes (i.e. imports reorganization by Idea). It 
causes unrelated changes in class which you opened during ticket development, 
what increases review time. PR should not contain unrelated changes even if 
they are for good. Example - {{SchemaIndexCacheVisitorImpl}}.
# LocalJoinCachesContext.locJoinInitCaches - unnecessary initializer
# Please avoid mentioning H2 in "core" module. It should be something with name 
"query" instead
# LocalJoinCachesContext - {{itr}} is not approved abbreviation, should be 
{{iter}}. Also empty lines between code lines are missing (see 
{{removeSurvivedCaches}})

> SQL: do not start caches on client nodes
> ----------------------------------------
>
>                 Key: IGNITE-6173
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6173
>             Project: Ignite
>          Issue Type: Task
>          Components: cache, sql
>    Affects Versions: 2.1
>            Reporter: Vladimir Ozerov
>            Assignee: Yury Gerzhedovich
>            Priority: Major
>              Labels: sql-stability
>             Fix For: 2.8
>
>
> When cache is started, this even is distributed through custom discovery 
> message. Server nodes start the cache, client nodes do nothing until cache is 
> requested explicitly. At the same time H2 database objects are created only 
> when cache is really started. 
> For this reason query parsing could lead to {{TABLE NOT FOUND}}, {{INDEX NOT 
> FOUND}}, etc. errors. If such exception is observed, we force start of all 
> known cache on a client and then retry. See 
> {{GridCacheProcessor#createMissingQueryCaches}} method. 
> First, client node cache start leads to another custom discovery message. So 
> query performance may suffer. Second, this is not needed! We already have all 
> necessary cache info in discovery. 
> Let's try to find a way to use available discovery data and do not start 
> cache on a client for SQL query execution.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to