Class AbstractJournalUpdateTask
java.lang.Object
org.apache.activemq.artemis.core.journal.impl.AbstractJournalUpdateTask
- All Implemented Interfaces:
JournalReaderCallback
- Direct Known Subclasses:
JournalCompactor
Super class for Journal maintenances such as clean up and Compactor
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected JournalFilestatic final Stringprotected final SequentialFileFactoryprotected final JournalFilesRepositoryprotected final JournalImplprotected final List<JournalFile> protected longprotected SequentialFile -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractJournalUpdateTask(SequentialFileFactory fileFactory, JournalImpl journal, JournalFilesRepository filesRepository, org.apache.activemq.artemis.utils.collections.ConcurrentLongHashSet recordsSnapshot, long nextOrderingID) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddToRecordsSnaptshot(long id) booleancontainsRecord(long id) voidflush()Write pending output into fileprotected ActiveMQBufferprotected voidopenFile()static SequentialFilereadControlFile(SequentialFileFactory fileFactory, List<String> dataFiles, List<String> newFiles, List<Pair<String, String>> renameFile) static SequentialFilewriteControlFile(SequentialFileFactory fileFactory, List<JournalFile> files, List<JournalFile> newFiles, List<Pair<String, String>> renames) protected voidwriteEncoder(JournalInternalRecord record) protected voidwriteEncoder(JournalInternalRecord record, int txcounter) Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface JournalReaderCallback
done, markAsDataFile, onReadAddRecord, onReadAddRecordTX, onReadCommitRecord, onReadDeleteRecord, onReadDeleteRecordTX, onReadEventRecord, onReadPrepareRecord, onReadRollbackRecord, onReadUpdateRecord, onReadUpdateRecordTX
-
Field Details
-
FILE_COMPACT_CONTROL
- See Also:
-
journal
-
fileFactory
-
currentFile
-
sequentialFile
-
filesRepository
-
nextOrderingID
protected long nextOrderingID -
newDataFiles
-
-
Constructor Details
-
AbstractJournalUpdateTask
protected AbstractJournalUpdateTask(SequentialFileFactory fileFactory, JournalImpl journal, JournalFilesRepository filesRepository, org.apache.activemq.artemis.utils.collections.ConcurrentLongHashSet recordsSnapshot, long nextOrderingID)
-
-
Method Details
-
writeControlFile
public static SequentialFile writeControlFile(SequentialFileFactory fileFactory, List<JournalFile> files, List<JournalFile> newFiles, List<Pair<String, String>> renames) throws Exception- Throws:
Exception
-
readControlFile
-
flush
-
containsRecord
public boolean containsRecord(long id) -
openFile
-
addToRecordsSnaptshot
protected void addToRecordsSnaptshot(long id) -
getWritingChannel
-
writeEncoder
- Throws:
Exception
-
writeEncoder
- Throws:
Exception
-