org.apache.hadoop.fs.statistics.IOStatisticsSourceAzureBlobFileSystem.ResilientCommitByRenameImpl@Private
@Unstable
public interface ResilientCommitByRename
extends org.apache.hadoop.fs.statistics.IOStatisticsSource
AbfsManifestStoreOperations,
and is intended to be implemented by ABFS.
To ensure that there is no need to add mapreduce JARs to the
classpath just to work with ABFS, this interface
MUST NOT refer to anything in the
org.apache.hadoop.mapreduce package.| Modifier and Type | Method | Description |
|---|---|---|
org.apache.commons.lang3.tuple.Pair<java.lang.Boolean,java.time.Duration> |
commitSingleFileByRename(org.apache.hadoop.fs.Path source,
org.apache.hadoop.fs.Path dest,
java.lang.String sourceEtag) |
Rename source file to dest path *Exactly*; no subdirectory games here.
|
org.apache.commons.lang3.tuple.Pair<java.lang.Boolean,java.time.Duration> commitSingleFileByRename(org.apache.hadoop.fs.Path source,
org.apache.hadoop.fs.Path dest,
@Nullable
java.lang.String sourceEtag)
throws java.io.IOException
exists(FS, source) else raise FileNotFoundException source != dest else raise PathIOException not exists(FS, dest) isDir(FS, dest.getParent)
FS' where:
not exists(FS', source)
and exists(FS', dest)
and data(FS', dest) == data (FS, source)
This is exactly the same outcome as `FileSystem.rename()` when the same preconditions
are met. This API call simply restricts the operation to file rename with strict
conditions, (no need to be 'clever' about dest path calculation) and the ability
to pass in etags, modtimes and file status values.source - path to source filedest - destination of rename.sourceEtag - etag of source file. may be null or emptyjava.io.FileNotFoundException - source file not foundorg.apache.hadoop.fs.PathIOException - failure, including source and dest being the same pathjava.io.IOException - any other exceptionCopyright © 2008–2025 Apache Software Foundation. All rights reserved.