All, We have a very similar requirement as described in this item: https://issues.apache.org/jira/browse/IGNITE-10872
Namely, when removing a node from a Ignite grid, we want to do two things: 1. Prevent new requests from reaching it 2. Allow all running requests the node is involved in to complete before it terminates. The solution outlined in 10872 partially solves these elements within our architecture in that it allows Ignite to pause shutdown of the node until all requests are completed (and, I assume, prevent new requests from reaching the node being shut down). In our architecture the phrase 'requests the node is involved in' made be opaque from the context on Ignite due to an asynchronous calling model we are using to permit very large numbers of concurrent requests to execute without saturating the Ignite thread pools. What this means is that a node that may be a candidate to be shut down may be waiting for a response from another node on the grid in a way that Ignite can't see, so would determine the node was safe to shut down when it is not. A good example of this in our system is an Apply style Ignite call where the request is sent to one of a set of nodes. That set of nodes may scale in/out due to request demand. On a scale in operation, the node to be removed needs to be excluded from the topology projection constructed to perform the Apply() against. Once we are satisfied the node has no further request involved (eg: by a simple timeout) then we would proceed with actual shut down of that node. I have not seen any capability in Ignite today where a node can be 'un-blessed'; does one exist? Or should we construct this facility within our application logic layer? Thanks, Raymond. -- <http://www.trimble.com/> Raymond Wilson Solution Architect, Civil Construction Software Systems (CCSS) 11 Birmingham Drive | Christchurch, New Zealand raymond_wil...@trimble.com <https://worksos.trimble.com/?utm_source=Trimble&utm_medium=emailsign&utm_campaign=Launch>