Class LockUtil


  • public class LockUtil
    extends Object
    Utility methods for handling application-level locking.
    Author:
    Andrzej Bialecki
    • Constructor Detail

      • LockUtil

        public LockUtil()
    • Method Detail

      • createLockFile

        public static void createLockFile​(FileSystem fs,
                                          Path lockFile,
                                          boolean accept)
                                   throws IOException
        Create a lock file.
        Parameters:
        fs - filesystem
        lockFile - name of the lock file
        accept - if true, and the target file exists, consider it valid. If false and the target file exists, throw an IOException.
        Throws:
        IOException - if accept is false, and the target file already exists, or if it's a directory.
      • createLockFile

        public static void createLockFile​(Configuration conf,
                                          Path lockFile,
                                          boolean accept)
                                   throws IOException
        Create a lock file.
        Parameters:
        conf - configuration to find the FileSystem lockFile belongs to
        lockFile - name of the lock file
        accept - if true, and the target file exists, consider it valid. If false and the target file exists, throw an IOException.
        Throws:
        IOException - if accept is false, and the target file already exists, or if it's a directory.
      • removeLockFile

        public static boolean removeLockFile​(FileSystem fs,
                                             Path lockFile)
                                      throws IOException
        Remove lock file. NOTE: applications enforce the semantics of this file - this method simply removes any file with a given name.
        Parameters:
        fs - filesystem
        lockFile - lock file name
        Returns:
        false, if the lock file doesn't exist. True, if it existed and was successfully removed.
        Throws:
        IOException - if lock file exists but it is a directory.
      • removeLockFile

        public static boolean removeLockFile​(Configuration conf,
                                             Path lockFile)
                                      throws IOException
        Remove lock file. NOTE: applications enforce the semantics of this file - this method simply removes any file with a given name.
        Parameters:
        conf - configuration to find the FileSystem lockFile belongs to
        lockFile - lock file name
        Returns:
        false, if the lock file doesn't exist. True, if it existed and was successfully removed.
        Throws:
        IOException - if lock file exists but it is a directory.