Archived

This forum has been archived. Please start a new discussion on GitHub.

Icegrid node deactivation of adapters

My coworker has not registered yet in this forum, so I'm forwarding his questions here.

--

Hi, I am working with allocation resources.

I have several icegrid nodes and each node have one process to serve for the ice client.

The client requests the exlusive use of the process with getting an allocation resource by the object type via the icegrid session.

In my case, how can I assure that an unavailable server due to any problem is not in the candidates of resource allocating by the registry?

I understand that icegrid registry does not allocate the resource whose adapter is deactivated.

However, there might be several cases that the main thread of the server process can't execute the deactivating code for the adapters.
For example, the power or the network of the physical server might be out or the main thread of the icegrid servant might cause a segmentation fault while running so that the adapter deactivating code can be executed.

In this cases, does the icegrid registry exclude the object of the not-existing server?
I have to make this clear for the further work, so I want to have your answer about this.

Comments

  • benoit
    benoit Rennes, France
    Hi,

    The IceGrid registry allocation system currently does not check for the server status so it might return the proxy for an Ice object in a server which is being deactivated or which is potentially inaccessible (even if the IceGrid registry checked for the status, the server could become un-available shortly after the registry returned the proxy to the client...).

    The client should correctly handle invocation failures on the server, if a failure occurs, it should release the object or server and try again the allocation until it finds a server which is working.

    Cheers,
    Benoit.