Package org.elasticsearch.index.translog
Class TranslogReader
java.lang.Object
org.elasticsearch.index.translog.BaseTranslogReader
org.elasticsearch.index.translog.TranslogReader
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable,java.lang.Comparable<BaseTranslogReader>
public class TranslogReader extends BaseTranslogReader implements java.io.Closeable
an immutable translog filereader
-
Field Summary
Fields Modifier and Type Field Description protected java.util.concurrent.atomic.AtomicBooleanclosedprotected longlengthFields inherited from class org.elasticsearch.index.translog.BaseTranslogReader
channel, generation, header, path -
Method Summary
Modifier and Type Method Description voidclose()protected voidensureOpen()protected booleanisClosed()static TranslogReaderopen(java.nio.channels.FileChannel channel, java.nio.file.Path path, org.elasticsearch.index.translog.Checkpoint checkpoint, java.lang.String translogUUID)Given a file channel, opens aTranslogReader, taking care of checking and validating the file header.protected voidreadBytes(java.nio.ByteBuffer buffer, long position)reads an operation at the given position into the given buffer.longsizeInBytes()inttotalOperations()Methods inherited from class org.elasticsearch.index.translog.BaseTranslogReader
checksummedStream, compareTo, getFirstOperationOffset, getGeneration, getLastModifiedTime, getPrimaryTerm, newSnapshot, path, read, readSize, toString
-
Field Details
-
Method Details
-
open
public static TranslogReader open(java.nio.channels.FileChannel channel, java.nio.file.Path path, org.elasticsearch.index.translog.Checkpoint checkpoint, java.lang.String translogUUID) throws java.io.IOExceptionGiven a file channel, opens aTranslogReader, taking care of checking and validating the file header.- Parameters:
channel- the translog file channelpath- the path to the translogcheckpoint- the translog checkpointtranslogUUID- the tranlog UUID- Returns:
- a new TranslogReader
- Throws:
java.io.IOException- if any of the file operations resulted in an I/O exception
-
sizeInBytes
public long sizeInBytes()- Specified by:
sizeInBytesin classBaseTranslogReader
-
totalOperations
public int totalOperations()- Specified by:
totalOperationsin classBaseTranslogReader
-
readBytes
protected void readBytes(java.nio.ByteBuffer buffer, long position) throws java.io.IOExceptionreads an operation at the given position into the given buffer.- Specified by:
readBytesin classBaseTranslogReader- Throws:
java.io.IOException
-
close
public final void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Throws:
java.io.IOException
-
isClosed
protected final boolean isClosed() -
ensureOpen
protected void ensureOpen()
-