[ 
https://issues.apache.org/jira/browse/IGNITE-4639?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Vladimir Ozerov updated IGNITE-4639:
------------------------------------
    Fix Version/s:     (was: 2.0)

> Share information about DDL schema changes with existing node
> -------------------------------------------------------------
>
>                 Key: IGNITE-4639
>                 URL: https://issues.apache.org/jira/browse/IGNITE-4639
>             Project: Ignite
>          Issue Type: Task
>          Components: cache, SQL
>            Reporter: Vladimir Ozerov
>
> Some existing nodes will not participate in DDL operations. Namely:
> 1) Client nodes;
> 2) Server nodes without affected cache;
> 3) Nodes which joined before finish of {{INIT}} phase of particular DDL 
> operation. At this point coordinator doesn't know whether this operation will 
> be started or not, so information about it is not shared with joining node.
> We need to inform this nodes about started DDL operations somehow, ensuring 
> proper ordering. Custom discovery message is good candidate, but 
> unfortunately it doesn't work for client nodes.
> Possible solution:
> 1) Initial state is shared through custom discovery data.
> 2) Completed updates are broadcasted from coordinator node to all other nodes 
> through {{DDL_CHANGE}} messages. 
> 3) {{DDL_CHANGE}} messages must be processed in a single thread to avoid 
> concurrency issues. 
> 4) If {{DDL_CHANGE}} message arrived before custom discovery data (i.e. we 
> have a race between IO and discovery flows), it's processing should be 
> delayed until custom disco data is processed.



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

Reply via email to