Sessions

In GPFS, a session is associated only with the node on which the session was created. This node is known as the session node.

Events are generated at any node where the file system is mounted. The node on which a given event is generated is called the source node of that event. The event is delivered to a session queue on the session node.

There are restrictions as to which DMAPI functions can and cannot be called from a node other than the session node. In general, functions that change the state of a session or event can only be called on the session node. For example, the maximum number of DMAPI sessions that can be created on a node is 4000. See Usage restrictions on DMAPI functions for details.

Session ids are unique over time within a GPFS cluster. When an existing session is assumed, using dm_create_session, the new session id returned is the same as the old session id.

A session fails when the GPFS daemon fails on the session node. Unless this is a total failure of GPFS on all nodes, the session is recoverable. The DM application is expected to assume the old session, possibly on another node. This will trigger the reconstruction of the session queue. All pending synchronous events from surviving nodes are resubmitted to the recovered session queue. Such events will have the same token id as before the failure, except mount events. Asynchronous events, on the other hand, are lost when the session fails. See Failure and recovery of IBM Storage Scale Data Management API for GPFS for information on failure and recovery.