public class StoreFileInfo
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
DELFILE_NAME_REGEX
A non-capture group, for del files, so that this can be embedded.
|
static java.lang.String |
HFILE_NAME_REGEX
A non-capture group, for hfiles, so that this can be embedded.
|
Constructor and Description |
---|
StoreFileInfo(Configuration conf,
FileSystem fs,
FileStatus fileStatus)
Create a Store File Info
|
StoreFileInfo(Configuration conf,
FileSystem fs,
FileStatus fileStatus,
HFileLink link)
Create a Store File Info from an HFileLink
|
StoreFileInfo(Configuration conf,
FileSystem fs,
FileStatus fileStatus,
Reference reference)
Create a Store File Info from an HFileLink
|
StoreFileInfo(Configuration conf,
FileSystem fs,
Path initialPath)
Create a Store File Info
|
Modifier and Type | Method and Description |
---|---|
HDFSBlocksDistribution |
computeHDFSBlocksDistribution(FileSystem fs)
Compute the HDFS Block Distribution for this StoreFile
|
boolean |
equals(java.lang.Object that) |
java.lang.String |
getActiveFileName()
Return the active file name that contains the real data.
|
long |
getCreatedTimestamp() |
FileStatus |
getFileStatus() |
HDFSBlocksDistribution |
getHDFSBlockDistribution() |
long |
getModificationTime() |
Path |
getPath() |
Reference |
getReference() |
FileStatus |
getReferencedFileStatus(FileSystem fs)
Get the
FileStatus of the file referenced by this StoreFileInfo |
static Path |
getReferredToFile(Path p) |
int |
hashCode() |
static boolean |
isDelFile(Path path) |
static boolean |
isHFile(Path path) |
boolean |
isLink() |
boolean |
isReference() |
static boolean |
isReference(Path path) |
boolean |
isTopReference() |
static boolean |
isValid(FileStatus fileStatus)
Return if the specified file is a valid store file or not.
|
StoreFileReader |
open(FileSystem fs,
CacheConfig cacheConf,
boolean canUseDropBehind,
long readahead,
boolean isPrimaryReplicaStoreFile,
java.util.concurrent.atomic.AtomicInteger refCount,
boolean shared)
Open a Reader for the StoreFile
|
void |
setRegionCoprocessorHost(RegionCoprocessorHost coprocessorHost)
Sets the region coprocessor env.
|
java.lang.String |
toString() |
static boolean |
validateStoreFileName(java.lang.String fileName)
Validate the store file name.
|
public static final java.lang.String HFILE_NAME_REGEX
public static final java.lang.String DELFILE_NAME_REGEX
public StoreFileInfo(Configuration conf, FileSystem fs, Path initialPath) throws java.io.IOException
conf
- the Configuration
to usefs
- The current file system to use.initialPath
- The Path
of the filejava.io.IOException
public StoreFileInfo(Configuration conf, FileSystem fs, FileStatus fileStatus) throws java.io.IOException
conf
- the Configuration
to usefs
- The current file system to use.fileStatus
- The FileStatus
of the filejava.io.IOException
public StoreFileInfo(Configuration conf, FileSystem fs, FileStatus fileStatus, HFileLink link) throws java.io.IOException
conf
- the Configuration
to usefs
- The current file system to use.fileStatus
- The FileStatus
of the filejava.io.IOException
public StoreFileInfo(Configuration conf, FileSystem fs, FileStatus fileStatus, Reference reference) throws java.io.IOException
conf
- fs
- fileStatus
- reference
- java.io.IOException
public void setRegionCoprocessorHost(RegionCoprocessorHost coprocessorHost)
coprocessorHost
- public Reference getReference()
public boolean isReference()
public boolean isTopReference()
public boolean isLink()
public HDFSBlocksDistribution getHDFSBlockDistribution()
public StoreFileReader open(FileSystem fs, CacheConfig cacheConf, boolean canUseDropBehind, long readahead, boolean isPrimaryReplicaStoreFile, java.util.concurrent.atomic.AtomicInteger refCount, boolean shared) throws java.io.IOException
fs
- The current file system to use.cacheConf
- The cache configuration and block cache reference.java.io.IOException
public HDFSBlocksDistribution computeHDFSBlocksDistribution(FileSystem fs) throws java.io.IOException
java.io.IOException
public FileStatus getReferencedFileStatus(FileSystem fs) throws java.io.IOException
FileStatus
of the file referenced by this StoreFileInfofs
- The current file system to use.FileStatus
of the file referenced by this StoreFileInfojava.io.IOException
public Path getPath()
Path
of the filepublic FileStatus getFileStatus() throws java.io.IOException
FileStatus
of the filejava.io.IOException
public long getModificationTime() throws java.io.IOException
java.io.IOException
public java.lang.String toString()
toString
in class java.lang.Object
public static boolean isHFile(Path path)
path
- Path to check.public static boolean isDelFile(Path path)
path
- Path to check.public static boolean isReference(Path path)
path
- Path to check.public long getCreatedTimestamp()
public static Path getReferredToFile(Path p)
public static boolean validateStoreFileName(java.lang.String fileName)
fileName
- name of the file to validatepublic static boolean isValid(FileStatus fileStatus) throws java.io.IOException
fileStatus
- The FileStatus
of the filejava.io.IOException
public boolean equals(java.lang.Object that)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public java.lang.String getActiveFileName()
For referenced hfile, we will return the name of the reference file as it will be used to construct the StoreFileReader. And for linked hfile, we will return the name of the file being linked.