Hi,

I was doing some testing where I had some services deployed, then
deactivated the cluster, then re-activated the cluster. I was expecting that
the services would have their init and execute methods called again, but
this did not happen. If I proceed to shutdown a node then the cancel method
is called even though the service never went through proper initialization.

I'm observing this behavior regardless if persistence is enabled or not;
however, if persistence is enabled and I completely restart the cluster then
all services are re-initialized as expected.

This is on Ignite 2.4 and a quick reproducer is:


I see the following output when run:


In addition, you'll also notice that when the service is cancelled because
of cluster deactivation that this occurs from the exchange thread which
seems incredibly dangerous to me since it can cause the cluster to deadlock
if you do anything in the cancel method that may block (f.e. any call that
leads to GridClusterStateProcessor.publicApiActiveState(true)).

I found IGNITE-8279 but upfront this appears to be a different issue, but
not sure if it's related to what I'm observing as this use-case isn't using
a client.

-Nick



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Reply via email to