IBM Books

IBM General Parallel File System for AIX: Data Management API Guide

[ Bottom of Page | Previous Page | Next Page | Table of Contents | Index ]


Support for DFS and NFS

A DM application could be slow in handling events. DFS and NFS servers have a limited number of threads which must not all be blocked simultaneously for extended periods of time. GPFS provides a mechanism to guarantee progress of DFS and NFS file operations that generate data events without blocking the server threads indefinitely.

The mechanism uses a timeout on synchronous events. Initially the DFS or NFS server thread is blocked on the event. When the time-out expires, the thread unblocks and the file operation fails with an ENOTREADY error code. The event itself continues to exist and will eventually be handled. When a response for the event arrives at the source node it is saved. NFS or DFS is expected to periodically retry the operation. The retry will either find the response which has arrived between retries, or cause the operation to fail again with ENOTREADY. After repeated retries, the operation is eventually expected to succeed.

The interval is configurable using the GPFS configuration option dmapiEventTimeout (see "GPFS configuration options for DMAPI"). The default is no timeout.

The time-out mechanism is activated only for data events (read, write, truncate), and only when the file operation comes from DFS or NFS.

Note:
If a GPFS file system is exported via DFS, the DM application must not invoke Posix functions on the file system. This restriction is necessary in order to prevent deadlocks, which might otherwise occur due to locking constraints of DFS.


[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]