Class SpannerChangeStreamSource<T>

java.lang.Object
io.github.flink.gcp.connector.spanner.source.SpannerChangeStreamSource<T>
Type Parameters:
T - the record type produced
All Implemented Interfaces:
Serializable, org.apache.flink.api.connector.source.Source<T,ChangeStreamPartitionSplit,SpannerChangeStreamEnumeratorState>, org.apache.flink.api.connector.source.SourceReaderFactory<T,ChangeStreamPartitionSplit>, org.apache.flink.api.java.typeutils.ResultTypeQueryable<T>, org.apache.flink.streaming.api.lineage.LineageVertexProvider

@PublicEvolving public final class SpannerChangeStreamSource<T> extends Object implements org.apache.flink.api.connector.source.Source<T,ChangeStreamPartitionSplit,SpannerChangeStreamEnumeratorState>, org.apache.flink.api.java.typeutils.ResultTypeQueryable<T>, org.apache.flink.streaming.api.lineage.LineageVertexProvider
FLIP-27 source for Cloud Spanner Change Streams.

Lineage identifies the configured Change Stream in namespace spanner://project:instance, with name database/changeStreams/stream and resource kind spanner-change-stream in the gcp facet. It does not infer watched tables from filters or discover them at runtime. Extraction retains this source's boundedness and does not open clients, resolve credentials, or invoke the deserializer. Flink 2.x extracts the metadata automatically; Flink 1.20 supports direct inspection but not native listener delivery.

See Also: