Package io.debezium.connector.cassandra
Class CommitLogProcessor
- java.lang.Object
-
- io.debezium.connector.cassandra.AbstractProcessor
-
- io.debezium.connector.cassandra.CommitLogProcessor
-
public class CommitLogProcessor extends AbstractProcessor
TheCommitLogProcessoris used to process CommitLog in CDC directory. Upon readCommitLog, it processes the entire CommitLog specified in theCassandraConnectorConfigand converts each row change in the commit log into aRecord, and then emit the log via aKafkaRecordEmitter.
-
-
Field Summary
Fields Modifier and Type Field Description private FilecdcDirprivate org.apache.cassandra.db.commitlog.CommitLogReadercommitLogReaderprivate CommitLogReadHandlerImplcommitLogReadHandlerprivate CommitLogTransfercommitLogTransferprivate Set<String>erroneousCommitLogsprivate booleanerrorCommitLogReprocessEnabledprivate booleaninitialprivate booleanlatestOnlyprivate static org.slf4j.LoggerLOGGERprivate CommitLogProcessorMetricsmetricsprivate static StringNAMEprivate List<io.debezium.connector.base.ChangeEventQueue<Event>>queuesprivate AbstractDirectoryWatcherwatcher
-
Constructor Summary
Constructors Constructor Description CommitLogProcessor(CassandraConnectorContext context)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddestroy()Override destroy to clean up resources after stopping the processorvoidinitialize()Override initialize to initialize resources before starting the processorvoidprocess()The actual work the processor is doing.(package private) voidprocessCommitLog(File file)(package private) voidprocessLastModifiedCommitLog()-
Methods inherited from class io.debezium.connector.cassandra.AbstractProcessor
getName, isRunning, start, stop
-
-
-
-
Field Detail
-
LOGGER
private static final org.slf4j.Logger LOGGER
-
NAME
private static final String NAME
- See Also:
- Constant Field Values
-
commitLogReader
private final org.apache.cassandra.db.commitlog.CommitLogReader commitLogReader
-
commitLogReadHandler
private final CommitLogReadHandlerImpl commitLogReadHandler
-
cdcDir
private final File cdcDir
-
watcher
private final AbstractDirectoryWatcher watcher
-
latestOnly
private final boolean latestOnly
-
metrics
private final CommitLogProcessorMetrics metrics
-
initial
private boolean initial
-
errorCommitLogReprocessEnabled
private final boolean errorCommitLogReprocessEnabled
-
commitLogTransfer
private final CommitLogTransfer commitLogTransfer
-
-
Constructor Detail
-
CommitLogProcessor
public CommitLogProcessor(CassandraConnectorContext context) throws IOException
- Throws:
IOException
-
-
Method Detail
-
initialize
public void initialize()
Description copied from class:AbstractProcessorOverride initialize to initialize resources before starting the processor- Overrides:
initializein classAbstractProcessor
-
destroy
public void destroy()
Description copied from class:AbstractProcessorOverride destroy to clean up resources after stopping the processor- Overrides:
destroyin classAbstractProcessor
-
process
public void process() throws IOException, InterruptedExceptionDescription copied from class:AbstractProcessorThe actual work the processor is doing. This method will be executed in a while loop until processor stops or encounters exception.- Specified by:
processin classAbstractProcessor- Throws:
IOExceptionInterruptedException
-
processCommitLog
void processCommitLog(File file)
-
processLastModifiedCommitLog
void processLastModifiedCommitLog()
-
-