A NO_SPACE error occurs when a file system is known to have adequate free space

The GPFS commands display a NO_SPACE error even if a file system has free space and the course of actions that you can take to correct this issue.

A ENOSPC (NO_SPACE) message can be returned even if a file system has remaining space. The NO_SPACE error might occur even if the df command shows that the file system is not full.

The user might have a policy that writes data into a specific storage pool. When the user tries to create a file in that storage pool, it returns the ENOSPC error if the storage pool is full. The user next issues the df command, which indicates that the file system is not full, because the problem is limited to the one storage pool in the user's policy. In order to see if a particular storage pool is full, the user must issue the mmdf command.

The following is a sample scenario:
  1. The user has a policy rule that says files whose name contains the word 'tmp' should be put into storage pool sp1 in the file system fs1. This command displays the rule:
    mmlspolicy fs1 -L
    The system displays an output similar to this:
    /* This is a policy for GPFS file system fs1 */
    
    /* File Placement Rules */
    RULE SET POOL 'sp1' WHERE name like '%tmp%'
    RULE 'default' SET POOL 'system'
    /* End of Policy */
  2. The user moves a file from the /tmp directory to fs1 that has the word 'tmp' in the file name, meaning data of tmpfile should be placed in storage pool sp1:
    mv /tmp/tmpfile /fs1/
    
    The system produces output similar to this:
    mv: writing `/fs1/tmpfile': No space left on device 
    This is an out-of-space error.
  3. This command shows storage information for the file system:
     df |grep fs1
    The system produces output similar to this:
     /dev/fs1             280190976 140350976 139840000  51% /fs1
    This output indicates that the file system is only 51% full.
  4. To query the storage usage for an individual storage pool, the user must issue the mmdf command.
    mmdf fs1
    
    The system produces output similar to this:
    
    disk                disk size  failure holds    holds              free KB             free KB
    name                    in KB    group metadata data        in full blocks        in fragments
    --------------- ------------- -------- -------- ----- -------------------- -------------------
    Disks in storage pool: system
    gpfs1nsd            140095488     4001 yes      yes       139840000 (100%)         19936 ( 0%)
                    -------------                         -------------------- -------------------
    (pool total)        140095488                             139840000 (100%)         19936 ( 0%)
    
    Disks in storage pool: sp1
    gpfs2nsd            140095488     4001 no       yes               0s (  0%)           248 ( 0%)
                    -------------                         -------------------- -------------------
    (pool total)        140095488                                     0 (  0%)           248 ( 0%)
    
                    =============                         ==================== ===================
    (data)              280190976                             139840000 ( 50%)         20184 ( 0%)
    (metadata)          140095488                             139840000 (100%)         19936 ( 0%)
                    =============                         ==================== ===================
    (total)             280190976                             139840000 ( 50%)         20184 ( 0%)
    
    Inode Information
    ------------------
    Number of used inodes: 74
    Number of free inodes: 137142
    Number of allocated inodes: 137216
    Maximum number of inodes: 150016
    
    In this case, the user sees that storage pool sp1 has 0% free space left and that is the reason for the NO_SPACE error message.
  5. To resolve the problem, the user must change the placement policy file to avoid putting data in a full storage pool, delete some files in storage pool sp1, or add more space to the storage pool.