Class Db2ScanFetchTask.Db2SnapshotSplitReadTask

  • All Implemented Interfaces:
    io.debezium.pipeline.source.spi.ChangeEventSource, io.debezium.pipeline.source.spi.SnapshotChangeEventSource<io.debezium.connector.db2.Db2Partition,​io.debezium.connector.db2.Db2OffsetContext>
    Enclosing class:
    Db2ScanFetchTask

    public static class Db2ScanFetchTask.Db2SnapshotSplitReadTask
    extends io.debezium.pipeline.source.AbstractSnapshotChangeEventSource<io.debezium.connector.db2.Db2Partition,​io.debezium.connector.db2.Db2OffsetContext>
    A wrapped task to fetch snapshot split of table.
    • Nested Class Summary

      • Nested classes/interfaces inherited from class io.debezium.pipeline.source.AbstractSnapshotChangeEventSource

        io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.SnapshotContext<P extends io.debezium.pipeline.spi.Partition,​O extends io.debezium.pipeline.spi.OffsetContext>, io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.SnapshottingTask
      • Nested classes/interfaces inherited from interface io.debezium.pipeline.source.spi.ChangeEventSource

        io.debezium.pipeline.source.spi.ChangeEventSource.ChangeEventSourceContext
    • Constructor Summary

      Constructors 
      Constructor Description
      Db2SnapshotSplitReadTask​(io.debezium.connector.db2.Db2ConnectorConfig connectorConfig, io.debezium.connector.db2.Db2OffsetContext previousOffset, io.debezium.pipeline.source.spi.SnapshotProgressListener<io.debezium.connector.db2.Db2Partition> snapshotProgressListener, io.debezium.connector.db2.Db2DatabaseSchema databaseSchema, Db2Connection jdbcConnection, io.debezium.pipeline.EventDispatcher<io.debezium.connector.db2.Db2Partition,​io.debezium.relational.TableId> dispatcher, io.debezium.pipeline.EventDispatcher.SnapshotReceiver<io.debezium.connector.db2.Db2Partition> snapshotReceiver, SnapshotSplit snapshotSplit)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected io.debezium.pipeline.spi.SnapshotResult<io.debezium.connector.db2.Db2OffsetContext> doExecute​(io.debezium.pipeline.source.spi.ChangeEventSource.ChangeEventSourceContext context, io.debezium.connector.db2.Db2OffsetContext previousOffset, io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.SnapshotContext<io.debezium.connector.db2.Db2Partition,​io.debezium.connector.db2.Db2OffsetContext> snapshotContext, io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.SnapshottingTask snapshottingTask)  
      io.debezium.pipeline.spi.SnapshotResult<io.debezium.connector.db2.Db2OffsetContext> execute​(io.debezium.pipeline.source.spi.ChangeEventSource.ChangeEventSourceContext context, io.debezium.connector.db2.Db2Partition partition, io.debezium.connector.db2.Db2OffsetContext previousOffset)  
      protected io.debezium.pipeline.spi.ChangeRecordEmitter<io.debezium.connector.db2.Db2Partition> getChangeRecordEmitter​(org.apache.flink.cdc.connectors.db2.source.fetch.Db2ScanFetchTask.Db2SnapshotSplitReadTask.Db2SnapshotContext snapshotContext, io.debezium.relational.TableId tableId, Object[] row)  
      protected io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.SnapshottingTask getSnapshottingTask​(io.debezium.connector.db2.Db2Partition partition, io.debezium.connector.db2.Db2OffsetContext previousOffset)  
      protected org.apache.flink.cdc.connectors.db2.source.fetch.Db2ScanFetchTask.Db2SnapshotSplitReadTask.Db2SnapshotContext prepare​(io.debezium.connector.db2.Db2Partition partition)  
      • Methods inherited from class io.debezium.pipeline.source.AbstractSnapshotChangeEventSource

        complete, delaySnapshotIfNeeded, determineDataCollectionsToBeSnapshotted
    • Constructor Detail

      • Db2SnapshotSplitReadTask

        public Db2SnapshotSplitReadTask​(io.debezium.connector.db2.Db2ConnectorConfig connectorConfig,
                                        io.debezium.connector.db2.Db2OffsetContext previousOffset,
                                        io.debezium.pipeline.source.spi.SnapshotProgressListener<io.debezium.connector.db2.Db2Partition> snapshotProgressListener,
                                        io.debezium.connector.db2.Db2DatabaseSchema databaseSchema,
                                        Db2Connection jdbcConnection,
                                        io.debezium.pipeline.EventDispatcher<io.debezium.connector.db2.Db2Partition,​io.debezium.relational.TableId> dispatcher,
                                        io.debezium.pipeline.EventDispatcher.SnapshotReceiver<io.debezium.connector.db2.Db2Partition> snapshotReceiver,
                                        SnapshotSplit snapshotSplit)
    • Method Detail

      • execute

        public io.debezium.pipeline.spi.SnapshotResult<io.debezium.connector.db2.Db2OffsetContext> execute​(io.debezium.pipeline.source.spi.ChangeEventSource.ChangeEventSourceContext context,
                                                                                                           io.debezium.connector.db2.Db2Partition partition,
                                                                                                           io.debezium.connector.db2.Db2OffsetContext previousOffset)
                                                                                                    throws InterruptedException
        Specified by:
        execute in interface io.debezium.pipeline.source.spi.SnapshotChangeEventSource<io.debezium.connector.db2.Db2Partition,​io.debezium.connector.db2.Db2OffsetContext>
        Overrides:
        execute in class io.debezium.pipeline.source.AbstractSnapshotChangeEventSource<io.debezium.connector.db2.Db2Partition,​io.debezium.connector.db2.Db2OffsetContext>
        Throws:
        InterruptedException
      • doExecute

        protected io.debezium.pipeline.spi.SnapshotResult<io.debezium.connector.db2.Db2OffsetContext> doExecute​(io.debezium.pipeline.source.spi.ChangeEventSource.ChangeEventSourceContext context,
                                                                                                                io.debezium.connector.db2.Db2OffsetContext previousOffset,
                                                                                                                io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.SnapshotContext<io.debezium.connector.db2.Db2Partition,​io.debezium.connector.db2.Db2OffsetContext> snapshotContext,
                                                                                                                io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.SnapshottingTask snapshottingTask)
                                                                                                         throws Exception
        Specified by:
        doExecute in class io.debezium.pipeline.source.AbstractSnapshotChangeEventSource<io.debezium.connector.db2.Db2Partition,​io.debezium.connector.db2.Db2OffsetContext>
        Throws:
        Exception
      • getSnapshottingTask

        protected io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.SnapshottingTask getSnapshottingTask​(io.debezium.connector.db2.Db2Partition partition,
                                                                                                                     io.debezium.connector.db2.Db2OffsetContext previousOffset)
        Specified by:
        getSnapshottingTask in class io.debezium.pipeline.source.AbstractSnapshotChangeEventSource<io.debezium.connector.db2.Db2Partition,​io.debezium.connector.db2.Db2OffsetContext>
      • prepare

        protected org.apache.flink.cdc.connectors.db2.source.fetch.Db2ScanFetchTask.Db2SnapshotSplitReadTask.Db2SnapshotContext prepare​(io.debezium.connector.db2.Db2Partition partition)
                                                                                                                                 throws Exception
        Specified by:
        prepare in class io.debezium.pipeline.source.AbstractSnapshotChangeEventSource<io.debezium.connector.db2.Db2Partition,​io.debezium.connector.db2.Db2OffsetContext>
        Throws:
        Exception
      • getChangeRecordEmitter

        protected io.debezium.pipeline.spi.ChangeRecordEmitter<io.debezium.connector.db2.Db2Partition> getChangeRecordEmitter​(org.apache.flink.cdc.connectors.db2.source.fetch.Db2ScanFetchTask.Db2SnapshotSplitReadTask.Db2SnapshotContext snapshotContext,
                                                                                                                              io.debezium.relational.TableId tableId,
                                                                                                                              Object[] row)