Class RecordV2Serializer
- java.lang.Object
-
- org.apache.ignite.internal.processors.cache.persistence.wal.serializer.RecordV2Serializer
-
- All Implemented Interfaces:
RecordSerializer
public class RecordV2Serializer extends Object implements RecordSerializer
Record V2 serializer. Stores records in following format:- Record type from
WALRecord.RecordType.index()incremented by 1 - WAL pointer to double check consistency
- Record length
- Data
- CRC or zero padding
-
-
Constructor Summary
Constructors Constructor Description RecordV2Serializer(RecordDataV2Serializer dataSerializer, boolean writePointer, boolean marshalledMode, boolean skipPositionCheck, IgniteBiPredicate<WALRecord.RecordType,WALPointer> recordFilter)Create an instance of Record V2 serializer.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description WALRecordreadRecord(FileInput in, WALPointer expPtr)Loads record from inputintsize(WALRecord record)Calculates record size in byte including expected wal pointer, CRC and type fieldintversion()booleanwritePointer()Flag to write (or not) wal pointer to recordvoidwriteRecord(WALRecord record, ByteBuffer buf)
-
-
-
Constructor Detail
-
RecordV2Serializer
public RecordV2Serializer(RecordDataV2Serializer dataSerializer, boolean writePointer, boolean marshalledMode, boolean skipPositionCheck, IgniteBiPredicate<WALRecord.RecordType,WALPointer> recordFilter)
Create an instance of Record V2 serializer.- Parameters:
dataSerializer- V2 data serializer.marshalledMode- Marshalled mode.skipPositionCheck- Skip position check mode.recordFilter- Record type filter.FilteredRecordis deserialized instead of original record.
-
-
Method Detail
-
version
public int version()
- Specified by:
versionin interfaceRecordSerializer- Returns:
- serializer version
-
writePointer
public boolean writePointer()
Flag to write (or not) wal pointer to record- Specified by:
writePointerin interfaceRecordSerializer
-
size
public int size(WALRecord record) throws IgniteCheckedException
Calculates record size in byte including expected wal pointer, CRC and type field- Specified by:
sizein interfaceRecordSerializer- Parameters:
record- Record.- Returns:
- Size in bytes.
- Throws:
IgniteCheckedException
-
writeRecord
public void writeRecord(WALRecord record, ByteBuffer buf) throws IgniteCheckedException
- Specified by:
writeRecordin interfaceRecordSerializer- Parameters:
record- Entry to write.buf- Buffer.- Throws:
IgniteCheckedException
-
readRecord
public WALRecord readRecord(FileInput in, WALPointer expPtr) throws IOException, IgniteCheckedException
Loads record from input- Specified by:
readRecordin interfaceRecordSerializer- Parameters:
in- Data input to read data from.expPtr- expected WAL pointer for record. Used to validate actual position against expected from the file- Returns:
- Read entry.
- Throws:
IOExceptionIgniteCheckedException
-
-