[jira] [Created] (IGNITE-1401) Introduce special local node discovery events

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

[jira] [Created] (IGNITE-1401) Introduce special local node discovery events

Anton Vinogradov (Jira)
Andrey Kornev created IGNITE-1401:
-------------------------------------

             Summary: Introduce special local node discovery events
                 Key: IGNITE-1401
                 URL: https://issues.apache.org/jira/browse/IGNITE-1401
             Project: Ignite
          Issue Type: Improvement
          Components: general
            Reporter: Andrey Kornev
            Priority: Minor


Currently, Ignite doesn't record the EVT_NODE_JOINED event for the local node. In general, it might be useful to know when the local node has joined the cluster as well as when the local node has left the cluster (or has failed to join).

I'd like to propose to introduce a couple of new Ignite events: EVT_LOCAL_NODE_JOINED and EVT_LOCAL_NODE_LEFT that will be generated by the Discovery Manager when it has successfully started and when it has disconnected correspondingly. Importantly, the events must be generated by the discovery worker thread (and only this thread!) so that the total ordering of all discovery events is preserved. Clearly, the EVT_LOCAL_NODE_LEFT event should be generated and delivered on the best-effort basis.

EVT_LOCAL_NODE_FAILED may also be considered: it could be generated when the cluster coordinator has refused the node's attempt to join the cluster (for whatever reason).

The introduction of local node-specific discovery events rather than reusing the existing ones would help keep the existing code backward compatible, and in general makes sense.

It is possible to approximate this feature using just the existing API, but the code is complex, prone to race conditions and may require use of Ignite internal APIs.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)