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

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

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

Anton Vinogradov (Jira)
Vladimir Ozerov created IGNITE-4639:
---------------------------------------

             Summary: 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
            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)