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)