@InterfaceAudience.LimitedPrivate(value={"Coprocesssor","Phoenix","Configuration"}) public class ProtobufLogReader extends ReaderBase
<PB_WAL_MAGIC><WALHeader><WALEdits>...<WALEdits><Trailer> <TrailerSize> <PB_WAL_COMPLETE_MAGIC>
The Reader reads meta information (WAL Compression state, WALTrailer, etc) in ProtobufLogReader#initReader(FSDataInputStream). A WALTrailer is an extensible structure which is appended at the end of the WAL. This is empty for now; it can contain some meta information such as Region level stats, etc in future.Modifier and Type | Field and Description |
---|---|
protected WALCellCodec.ByteStringUncompressor |
byteStringUncompressor |
protected Codec.Decoder |
cellDecoder |
protected boolean |
hasCompression |
protected boolean |
hasTagCompression |
protected org.apache.hadoop.fs.FSDataInputStream |
inputStream |
static byte[] |
PB_WAL_COMPLETE_MAGIC |
static byte[] |
PB_WAL_MAGIC |
protected WALProtos.WALTrailer |
trailer |
protected int |
trailerWarnSize |
compressionContext, conf, edit, emptyCompressionContext, fileLength, fs, path
Constructor and Description |
---|
ProtobufLogReader() |
Modifier and Type | Method and Description |
---|---|
void |
close() |
protected WALCellCodec |
getCodec(org.apache.hadoop.conf.Configuration conf,
String cellCodecClsName,
CompressionContext compressionContext) |
String |
getCodecClsName() |
long |
getPosition() |
List<String> |
getWriterClsNames() |
protected boolean |
hasCompression() |
protected boolean |
hasTagCompression() |
void |
init(org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.Path path,
org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.FSDataInputStream stream) |
protected void |
initAfterCompression()
Initializes the compression after the shared stuff has been initialized.
|
protected void |
initAfterCompression(String cellCodecClsName)
Initializes the compression after the shared stuff has been initialized.
|
protected String |
initReader(org.apache.hadoop.fs.FSDataInputStream stream)
Initializes the log reader with a particular stream (may be null).
|
protected org.apache.hadoop.hbase.regionserver.wal.ProtobufLogReader.WALHdrContext |
readHeader(WALProtos.WALHeader.Builder builder,
org.apache.hadoop.fs.FSDataInputStream stream) |
protected boolean |
readNext(WAL.Entry entry)
Read next entry.
|
void |
reset() |
protected void |
seekOnFs(long pos)
Performs a filesystem-level seek to a certain position in an underlying file.
|
long |
trailerSize() |
next, next, seek
@InterfaceAudience.Private public static final byte[] PB_WAL_MAGIC
@InterfaceAudience.Private public static final byte[] PB_WAL_COMPLETE_MAGIC
protected org.apache.hadoop.fs.FSDataInputStream inputStream
protected Codec.Decoder cellDecoder
protected WALCellCodec.ByteStringUncompressor byteStringUncompressor
protected boolean hasCompression
protected boolean hasTagCompression
protected WALProtos.WALTrailer trailer
protected int trailerWarnSize
@InterfaceAudience.Private public long trailerSize()
public void close() throws IOException
IOException
public long getPosition() throws IOException
IOException
public void reset() throws IOException
IOException
public void init(org.apache.hadoop.fs.FileSystem fs, org.apache.hadoop.fs.Path path, org.apache.hadoop.conf.Configuration conf, org.apache.hadoop.fs.FSDataInputStream stream) throws IOException
init
in interface AbstractFSWALProvider.Reader
init
in class ReaderBase
fs
- File system.path
- Path.conf
- Configuration.stream
- Input stream that may have been pre-opened by the caller; may be null.IOException
protected String initReader(org.apache.hadoop.fs.FSDataInputStream stream) throws IOException
ReaderBase
initReader
in class ReaderBase
IOException
public String getCodecClsName()
protected org.apache.hadoop.hbase.regionserver.wal.ProtobufLogReader.WALHdrContext readHeader(WALProtos.WALHeader.Builder builder, org.apache.hadoop.fs.FSDataInputStream stream) throws IOException
IOException
protected WALCellCodec getCodec(org.apache.hadoop.conf.Configuration conf, String cellCodecClsName, CompressionContext compressionContext) throws IOException
IOException
protected void initAfterCompression() throws IOException
ReaderBase
initAfterCompression
in class ReaderBase
IOException
protected void initAfterCompression(String cellCodecClsName) throws IOException
ReaderBase
initAfterCompression
in class ReaderBase
cellCodecClsName
- class name of cell CodecIOException
protected boolean hasCompression()
hasCompression
in class ReaderBase
protected boolean hasTagCompression()
hasTagCompression
in class ReaderBase
protected boolean readNext(WAL.Entry entry) throws IOException
ReaderBase
readNext
in class ReaderBase
entry
- The entry to read into.IOException
protected void seekOnFs(long pos) throws IOException
ReaderBase
seekOnFs
in class ReaderBase
IOException
Copyright © 2007–2019 Cloudera. All rights reserved.