Class PostgresSourceReader
- java.lang.Object
-
- org.apache.flink.connector.base.source.reader.SourceReaderBase<E,T,SplitT,SplitStateT>
-
- org.apache.flink.connector.base.source.reader.SingleThreadMultiplexSourceReaderBase<SourceRecords,T,SourceSplitBase,SourceSplitState>
-
- org.apache.flink.cdc.connectors.base.source.reader.IncrementalSourceReader
-
- org.apache.flink.cdc.connectors.base.source.reader.IncrementalSourceReaderWithCommit
-
- org.apache.flink.cdc.connectors.postgres.source.reader.PostgresSourceReader
-
- All Implemented Interfaces:
AutoCloseable,org.apache.flink.api.common.state.CheckpointListener,org.apache.flink.api.connector.source.SourceReader
@Experimental public class PostgresSourceReader extends IncrementalSourceReaderWithCommit
The multi-parallel postgres source reader for table snapshot phase fromSnapshotSplitand then single-parallel source reader for table stream phase fromStreamSplit.If scan newly added table is enable, postgres reader will not commit offset until all new added tables' snapshot splits are finished.
-
-
Field Summary
-
Fields inherited from class org.apache.flink.cdc.connectors.base.source.reader.IncrementalSourceReaderWithCommit
lastCheckpointOffsets
-
Fields inherited from class org.apache.flink.cdc.connectors.base.source.reader.IncrementalSourceReader
dialect, incrementalSourceReaderContext, sourceConfig, suspendedStreamSplit, uncompletedStreamSplits
-
-
Constructor Summary
Constructors Constructor Description PostgresSourceReader(org.apache.flink.connector.base.source.reader.synchronization.FutureCompletingBlockingQueue elementQueue, java.util.function.Supplier supplier, org.apache.flink.connector.base.source.reader.RecordEmitter recordEmitter, org.apache.flink.configuration.Configuration config, IncrementalSourceReaderContext incrementalSourceReaderContext, SourceConfig sourceConfig, SourceSplitSerializer sourceSplitSerializer, DataSourceDialect dialect)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidhandleSourceEvents(org.apache.flink.api.connector.source.SourceEvent sourceEvent)protected SourceSplitStateinitializedState(SourceSplitBase split)voidnotifyCheckpointComplete(long checkpointId)protected voidonSplitFinished(Map finishedSplitIds)List<SourceSplitBase>snapshotState(long checkpointId)protected voidupdateStreamSplitFinishedSplitsSize(LatestFinishedSplitsNumberEvent sourceEvent)-
Methods inherited from class org.apache.flink.cdc.connectors.base.source.reader.IncrementalSourceReader
addSplits, getFinishedUnackedSplits, getNextMetaGroupId, start, toSplitType
-
Methods inherited from class org.apache.flink.connector.base.source.reader.SourceReaderBase
close, getNumberOfCurrentlyAssignedSplits, isAvailable, notifyNoMoreSplits, pauseOrResumeSplits, pollNext
-
-
-
-
Constructor Detail
-
PostgresSourceReader
public PostgresSourceReader(org.apache.flink.connector.base.source.reader.synchronization.FutureCompletingBlockingQueue elementQueue, java.util.function.Supplier supplier, org.apache.flink.connector.base.source.reader.RecordEmitter recordEmitter, org.apache.flink.configuration.Configuration config, IncrementalSourceReaderContext incrementalSourceReaderContext, SourceConfig sourceConfig, SourceSplitSerializer sourceSplitSerializer, DataSourceDialect dialect)
-
-
Method Detail
-
handleSourceEvents
public void handleSourceEvents(org.apache.flink.api.connector.source.SourceEvent sourceEvent)
- Specified by:
handleSourceEventsin interfaceorg.apache.flink.api.connector.source.SourceReader- Overrides:
handleSourceEventsin classIncrementalSourceReader
-
initializedState
protected SourceSplitState initializedState(SourceSplitBase split)
- Overrides:
initializedStatein classIncrementalSourceReader
-
updateStreamSplitFinishedSplitsSize
protected void updateStreamSplitFinishedSplitsSize(LatestFinishedSplitsNumberEvent sourceEvent)
- Overrides:
updateStreamSplitFinishedSplitsSizein classIncrementalSourceReader
-
snapshotState
public List<SourceSplitBase> snapshotState(long checkpointId)
- Specified by:
snapshotStatein interfaceorg.apache.flink.api.connector.source.SourceReader- Overrides:
snapshotStatein classIncrementalSourceReaderWithCommit
-
notifyCheckpointComplete
public void notifyCheckpointComplete(long checkpointId) throws Exception- Specified by:
notifyCheckpointCompletein interfaceorg.apache.flink.api.common.state.CheckpointListener- Specified by:
notifyCheckpointCompletein interfaceorg.apache.flink.api.connector.source.SourceReader- Overrides:
notifyCheckpointCompletein classIncrementalSourceReaderWithCommit- Throws:
Exception
-
onSplitFinished
protected void onSplitFinished(Map finishedSplitIds)
- Overrides:
onSplitFinishedin classIncrementalSourceReader
-
-