
public class ODiskWriteAheadLog extends OAbstractWriteAheadLog
| Modifier and Type | Field and Description |
|---|---|
static String |
MASTER_RECORD_EXTENSION |
static String |
WAL_SEGMENT_EXTENSION |
closed, lastCheckpoint, syncObject| Constructor and Description |
|---|
ODiskWriteAheadLog(int maxPagesCacheSize,
int commitDelay,
long maxSegmentSize,
String walPath,
boolean filterWALFiles,
OLocalPaginatedStorage storage,
int fileTTL) |
ODiskWriteAheadLog(OLocalPaginatedStorage storage) |
checkForClose, getLastCheckpoint, logFullCheckpointEnd, logFullCheckpointStart, logFuzzyCheckPointEnd, logFuzzyCheckPointStartpublic static final String MASTER_RECORD_EXTENSION
public static final String WAL_SEGMENT_EXTENSION
public ODiskWriteAheadLog(OLocalPaginatedStorage storage) throws IOException
IOExceptionpublic ODiskWriteAheadLog(int maxPagesCacheSize,
int commitDelay,
long maxSegmentSize,
String walPath,
boolean filterWALFiles,
OLocalPaginatedStorage storage,
int fileTTL)
throws IOException
fileTTL - If file of OLogSegmentV2 will not be accessed inside of this interval (in seconds) it will be closed by
timer.IOExceptionpublic void addLowDiskSpaceListener(OLowDiskSpaceListener listener)
public void removeLowDiskSpaceListener(OLowDiskSpaceListener listener)
public void addFullCheckpointListener(OFullCheckpointRequestListener listener)
public void removeFullCheckpointListener(OFullCheckpointRequestListener listener)
public long getCacheOverflowCount()
public OLogSequenceNumber begin() throws IOException
IOExceptionpublic OLogSequenceNumber end()
public void flush()
public OLogSequenceNumber logAtomicOperationStartRecord(boolean isRollbackSupported, OOperationUnitId unitId) throws IOException
IOExceptionpublic OLogSequenceNumber logAtomicOperationEndRecord(OOperationUnitId operationUnitId, boolean rollback, OLogSequenceNumber startLsn, Map<String,OAtomicOperationMetadata<?>> atomicOperationMetadata) throws IOException
IOExceptionpublic OLogSequenceNumber log(OWALRecord record) throws IOException
IOExceptionpublic OLogSequenceNumber getOldestTxLsn()
public void moveLsnAfter(OLogSequenceNumber lsn) throws IOException
OWriteAheadLogDO NOT REMOVE IT, USED IN ENTERPRISE STORAGE.
IOExceptionpublic long activeSegment()
public File[] nonActiveSegments(long fromSegment)
public long size()
public String getWMRFile()
public void truncate()
throws IOException
IOExceptionpublic void close()
throws IOException
IOExceptionpublic void close(boolean flush)
throws IOException
IOExceptionpublic void delete()
throws IOException
IOExceptionpublic void delete(boolean flush)
throws IOException
IOExceptionpublic OWALRecord read(OLogSequenceNumber lsn) throws IOException
IOExceptionpublic OLogSequenceNumber next(OLogSequenceNumber lsn) throws IOException
IOExceptionpublic OLogSequenceNumber getFlushedLsn()
public boolean cutTill(OLogSequenceNumber lsn) throws IOException
OWriteAheadLogOWriteAheadLog.addCutTillLimit(OLogSequenceNumber) then "protected" part of WAL will be preserved for
sure.lsn - Maximum value of LSN till WAL will be cut.true if some portion of WAL will be cut and false if WAL left untouched.IOExceptionpublic void addCutTillLimit(OLogSequenceNumber lsn)
OWriteAheadLoglsn - LSN after which cut of the WAL is not allowed.OWriteAheadLog.removeCutTillLimit(OLogSequenceNumber),
OWriteAheadLog.cutTill(OLogSequenceNumber)public void removeCutTillLimit(OLogSequenceNumber lsn)
OWriteAheadLoglsn - LSN after which cut of the WAL is not allowed.OWriteAheadLog.removeCutTillLimit(OLogSequenceNumber),
OWriteAheadLog.cutTill(OLogSequenceNumber)public long getPreferredSegmentCount()
public void checkFreeSpace()
public boolean appendNewSegment()
OWriteAheadLogtrue if new segment is added, and false otherwise.Copyright © 2009–2025 OrientDB. All rights reserved.