Package io.debezium.connector.mongodb
Class MongoDbConnectorTask
java.lang.Object
org.apache.kafka.connect.source.SourceTask
io.debezium.connector.common.BaseSourceTask<MongoDbPartition,MongoDbOffsetContext>
io.debezium.connector.mongodb.MongoDbConnectorTask
- All Implemented Interfaces:
org.apache.kafka.connect.connector.Task
@ThreadSafe
public final class MongoDbConnectorTask
extends BaseSourceTask<MongoDbPartition,MongoDbOffsetContext>
A Kafka Connect source task that replicates the changes from one or more MongoDB replica sets.
Generally, the MongoDbConnector assigns each replica set to a separate task, although multiple
replica sets will be assigned to each task when the maximum number of tasks is limited. Regardless, every task will use a
separate thread to replicate the contents of each replica set, and each replication thread may use multiple threads
to perform an initial sync of the replica set.
- Author:
- Randall Hauch
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class io.debezium.connector.common.BaseSourceTask
BaseSourceTask.StateNested classes/interfaces inherited from class org.apache.kafka.connect.source.SourceTask
org.apache.kafka.connect.source.SourceTask.TransactionBoundary -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Stringprivate ErrorHandlerprivate final org.slf4j.Loggerprivate static final org.slf4j.Loggerprivate ChangeEventQueue<DataChangeEvent>private MongoDbSchemaprivate MongoDbTaskContextprivate StringFields inherited from class io.debezium.connector.common.BaseSourceTask
coordinatorFields inherited from class org.apache.kafka.connect.source.SourceTask
context, TRANSACTION_BOUNDARY_CONFIG -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidcheckShardSpecificOffsetsIfNeeded(MongoDbConnectorConfig connectorConfig, ReplicaSets currentReplicaSets) List<org.apache.kafka.connect.source.SourceRecord>doPoll()voiddoStop()private MongoDbOffsetContextgetPreviousOffset(MongoDbConnectorConfig connectorConfig, ReplicaSets replicaSets) private ReplicaSetsgetReplicaSets(MongoDbConnectorConfig connectorConfig) start(Configuration config) version()protected ConfigurationMethods inherited from class io.debezium.connector.common.BaseSourceTask
commit, commitRecord, getAvailableSignalChannels, getNotificationChannels, getPreviousOffsets, getTaskState, logStatistics, poll, registerServiceProviders, resetErrorHandlerRetriesIfNeeded, start, stopMethods inherited from class org.apache.kafka.connect.source.SourceTask
commitRecord, initialize
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER -
CONTEXT_NAME
- See Also:
-
logger
private final org.slf4j.Logger logger -
queue
-
taskName
-
taskContext
-
errorHandler
-
schema
-
-
Constructor Details
-
MongoDbConnectorTask
public MongoDbConnectorTask()
-
-
Method Details
-
version
-
start
public ChangeEventSourceCoordinator<MongoDbPartition,MongoDbOffsetContext> start(Configuration config) - Specified by:
startin classBaseSourceTask<MongoDbPartition,MongoDbOffsetContext>
-
doPoll
- Specified by:
doPollin classBaseSourceTask<MongoDbPartition,MongoDbOffsetContext> - Throws:
InterruptedException
-
doStop
public void doStop()- Specified by:
doStopin classBaseSourceTask<MongoDbPartition,MongoDbOffsetContext>
-
getAllConfigurationFields
- Specified by:
getAllConfigurationFieldsin classBaseSourceTask<MongoDbPartition,MongoDbOffsetContext>
-
getPreviousOffset
private MongoDbOffsetContext getPreviousOffset(MongoDbConnectorConfig connectorConfig, ReplicaSets replicaSets) -
checkShardSpecificOffsetsIfNeeded
private void checkShardSpecificOffsetsIfNeeded(MongoDbConnectorConfig connectorConfig, ReplicaSets currentReplicaSets) -
getReplicaSets
-
withMaskedSensitiveOptions
- Overrides:
withMaskedSensitiveOptionsin classBaseSourceTask<MongoDbPartition,MongoDbOffsetContext>
-