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/02/01 14:18:51 UTC

[jira] [Closed] (IGNITE-4639) Share information about DDL schema changes with existing node

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

Vladimir Ozerov closed IGNITE-4639.
-----------------------------------

> 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: Sub-task
>          Components: cache, SQL
>            Reporter: Vladimir Ozerov
>             Fix For: 2.0
>
>
> 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)