Skip navigation links
org.apache.hadoop.fs

Enum CreateFlag

    • Enum Constant Detail

      • CREATE

        public static final CreateFlag CREATE
        Create a file. See javadoc for more description already exists
      • OVERWRITE

        public static final CreateFlag OVERWRITE
        Truncate/overwrite a file. Same as POSIX O_TRUNC. See javadoc for description.
      • APPEND

        public static final CreateFlag APPEND
        Append to a file. See javadoc for more description.
      • SYNC_BLOCK

        public static final CreateFlag SYNC_BLOCK
        Force closed blocks to disk. Similar to POSIX O_SYNC. See javadoc for description.
      • LAZY_PERSIST

        public static final CreateFlag LAZY_PERSIST
        Create the block on transient storage (RAM) if available. If transient storage is unavailable then the block will be created on disk. HDFS will make a best effort to lazily write these files to persistent storage, however file contents may be lost at any time due to process/ node restarts, hence there is no guarantee of data durability. This flag must only be used for intermediate data whose loss can be tolerated by the application.
      • NEW_BLOCK

        public static final CreateFlag NEW_BLOCK
        Append data to a new block instead of the end of the last partial block. This is only useful for APPEND.
      • NO_LOCAL_WRITE

        @InterfaceAudience.LimitedPrivate(value="HBase")
        public static final CreateFlag NO_LOCAL_WRITE
        Advise that a block replica NOT be written to the local DataNode where 'local' means the same host as the client is being run on.
      • SHOULD_REPLICATE

        public static final CreateFlag SHOULD_REPLICATE
        Enforce the file to be a replicated file, no matter what its parent directory's replication or erasure coding policy is.
      • IGNORE_CLIENT_LOCALITY

        public static final CreateFlag IGNORE_CLIENT_LOCALITY
        Advise that the first block replica NOT take into account DataNode locality. The first block replica should be placed randomly within the cluster. Subsequent block replicas should follow DataNode locality rules.
    • Method Detail

      • values

        public static CreateFlag[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (CreateFlag c : CreateFlag.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static CreateFlag valueOf(String name)
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
        Parameters:
        name - the name of the enum constant to be returned.
        Returns:
        the enum constant with the specified name
        Throws:
        IllegalArgumentException - if this enum type has no constant with the specified name
        NullPointerException - if the argument is null
      • validate

        public static void validate(EnumSet<CreateFlag> flag)
        Validate the CreateFlag and throw exception if it is invalid
        Parameters:
        flag - set of CreateFlag
        Throws:
        HadoopIllegalArgumentException - if the CreateFlag is invalid
      • validate

        public static void validate(Object path,
                                    boolean pathExists,
                                    EnumSet<CreateFlag> flag)
                             throws IOException
        Validate the CreateFlag for create operation
        Parameters:
        path - Object representing the path; usually String or Path
        pathExists - pass true if the path exists in the file system
        flag - set of CreateFlag
        Throws:
        IOException - on error
        HadoopIllegalArgumentException - if the CreateFlag is invalid
      • validateForAppend

        public static void validateForAppend(EnumSet<CreateFlag> flag)
        Validate the CreateFlag for the append operation. The flag must contain APPEND, and cannot contain OVERWRITE.

Copyright © 2021 Apache Software Foundation. All rights reserved.