The response has been limited to 50k tokens of the smallest files in the repo. You can remove this limitation by removing the max tokens filter.
├── .asf.yaml
├── .dlc.json
├── .github
    ├── ISSUE_TEMPLATE
    │   ├── config.yml
    │   └── issue-notice.yml
    ├── labeler.yml
    └── workflows
    │   ├── approve_label.yml
    │   ├── approve_label_trigger.yml
    │   ├── build_docs.yml
    │   ├── close_stale.yml
    │   ├── docs.sh
    │   ├── flink_cdc_base.yml
    │   ├── flink_cdc_ci.yml
    │   ├── flink_cdc_ci_nightly.yml
    │   ├── label.yml
    │   └── utils.sh
├── .gitignore
├── .gitmodules
├── .idea
    └── vcs.xml
├── Dockerfile
├── LICENSE
├── NOTICE
├── README.md
├── docs
    ├── .gitignore
    ├── README.md
    ├── assets
    │   ├── _custom.scss
    │   ├── _fonts.scss
    │   ├── github.css
    │   └── search-data.js
    ├── config.toml
    ├── content.zh
    │   ├── _index.md
    │   ├── docs
    │   │   ├── connectors
    │   │   │   ├── _index.md
    │   │   │   ├── flink-sources
    │   │   │   │   ├── _index.md
    │   │   │   │   ├── datastream-api-package-guidance.md
    │   │   │   │   ├── db2-cdc.md
    │   │   │   │   ├── mongodb-cdc.md
    │   │   │   │   ├── mysql-cdc.md
    │   │   │   │   ├── oceanbase-cdc.md
    │   │   │   │   ├── oracle-cdc.md
    │   │   │   │   ├── overview.md
    │   │   │   │   ├── postgres-cdc.md
    │   │   │   │   ├── sqlserver-cdc.md
    │   │   │   │   ├── tidb-cdc.md
    │   │   │   │   ├── tutorials
    │   │   │   │   │   ├── _index.md
    │   │   │   │   │   ├── build-real-time-data-lake-tutorial.md
    │   │   │   │   │   ├── build-streaming-etl-tutorial.md
    │   │   │   │   │   ├── db2-tutorial.md
    │   │   │   │   │   ├── mongodb-tutorial.md
    │   │   │   │   │   ├── oceanbase-tutorial.md
    │   │   │   │   │   ├── oracle-tutorial.md
    │   │   │   │   │   ├── polardbx-tutorial.md
    │   │   │   │   │   ├── sqlserver-tutorial.md
    │   │   │   │   │   └── tidb-tutorial.md
    │   │   │   │   └── vitess-cdc.md
    │   │   │   └── pipeline-connectors
    │   │   │   │   ├── _index.md
    │   │   │   │   ├── doris.md
    │   │   │   │   ├── elasticsearch.md
    │   │   │   │   ├── iceberg.md
    │   │   │   │   ├── kafka.md
    │   │   │   │   ├── maxcompute.md
    │   │   │   │   ├── mysql.md
    │   │   │   │   ├── oceanbase.md
    │   │   │   │   ├── overview.md
    │   │   │   │   ├── paimon.md
    │   │   │   │   └── starrocks.md
    │   │   ├── core-concept
    │   │   │   ├── _index.md
    │   │   │   ├── data-pipeline.md
    │   │   │   ├── data-sink.md
    │   │   │   ├── data-source.md
    │   │   │   ├── route.md
    │   │   │   ├── schema-evolution.md
    │   │   │   ├── table-id.md
    │   │   │   └── transform.md
    │   │   ├── deployment
    │   │   │   ├── _index.md
    │   │   │   ├── kubernetes.md
    │   │   │   ├── standalone.md
    │   │   │   └── yarn.md
    │   │   ├── developer-guide
    │   │   │   ├── _index.md
    │   │   │   ├── contribute-to-flink-cdc.md
    │   │   │   ├── licenses.md
    │   │   │   └── understand-flink-cdc-api.md
    │   │   ├── faq
    │   │   │   ├── _index.md
    │   │   │   └── faq.md
    │   │   └── get-started
    │   │   │   ├── _index.md
    │   │   │   ├── introduction.md
    │   │   │   └── quickstart
    │   │   │       ├── _index.md
    │   │   │       ├── cdc-up-quickstart-guide.md
    │   │   │       ├── mysql-to-doris.md
    │   │   │       └── mysql-to-starrocks.md
    │   └── versions.md
    ├── content
    │   ├── _index.md
    │   ├── docs
    │   │   ├── connectors
    │   │   │   ├── _index.md
    │   │   │   ├── flink-sources
    │   │   │   │   ├── _index.md
    │   │   │   │   ├── datastream-api-package-guidance.md
    │   │   │   │   ├── db2-cdc.md
    │   │   │   │   ├── mongodb-cdc.md
    │   │   │   │   ├── mysql-cdc.md
    │   │   │   │   ├── oceanbase-cdc.md
    │   │   │   │   ├── oracle-cdc.md
    │   │   │   │   ├── overview.md
    │   │   │   │   ├── postgres-cdc.md
    │   │   │   │   ├── sqlserver-cdc.md
    │   │   │   │   ├── tidb-cdc.md
    │   │   │   │   ├── tutorials
    │   │   │   │   │   ├── _index.md
    │   │   │   │   │   ├── build-real-time-data-lake-tutorial.md
    │   │   │   │   │   ├── build-streaming-etl-tutorial.md
    │   │   │   │   │   ├── db2-tutorial.md
    │   │   │   │   │   ├── mongodb-tutorial.md
    │   │   │   │   │   ├── oceanbase-tutorial.md
    │   │   │   │   │   ├── oracle-tutorial.md
    │   │   │   │   │   ├── polardbx-tutorial.md
    │   │   │   │   │   ├── sqlserver-tutorial.md
    │   │   │   │   │   └── tidb-tutorial.md
    │   │   │   │   └── vitess-cdc.md
    │   │   │   └── pipeline-connectors
    │   │   │   │   ├── _index.md
    │   │   │   │   ├── doris.md
    │   │   │   │   ├── elasticsearch.md
    │   │   │   │   ├── iceberg.md
    │   │   │   │   ├── kafka.md
    │   │   │   │   ├── maxcompute.md
    │   │   │   │   ├── mysql.md
    │   │   │   │   ├── oceanbase.md
    │   │   │   │   ├── overview.md
    │   │   │   │   ├── paimon.md
    │   │   │   │   └── starrocks.md
    │   │   ├── core-concept
    │   │   │   ├── _index.md
    │   │   │   ├── data-pipeline.md
    │   │   │   ├── data-sink.md
    │   │   │   ├── data-source.md
    │   │   │   ├── route.md
    │   │   │   ├── schema-evolution.md
    │   │   │   ├── table-id.md
    │   │   │   └── transform.md
    │   │   ├── deployment
    │   │   │   ├── _index.md
    │   │   │   ├── kubernetes.md
    │   │   │   ├── standalone.md
    │   │   │   └── yarn.md
    │   │   ├── developer-guide
    │   │   │   ├── _index.md
    │   │   │   ├── contribute-to-flink-cdc.md
    │   │   │   ├── licenses.md
    │   │   │   └── understand-flink-cdc-api.md
    │   │   ├── faq
    │   │   │   ├── _index.md
    │   │   │   └── faq.md
    │   │   └── get-started
    │   │   │   ├── _index.md
    │   │   │   ├── introduction.md
    │   │   │   └── quickstart
    │   │   │       ├── _index.md
    │   │   │       ├── cdc-up-quickstart-guide.md
    │   │   │       ├── mysql-to-doris.md
    │   │   │       └── mysql-to-starrocks.md
    │   └── versions.md
    ├── layouts
    │   ├── _default
    │   │   └── baseof.html
    │   ├── partials
    │   │   └── docs
    │   │   │   ├── footer.html
    │   │   │   ├── inject
    │   │   │       ├── content-before.html
    │   │   │       ├── head.html
    │   │   │       ├── menu-after.html
    │   │   │       └── menu-before.html
    │   │   │   ├── interpolate.html
    │   │   │   ├── menu-filetree.html
    │   │   │   ├── menu.html
    │   │   │   ├── simple-title.html
    │   │   │   ├── title.html
    │   │   │   └── toc.html
    │   └── shortcodes
    │   │   ├── all_versions.html
    │   │   ├── artifact.html
    │   │   ├── artifact_gradle.html
    │   │   ├── artifact_tabs.html
    │   │   ├── beta.html
    │   │   ├── build_time.html
    │   │   ├── center.html
    │   │   ├── check.html
    │   │   ├── connector_artifact.html
    │   │   ├── downloads.html
    │   │   ├── gh_link.html
    │   │   ├── github_repo.html
    │   │   ├── img.html
    │   │   ├── include_reporter_config.html
    │   │   ├── javadoc.html
    │   │   ├── label.html
    │   │   ├── py_connector_download_link.html
    │   │   ├── py_download_link.html
    │   │   ├── pythondoc.html
    │   │   ├── query_state_warning.html
    │   │   ├── query_state_warning_zh.html
    │   │   ├── ref_static.html
    │   │   ├── scala_version.html
    │   │   ├── sql_connector_download_table.html
    │   │   ├── sql_download_table.html
    │   │   ├── sql_functions.html
    │   │   ├── sql_functions_zh.html
    │   │   ├── sql_optional_connectors.html
    │   │   ├── sql_optional_formats.html
    │   │   ├── stable.html
    │   │   ├── tab.html
    │   │   ├── tabs.html
    │   │   ├── top.html
    │   │   ├── training_link.html
    │   │   ├── training_repo.html
    │   │   ├── unstable.html
    │   │   ├── version.html
    │   │   └── xmark.html
    └── static
    │   ├── favicon.png
    │   ├── fig
    │       ├── LICENSE.txt
    │       ├── architecture.png
    │       ├── cdc-flow.png
    │       ├── design.png
    │       ├── favicon.png
    │       ├── flinkcdc-logo.png
    │       ├── flow-of-events.png
    │       ├── index-background-footer.png
    │       ├── index-background-header.png
    │       ├── index-yaml-example.png
    │       ├── mysql-doris-tutorial
    │       │   ├── doris-create-table.png
    │       │   ├── doris-display-data.png
    │       │   ├── doris-display-result.png
    │       │   ├── doris-ui.png
    │       │   ├── flink-ui.png
    │       │   └── mysql-to-doris.png
    │       ├── mysql-postgres-tutorial
    │       │   ├── flink-cdc-streaming-etl.png
    │       │   ├── flink-sql-client.png
    │       │   ├── flink-ui.png
    │       │   ├── kafka-gmv-changes.gif
    │       │   ├── kibana-create-index-pattern.png
    │       │   ├── kibana-detailed-orders-changes.gif
    │       │   └── kibana-detailed-orders.png
    │       ├── mysql-starrocks-tutorial
    │       │   ├── flink-ui.png
    │       │   ├── mysql-to-starrocks.png
    │       │   ├── starrocks-display-data.png
    │       │   └── starrocks-display-result.png
    │       └── real-time-data-lake-tutorial
    │       │   ├── data_in_iceberg.png
    │       │   ├── files-in-iceberg.png
    │       │   ├── final-data-in-iceberg.png
    │       │   ├── flink-cdc-iceberg-running-job.png
    │       │   ├── flink-sql-client.png
    │       │   ├── flink-ui.png
    │       │   └── real-time-data-lake-tutorial.png
    │   ├── flink-header-logo.svg
    │   ├── font-awesome
    │       ├── css
    │       │   ├── font-awesome.css
    │       │   └── font-awesome.min.css
    │       └── fonts
    │       │   ├── FontAwesome.otf
    │       │   ├── fontawesome-webfont.eot
    │       │   ├── fontawesome-webfont.svg
    │       │   ├── fontawesome-webfont.ttf
    │       │   ├── fontawesome-webfont.woff
    │       │   └── fontawesome-webfont.woff2
    │   ├── js
    │       ├── anchor.min.js
    │       └── flink.js
    │   └── navbar-brand-logo.jpg
├── flink-cdc-cli
    ├── pom.xml
    └── src
    │   ├── main
    │       └── java
    │       │   └── org
    │       │       └── apache
    │       │           └── flink
    │       │               └── cdc
    │       │                   └── cli
    │       │                       ├── CliExecutor.java
    │       │                       ├── CliFrontend.java
    │       │                       ├── CliFrontendOptions.java
    │       │                       ├── parser
    │       │                           ├── PipelineDefinitionParser.java
    │       │                           └── YamlPipelineDefinitionParser.java
    │       │                       └── utils
    │       │                           ├── ConfigurationUtils.java
    │       │                           ├── FlinkEnvironmentUtils.java
    │       │                           └── YamlParserUtils.java
    │   └── test
    │       ├── java
    │           └── org
    │           │   └── apache
    │           │       └── flink
    │           │           └── cdc
    │           │               └── cli
    │           │                   ├── CliFrontendTest.java
    │           │                   ├── parser
    │           │                       └── YamlPipelineDefinitionParserTest.java
    │           │                   └── utils
    │           │                       └── ConfigurationUtilsTest.java
    │       └── resources
    │           ├── definitions
    │               ├── pipeline-definition-full-with-repsym.yaml
    │               ├── pipeline-definition-full.yaml
    │               ├── pipeline-definition-minimized.yaml
    │               ├── pipeline-definition-with-optional.yaml
    │               └── pipeline-definition-with-udf.yaml
    │           ├── flink-home
    │               └── conf
    │               │   ├── config.yaml
    │               │   └── flink-conf.yaml
    │           ├── global-config
    │               └── global-config.yaml
    │           └── log4j2-test.properties
├── flink-cdc-common
    ├── pom.xml
    └── src
    │   ├── main
    │       └── java
    │       │   └── org
    │       │       └── apache
    │       │           └── flink
    │       │               └── cdc
    │       │                   └── common
    │       │                       ├── annotation
    │       │                           ├── Experimental.java
    │       │                           ├── Internal.java
    │       │                           ├── Public.java
    │       │                           ├── PublicEvolving.java
    │       │                           └── VisibleForTesting.java
    │       │                       ├── configuration
    │       │                           ├── ConfigOption.java
    │       │                           ├── ConfigOptions.java
    │       │                           ├── Configuration.java
    │       │                           ├── ConfigurationUtils.java
    │       │                           ├── FallbackKey.java
    │       │                           ├── StructuredOptionsSplitter.java
    │       │                           └── description
    │       │                           │   ├── BlockElement.java
    │       │                           │   ├── Description.java
    │       │                           │   ├── DescriptionElement.java
    │       │                           │   ├── Formatter.java
    │       │                           │   ├── HtmlFormatter.java
    │       │                           │   ├── InlineElement.java
    │       │                           │   ├── LineBreakElement.java
    │       │                           │   ├── LinkElement.java
    │       │                           │   ├── ListElement.java
    │       │                           │   └── TextElement.java
    │       │                       ├── data
    │       │                           ├── ArrayData.java
    │       │                           ├── DecimalData.java
    │       │                           ├── GenericArrayData.java
    │       │                           ├── GenericMapData.java
    │       │                           ├── LocalZonedTimestampData.java
    │       │                           ├── MapData.java
    │       │                           ├── RecordData.java
    │       │                           ├── StringData.java
    │       │                           ├── TimestampData.java
    │       │                           ├── ZonedTimestampData.java
    │       │                           └── binary
    │       │                           │   ├── BinaryArrayData.java
    │       │                           │   ├── BinaryFormat.java
    │       │                           │   ├── BinaryMapData.java
    │       │                           │   ├── BinaryRecordData.java
    │       │                           │   ├── BinarySection.java
    │       │                           │   ├── BinarySegmentUtils.java
    │       │                           │   ├── BinaryStringData.java
    │       │                           │   ├── LazyBinaryFormat.java
    │       │                           │   ├── MurmurHashUtils.java
    │       │                           │   └── NullAwareGetters.java
    │       │                       ├── event
    │       │                           ├── AddColumnEvent.java
    │       │                           ├── AlterColumnTypeEvent.java
    │       │                           ├── ChangeEvent.java
    │       │                           ├── CreateTableEvent.java
    │       │                           ├── DataChangeEvent.java
    │       │                           ├── DropColumnEvent.java
    │       │                           ├── DropTableEvent.java
    │       │                           ├── Event.java
    │       │                           ├── EventDeserializer.java
    │       │                           ├── FlushEvent.java
    │       │                           ├── OperationType.java
    │       │                           ├── RenameColumnEvent.java
    │       │                           ├── SchemaChangeEvent.java
    │       │                           ├── SchemaChangeEventType.java
    │       │                           ├── SchemaChangeEventTypeFamily.java
    │       │                           ├── SchemaChangeEventWithPreSchema.java
    │       │                           ├── TableId.java
    │       │                           ├── TruncateTableEvent.java
    │       │                           └── visitor
    │       │                           │   ├── AddColumnEventVisitor.java
    │       │                           │   ├── AlterColumnTypeEventVisitor.java
    │       │                           │   ├── CreateTableEventVisitor.java
    │       │                           │   ├── DropColumnEventVisitor.java
    │       │                           │   ├── DropTableEventVisitor.java
    │       │                           │   ├── RenameColumnEventVisitor.java
    │       │                           │   ├── SchemaChangeEventVisitor.java
    │       │                           │   └── TruncateTableEventVisitor.java
    │       │                       ├── exceptions
    │       │                           ├── SchemaEvolveException.java
    │       │                           └── UnsupportedSchemaChangeEventException.java
    │       │                       ├── factories
    │       │                           ├── DataSinkFactory.java
    │       │                           ├── DataSourceFactory.java
    │       │                           ├── Factory.java
    │       │                           └── FactoryHelper.java
    │       │                       ├── function
    │       │                           ├── HashFunction.java
    │       │                           └── HashFunctionProvider.java
    │       │                       ├── pipeline
    │       │                           ├── PipelineOptions.java
    │       │                           ├── RuntimeExecutionMode.java
    │       │                           └── SchemaChangeBehavior.java
    │       │                       ├── route
    │       │                           └── RouteRule.java
    │       │                       ├── schema
    │       │                           ├── Column.java
    │       │                           ├── MetadataColumn.java
    │       │                           ├── PhysicalColumn.java
    │       │                           ├── Schema.java
    │       │                           ├── Selectors.java
    │       │                           └── TableFilter.java
    │       │                       ├── sink
    │       │                           ├── DataSink.java
    │       │                           ├── DefaultDataChangeEventHashFunctionProvider.java
    │       │                           ├── EventSinkProvider.java
    │       │                           ├── FlinkSinkFunctionProvider.java
    │       │                           ├── FlinkSinkProvider.java
    │       │                           └── MetadataApplier.java
    │       │                       ├── source
    │       │                           ├── DataSource.java
    │       │                           ├── EventSourceProvider.java
    │       │                           ├── FlinkSourceFunctionProvider.java
    │       │                           ├── FlinkSourceProvider.java
    │       │                           ├── MetadataAccessor.java
    │       │                           └── SupportedMetadataColumn.java
    │       │                       ├── text
    │       │                           ├── ParsingException.java
    │       │                           ├── Position.java
    │       │                           └── TokenStream.java
    │       │                       ├── types
    │       │                           ├── ArrayType.java
    │       │                           ├── BigIntType.java
    │       │                           ├── BinaryType.java
    │       │                           ├── BooleanType.java
    │       │                           ├── CharType.java
    │       │                           ├── DataField.java
    │       │                           ├── DataType.java
    │       │                           ├── DataTypeChecks.java
    │       │                           ├── DataTypeDefaultVisitor.java
    │       │                           ├── DataTypeFamily.java
    │       │                           ├── DataTypeRoot.java
    │       │                           ├── DataTypeVisitor.java
    │       │                           ├── DataTypes.java
    │       │                           ├── DateType.java
    │       │                           ├── DecimalType.java
    │       │                           ├── DoubleType.java
    │       │                           ├── FloatType.java
    │       │                           ├── IntType.java
    │       │                           ├── LocalZonedTimestampType.java
    │       │                           ├── MapType.java
    │       │                           ├── RowType.java
    │       │                           ├── SmallIntType.java
    │       │                           ├── TimeType.java
    │       │                           ├── TimestampType.java
    │       │                           ├── TinyIntType.java
    │       │                           ├── VarBinaryType.java
    │       │                           ├── VarCharType.java
    │       │                           ├── ZonedTimestampType.java
    │       │                           └── utils
    │       │                           │   ├── DataTypeUtils.java
    │       │                           │   └── runtime
    │       │                           │       ├── DataInputViewStream.java
    │       │                           │       └── DataOutputViewStream.java
    │       │                       ├── udf
    │       │                           ├── UserDefinedFunction.java
    │       │                           └── UserDefinedFunctionContext.java
    │       │                       └── utils
    │       │                           ├── ChangeEventUtils.java
    │       │                           ├── DateTimeUtils.java
    │       │                           ├── EncodingUtils.java
    │       │                           ├── InstantiationUtil.java
    │       │                           ├── Preconditions.java
    │       │                           ├── Predicates.java
    │       │                           ├── SchemaMergingUtils.java
    │       │                           ├── SchemaUtils.java
    │       │                           ├── StringUtf8Utils.java
    │       │                           ├── StringUtils.java
    │       │                           ├── TestCaseUtils.java
    │       │                           ├── ThreadLocalCache.java
    │       │                           ├── TimeUtils.java
    │       │                           └── TypeCheckUtils.java
    │   └── test
    │       ├── java
    │           └── org
    │           │   └── apache
    │           │       └── flink
    │           │           └── cdc
    │           │               └── common
    │           │                   ├── factories
    │           │                       └── FactoryHelperTests.java
    │           │                   ├── schema
    │           │                       └── SelectorsTest.java
    │           │                   ├── testutils
    │           │                       └── assertions
    │           │                       │   ├── AddColumnEventAssert.java
    │           │                       │   ├── AlterColumnTypeEventAssert.java
    │           │                       │   ├── ChangeEventAssert.java
    │           │                       │   ├── CreateTableEventAssert.java
    │           │                       │   ├── DataChangeEventAssert.java
    │           │                       │   ├── DropColumnEventAssert.java
    │           │                       │   ├── EventAssert.java
    │           │                       │   ├── EventAssertions.java
    │           │                       │   ├── RecordDataAssert.java
    │           │                       │   ├── RecordDataWithSchemaAssert.java
    │           │                       │   ├── RenameColumnEventAssert.java
    │           │                       │   └── SchemaChangeEventAssert.java
    │           │                   ├── types
    │           │                       └── utils
    │           │                       │   └── DataTypeUtilsTest.java
    │           │                   └── utils
    │           │                       ├── ChangeEventUtilsTest.java
    │           │                       ├── SchemaMergingUtilsTest.java
    │           │                       ├── SchemaUtilsTest.java
    │           │                       └── StringUtilsTest.java
    │       └── resources
    │           └── log4j2-test.properties
├── flink-cdc-composer
    ├── pom.xml
    └── src
    │   ├── main
    │       └── java
    │       │   └── org
    │       │       └── apache
    │       │           └── flink
    │       │               └── cdc
    │       │                   └── composer
    │       │                       ├── PipelineComposer.java
    │       │                       ├── PipelineDeploymentExecutor.java
    │       │                       ├── PipelineExecution.java
    │       │                       ├── definition
    │       │                           ├── ModelDef.java
    │       │                           ├── PipelineDef.java
    │       │                           ├── RouteDef.java
    │       │                           ├── SinkDef.java
    │       │                           ├── SourceDef.java
    │       │                           ├── TransformDef.java
    │       │                           └── UdfDef.java
    │       │                       ├── flink
    │       │                           ├── FlinkEnvironmentUtils.java
    │       │                           ├── FlinkPipelineComposer.java
    │       │                           ├── FlinkPipelineExecution.java
    │       │                           ├── coordination
    │       │                           │   └── OperatorIDGenerator.java
    │       │                           ├── deployment
    │       │                           │   ├── ComposeDeployment.java
    │       │                           │   ├── K8SApplicationDeploymentExecutor.java
    │       │                           │   └── YarnApplicationDeploymentExecutor.java
    │       │                           └── translator
    │       │                           │   ├── DataSinkTranslator.java
    │       │                           │   ├── DataSourceTranslator.java
    │       │                           │   ├── OperatorUidGenerator.java
    │       │                           │   ├── PartitioningTranslator.java
    │       │                           │   ├── SchemaOperatorTranslator.java
    │       │                           │   └── TransformTranslator.java
    │       │                       └── utils
    │       │                           └── FactoryDiscoveryUtils.java
    │   └── test
    │       ├── java
    │           └── org
    │           │   └── apache
    │           │       └── flink
    │           │           └── cdc
    │           │               └── composer
    │           │                   ├── flink
    │           │                       ├── FlinkEnvironmentUtilsTest.java
    │           │                       ├── FlinkParallelizedPipelineITCase.java
    │           │                       ├── FlinkPipelineBatchComposerITCase.java
    │           │                       ├── FlinkPipelineComposerITCase.java
    │           │                       ├── FlinkPipelineComposerLenientITCase.java
    │           │                       ├── FlinkPipelineComposerTest.java
    │           │                       ├── FlinkPipelineTransformITCase.java
    │           │                       ├── FlinkPipelineUdfITCase.java
    │           │                       ├── deployment
    │           │                       │   └── ComposeDeploymentTest.java
    │           │                       └── translator
    │           │                       │   ├── DataSinkTranslatorTest.java
    │           │                       │   ├── DataSourceTranslatorTest.java
    │           │                       │   └── OperatorUidGeneratorTest.java
    │           │                   ├── testsource
    │           │                       ├── factory
    │           │                       │   └── DistributedDataSourceFactory.java
    │           │                       └── source
    │           │                       │   ├── DistributedDataSource.java
    │           │                       │   ├── DistributedSourceFunction.java
    │           │                       │   └── DistributedSourceOptions.java
    │           │                   └── utils
    │           │                       ├── FactoryDiscoveryUtilsTest.java
    │           │                       └── factory
    │           │                           ├── DataSinkFactory1.java
    │           │                           ├── DataSinkFactory2.java
    │           │                           ├── DataSourceFactory1.java
    │           │                           ├── DataSourceFactory2.java
    │           │                           └── TestOptions.java
    │       └── resources
    │           ├── META-INF
    │               └── services
    │               │   └── org.apache.flink.cdc.common.factories.Factory
    │           ├── log4j2-test.properties
    │           └── ref-output
    │               ├── distributed-ignore.txt
    │               ├── distributed.txt
    │               └── regular.txt
├── flink-cdc-connect
    ├── flink-cdc-pipeline-connectors
    │   ├── flink-cdc-pipeline-connector-doris
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── doris
    │   │   │       │   │                       ├── factory
    │   │   │       │   │                           └── DorisDataSinkFactory.java
    │   │   │       │   │                       ├── sink
    │   │   │       │   │                           ├── DorisDataSink.java
    │   │   │       │   │                           ├── DorisDataSinkOptions.java
    │   │   │       │   │                           ├── DorisEventSerializer.java
    │   │   │       │   │                           ├── DorisMetadataApplier.java
    │   │   │       │   │                           ├── DorisRowConverter.java
    │   │   │       │   │                           └── DorisSchemaChangeManager.java
    │   │   │       │   │                       └── utils
    │   │   │       │   │                           └── DorisSchemaUtils.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.cdc.common.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── doris
    │   │   │           │                       └── sink
    │   │   │           │                           ├── DorisEventSerializerTest.java
    │   │   │           │                           ├── DorisMetadataApplierITCase.java
    │   │   │           │                           ├── DorisPipelineITCase.java
    │   │   │           │                           ├── DorisRowConverterTest.java
    │   │   │           │                           ├── DorisSchemaUtilsTest.java
    │   │   │           │                           └── utils
    │   │   │           │                               ├── DorisContainer.java
    │   │   │           │                               └── DorisSinkTestBase.java
    │   │   │       └── resources
    │   │   │           └── log4j2-test.properties
    │   ├── flink-cdc-pipeline-connector-elasticsearch
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── elasticsearch
    │   │   │       │   │                       ├── config
    │   │   │       │   │                           └── ElasticsearchSinkOptions.java
    │   │   │       │   │                       ├── serializer
    │   │   │       │   │                           ├── Elasticsearch6RequestCreator.java
    │   │   │       │   │                           ├── ElasticsearchEventSerializer.java
    │   │   │       │   │                           └── ElasticsearchRowConverter.java
    │   │   │       │   │                       ├── sink
    │   │   │       │   │                           ├── ElasticsearchDataSink.java
    │   │   │       │   │                           ├── ElasticsearchDataSinkFactory.java
    │   │   │       │   │                           └── ElasticsearchDataSinkOptions.java
    │   │   │       │   │                       └── v2
    │   │   │       │   │                           ├── Elasticsearch8AsyncSink.java
    │   │   │       │   │                           ├── Elasticsearch8AsyncSinkBuilder.java
    │   │   │       │   │                           ├── Elasticsearch8AsyncSinkSerializer.java
    │   │   │       │   │                           ├── Elasticsearch8AsyncWriter.java
    │   │   │       │   │                           ├── NetworkConfig.java
    │   │   │       │   │                           ├── Operation.java
    │   │   │       │   │                           └── OperationSerializer.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.cdc.common.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── elasticsearch
    │   │   │           │                       └── sink
    │   │   │           │                           ├── Elasticsearch6DataSinkITCaseTest.java
    │   │   │           │                           ├── Elasticsearch7DataSinkITCaseTest.java
    │   │   │           │                           ├── ElasticsearchDataSinkFactoryTest.java
    │   │   │           │                           ├── ElasticsearchDataSinkITCaseTest.java
    │   │   │           │                           ├── ElasticsearchEventSerializerTest.java
    │   │   │           │                           └── utils
    │   │   │           │                               ├── ElasticsearchContainer.java
    │   │   │           │                               └── ElasticsearchTestUtils.java
    │   │   │       └── resources
    │   │   │           └── log4j2-test.properties
    │   ├── flink-cdc-pipeline-connector-fluss
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── fluss
    │   │   │       │   │                       ├── factory
    │   │   │       │   │                           └── FlussDataSinkFactory.java
    │   │   │       │   │                       ├── sink
    │   │   │       │   │                           ├── CdcAsFlussRow.java
    │   │   │       │   │                           ├── FlussConfigUtils.java
    │   │   │       │   │                           ├── FlussDataSink.java
    │   │   │       │   │                           ├── FlussDataSinkOptions.java
    │   │   │       │   │                           ├── FlussEventSerializationSchema.java
    │   │   │       │   │                           ├── FlussHashFunctionProvider.java
    │   │   │       │   │                           ├── FlussMetaDataApplier.java
    │   │   │       │   │                           └── v2
    │   │   │       │   │                           │   ├── FlussEvent.java
    │   │   │       │   │                           │   ├── FlussEventSerializer.java
    │   │   │       │   │                           │   ├── FlussOperationType.java
    │   │   │       │   │                           │   ├── FlussRowWithOp.java
    │   │   │       │   │                           │   ├── FlussSink.java
    │   │   │       │   │                           │   ├── FlussSinkWriter.java
    │   │   │       │   │                           │   └── metrics
    │   │   │       │   │                           │       ├── WarppedFlussCounter.java
    │   │   │       │   │                           │       ├── WrappedFlussGauge.java
    │   │   │       │   │                           │       ├── WrapperFlussHistogram.java
    │   │   │       │   │                           │       ├── WrapperFlussMeter.java
    │   │   │       │   │                           │       └── WrapperFlussMetricRegistry.java
    │   │   │       │   │                       └── utils
    │   │   │       │   │                           └── FlussConversions.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.cdc.common.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── fluss
    │   │   │           │                       ├── FlussPipelineITCase.java
    │   │   │           │                       ├── factory
    │   │   │           │                           └── FlussDataSinkFactoryTest.java
    │   │   │           │                       └── sink
    │   │   │           │                           ├── FlussEventSerializationSchemaTest.java
    │   │   │           │                           ├── FlussMetadataApplierTest.java
    │   │   │           │                           └── v2
    │   │   │           │                               └── FlussSinkITCase.java
    │   │   │       └── resources
    │   │   │           └── log4j2-test.properties
    │   ├── flink-cdc-pipeline-connector-iceberg
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── iceberg
    │   │   │       │   │                       └── sink
    │   │   │       │   │                           ├── IcebergDataSink.java
    │   │   │       │   │                           ├── IcebergDataSinkFactory.java
    │   │   │       │   │                           ├── IcebergDataSinkOptions.java
    │   │   │       │   │                           ├── IcebergMetadataApplier.java
    │   │   │       │   │                           ├── utils
    │   │   │       │   │                               ├── IcebergTypeUtils.java
    │   │   │       │   │                               ├── OptionUtils.java
    │   │   │       │   │                               └── RowDataUtils.java
    │   │   │       │   │                           └── v2
    │   │   │       │   │                               ├── IcebergCommitter.java
    │   │   │       │   │                               ├── IcebergSink.java
    │   │   │       │   │                               ├── IcebergWriter.java
    │   │   │       │   │                               ├── TableMetric.java
    │   │   │       │   │                               ├── TableSchemaWrapper.java
    │   │   │       │   │                               ├── WriteResultWrapper.java
    │   │   │       │   │                               ├── WriteResultWrapperSerializer.java
    │   │   │       │   │                               └── compaction
    │   │   │       │   │                                   ├── CompactionOperator.java
    │   │   │       │   │                                   └── CompactionOptions.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.cdc.common.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── iceberg
    │   │   │           │                       └── sink
    │   │   │           │                           ├── IcebergDataSinkFactoryTest.java
    │   │   │           │                           ├── IcebergMetadataApplierTest.java
    │   │   │           │                           └── v2
    │   │   │           │                               ├── CompactionOperatorTest.java
    │   │   │           │                               ├── IcebergSinkITCase.java
    │   │   │           │                               └── IcebergWriterTest.java
    │   │   │       └── resources
    │   │   │           └── log4j2-test.properties
    │   ├── flink-cdc-pipeline-connector-kafka
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── kafka
    │   │   │       │   │                       ├── json
    │   │   │       │   │                           ├── ChangeLogJsonFormatFactory.java
    │   │   │       │   │                           ├── JsonSerializationType.java
    │   │   │       │   │                           ├── TableSchemaInfo.java
    │   │   │       │   │                           ├── canal
    │   │   │       │   │                           │   └── CanalJsonSerializationSchema.java
    │   │   │       │   │                           └── debezium
    │   │   │       │   │                           │   ├── DebeziumJsonRowDataSerializationSchema.java
    │   │   │       │   │                           │   ├── DebeziumJsonSerializationSchema.java
    │   │   │       │   │                           │   └── DebeziumJsonStruct.java
    │   │   │       │   │                       ├── serialization
    │   │   │       │   │                           ├── CsvSerializationSchema.java
    │   │   │       │   │                           └── JsonSerializationSchema.java
    │   │   │       │   │                       ├── sink
    │   │   │       │   │                           ├── KafkaDataSink.java
    │   │   │       │   │                           ├── KafkaDataSinkFactory.java
    │   │   │       │   │                           ├── KafkaDataSinkOptions.java
    │   │   │       │   │                           ├── KafkaMetaDataApplier.java
    │   │   │       │   │                           ├── KeyFormat.java
    │   │   │       │   │                           ├── KeySerializationFactory.java
    │   │   │       │   │                           ├── PartitionStrategy.java
    │   │   │       │   │                           └── PipelineKafkaRecordSerializationSchema.java
    │   │   │       │   │                       └── utils
    │   │   │       │   │                           ├── JsonRowDataSerializationSchemaUtils.java
    │   │   │       │   │                           └── KafkaSinkUtils.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.cdc.common.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── kafka
    │   │   │           │                       ├── json
    │   │   │           │                           ├── MockInitializationContext.java
    │   │   │           │                           ├── TableSchemaInfoTest.java
    │   │   │           │                           ├── canal
    │   │   │           │                           │   └── CanalJsonSerializationSchemaTest.java
    │   │   │           │                           └── debezium
    │   │   │           │                           │   └── DebeziumJsonSerializationSchemaTest.java
    │   │   │           │                       ├── serialization
    │   │   │           │                           ├── CsvSerializationSchemaTest.java
    │   │   │           │                           └── JsonSerializationSchemaTest.java
    │   │   │           │                       └── sink
    │   │   │           │                           ├── KafkaDataSinkFactoryTest.java
    │   │   │           │                           ├── KafkaDataSinkITCase.java
    │   │   │           │                           └── KafkaUtil.java
    │   │   │       └── resources
    │   │   │           └── log4j2-test.properties
    │   ├── flink-cdc-pipeline-connector-maxcompute
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── maxcompute
    │   │   │       │   │                       ├── MaxComputeDataSink.java
    │   │   │       │   │                       ├── MaxComputeDataSinkFactory.java
    │   │   │       │   │                       ├── MaxComputeDataSinkOptions.java
    │   │   │       │   │                       ├── MaxComputeMetadataApplier.java
    │   │   │       │   │                       ├── common
    │   │   │       │   │                           ├── Constant.java
    │   │   │       │   │                           ├── FlinkOdpsException.java
    │   │   │       │   │                           ├── SessionIdentifier.java
    │   │   │       │   │                           └── UncheckedOdpsException.java
    │   │   │       │   │                       ├── coordinator
    │   │   │       │   │                           ├── SessionManageCoordinatedOperatorFactory.java
    │   │   │       │   │                           ├── SessionManageCoordinator.java
    │   │   │       │   │                           ├── SessionManageOperator.java
    │   │   │       │   │                           └── message
    │   │   │       │   │                           │   ├── CommitSessionRequest.java
    │   │   │       │   │                           │   ├── CommitSessionResponse.java
    │   │   │       │   │                           │   ├── CreateSessionRequest.java
    │   │   │       │   │                           │   ├── CreateSessionResponse.java
    │   │   │       │   │                           │   ├── SyncRequest.java
    │   │   │       │   │                           │   └── WaitForFlushSuccessRequest.java
    │   │   │       │   │                       ├── options
    │   │   │       │   │                           ├── CompressAlgorithm.java
    │   │   │       │   │                           ├── MaxComputeOptions.java
    │   │   │       │   │                           └── MaxComputeWriteOptions.java
    │   │   │       │   │                       ├── sink
    │   │   │       │   │                           ├── MaxComputeEventSink.java
    │   │   │       │   │                           ├── MaxComputeEventWriter.java
    │   │   │       │   │                           └── MaxComputeHashFunctionProvider.java
    │   │   │       │   │                       ├── utils
    │   │   │       │   │                           ├── MaxComputeUtils.java
    │   │   │       │   │                           ├── RetryUtils.java
    │   │   │       │   │                           ├── SchemaEvolutionUtils.java
    │   │   │       │   │                           ├── SessionCommitCoordinateHelper.java
    │   │   │       │   │                           └── TypeConvertUtils.java
    │   │   │       │   │                       └── writer
    │   │   │       │   │                           ├── BatchAppendWriter.java
    │   │   │       │   │                           ├── BatchUpsertWriter.java
    │   │   │       │   │                           └── MaxComputeWriter.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.cdc.common.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── maxcompute
    │   │   │           │                       ├── EmulatorTestBase.java
    │   │   │           │                       └── utils
    │   │   │           │                           ├── SchemaEvolutionUtilsTest.java
    │   │   │           │                           ├── SessionCommitCoordinateHelperTest.java
    │   │   │           │                           └── TypeConvertUtilsTest.java
    │   │   │       └── resources
    │   │   │           └── log4j2-test.properties
    │   ├── flink-cdc-pipeline-connector-mysql
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── mysql
    │   │   │       │   │                       ├── factory
    │   │   │       │   │                           └── MySqlDataSourceFactory.java
    │   │   │       │   │                       ├── source
    │   │   │       │   │                           ├── MySqlDataSource.java
    │   │   │       │   │                           ├── MySqlDataSourceOptions.java
    │   │   │       │   │                           ├── MySqlEventDeserializer.java
    │   │   │       │   │                           ├── MySqlMetadataAccessor.java
    │   │   │       │   │                           ├── MySqlSchemaDataTypeInference.java
    │   │   │       │   │                           ├── OpTsMetadataColumn.java
    │   │   │       │   │                           ├── parser
    │   │   │       │   │                           │   ├── CustomAlterTableParserListener.java
    │   │   │       │   │                           │   ├── CustomColumnDefinitionParserListener.java
    │   │   │       │   │                           │   ├── CustomMySqlAntlrDdlParser.java
    │   │   │       │   │                           │   └── CustomMySqlAntlrDdlParserListener.java
    │   │   │       │   │                           └── reader
    │   │   │       │   │                           │   └── MySqlPipelineRecordEmitter.java
    │   │   │       │   │                       └── utils
    │   │   │       │   │                           ├── MySqlSchemaUtils.java
    │   │   │       │   │                           └── MySqlTypeUtils.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.cdc.common.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── mysql
    │   │   │           │                       ├── source
    │   │   │           │                           ├── MySqlAncientDateAndTimeITCase.java
    │   │   │           │                           ├── MySqlDataSourceFactoryTest.java
    │   │   │           │                           ├── MySqlFullTypesITCase.java
    │   │   │           │                           ├── MySqlMetadataAccessorITCase.java
    │   │   │           │                           ├── MySqlOnLineSchemaMigrationITCase.java
    │   │   │           │                           ├── MySqlParallelizedPipelineITCase.java
    │   │   │           │                           ├── MySqlPipelineITCase.java
    │   │   │           │                           ├── MySqlTableIdCaseInsensitveITCase.java
    │   │   │           │                           ├── MySqlTablePatternMatchingTest.java
    │   │   │           │                           └── MysqlPipelineNewlyAddedTableITCase.java
    │   │   │           │                       └── testutils
    │   │   │           │                           ├── MySqSourceTestUtils.java
    │   │   │           │                           └── RecordDataTestUtils.java
    │   │   │       └── resources
    │   │   │           ├── ddl
    │   │   │               ├── ancient_date_and_time.sql
    │   │   │               ├── column_type_test.sql
    │   │   │               ├── column_type_test_mysql8.sql
    │   │   │               ├── customer.sql
    │   │   │               └── inventory.sql
    │   │   │           ├── docker
    │   │   │               ├── server-allow-ancient-date-time
    │   │   │               │   └── my.cnf
    │   │   │               ├── server-gtids
    │   │   │               │   ├── expire-seconds
    │   │   │               │   │   └── my.cnf
    │   │   │               │   └── my.cnf
    │   │   │               ├── server
    │   │   │               │   └── my.cnf
    │   │   │               ├── setup.sql
    │   │   │               └── tablename-sensitive
    │   │   │               │   └── my.cnf
    │   │   │           ├── log4j2-test.properties
    │   │   │           └── pipeline-test.yaml
    │   ├── flink-cdc-pipeline-connector-oceanbase
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── oceanbase
    │   │   │       │   │                       ├── catalog
    │   │   │       │   │                           ├── OceanBaseCatalog.java
    │   │   │       │   │                           ├── OceanBaseCatalogException.java
    │   │   │       │   │                           ├── OceanBaseCatalogFactory.java
    │   │   │       │   │                           ├── OceanBaseColumn.java
    │   │   │       │   │                           ├── OceanBaseMySQLCatalog.java
    │   │   │       │   │                           ├── OceanBaseOracleCatalog.java
    │   │   │       │   │                           └── OceanBaseTable.java
    │   │   │       │   │                       ├── factory
    │   │   │       │   │                           └── OceanBaseDataSinkFactory.java
    │   │   │       │   │                       ├── sink
    │   │   │       │   │                           ├── OceanBaseDataSink.java
    │   │   │       │   │                           ├── OceanBaseDataSinkOptions.java
    │   │   │       │   │                           ├── OceanBaseEventSerializationSchema.java
    │   │   │       │   │                           ├── OceanBaseMetadataApplier.java
    │   │   │       │   │                           ├── OceanBaseRowConvert.java
    │   │   │       │   │                           └── OceanBaseUtils.java
    │   │   │       │   │                       └── utils
    │   │   │       │   │                           ├── ListUtils.java
    │   │   │       │   │                           └── OptionUtils.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.cdc.common.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── oceanbase
    │   │   │           │                       ├── catalog
    │   │   │           │                           └── OceanBaseMySQLCatalogTest.java
    │   │   │           │                       ├── sink
    │   │   │           │                           ├── OceanBaseDataSinkFactoryTest.java
    │   │   │           │                           ├── OceanBaseEventSerializationSchemaTest.java
    │   │   │           │                           └── OceanBaseMetadataApplierTest.java
    │   │   │           │                       └── utils
    │   │   │           │                           └── OceanBaseTestMySQLCatalog.java
    │   │   │       └── resources
    │   │   │           └── sql
    │   │   │               └── init.sql
    │   ├── flink-cdc-pipeline-connector-paimon
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── paimon
    │   │   │       │   │                       └── sink
    │   │   │       │   │                           ├── PaimonDataSink.java
    │   │   │       │   │                           ├── PaimonDataSinkFactory.java
    │   │   │       │   │                           ├── PaimonDataSinkOptions.java
    │   │   │       │   │                           ├── PaimonHashFunction.java
    │   │   │       │   │                           ├── PaimonHashFunctionProvider.java
    │   │   │       │   │                           ├── PaimonMetadataApplier.java
    │   │   │       │   │                           ├── SchemaChangeProvider.java
    │   │   │       │   │                           └── v2
    │   │   │       │   │                               ├── MultiTableCommittableChannelComputer.java
    │   │   │       │   │                               ├── OperatorIDGenerator.java
    │   │   │       │   │                               ├── PaimonCommitter.java
    │   │   │       │   │                               ├── PaimonEvent.java
    │   │   │       │   │                               ├── PaimonEventSink.java
    │   │   │       │   │                               ├── PaimonRecordEventSerializer.java
    │   │   │       │   │                               ├── PaimonRecordSerializer.java
    │   │   │       │   │                               ├── PaimonSink.java
    │   │   │       │   │                               ├── PaimonWriter.java
    │   │   │       │   │                               ├── PaimonWriterHelper.java
    │   │   │       │   │                               ├── PreCommitOperator.java
    │   │   │       │   │                               ├── StoreSinkWriteImpl.java
    │   │   │       │   │                               ├── TableSchemaInfo.java
    │   │   │       │   │                               └── bucket
    │   │   │       │   │                                   ├── BucketAssignOperator.java
    │   │   │       │   │                                   ├── BucketWrapper.java
    │   │   │       │   │                                   ├── BucketWrapperChangeEvent.java
    │   │   │       │   │                                   ├── BucketWrapperEventSerializer.java
    │   │   │       │   │                                   ├── BucketWrapperEventTypeInfo.java
    │   │   │       │   │                                   ├── BucketWrapperFlushEvent.java
    │   │   │       │   │                                   └── FlushEventAlignmentOperator.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.cdc.common.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── paimon
    │   │   │           │                       └── sink
    │   │   │           │                           ├── PaimonDataSinkFactoryTest.java
    │   │   │           │                           ├── PaimonHashFunctionTest.java
    │   │   │           │                           ├── PaimonMetadataApplierTest.java
    │   │   │           │                           └── v2
    │   │   │           │                               ├── PaimonSinkITCase.java
    │   │   │           │                               ├── PaimonWriterHelperTest.java
    │   │   │           │                               └── TestMultiTableCommittableChannelComputer.java
    │   │   │       └── resources
    │   │   │           ├── hadoop-conf-dir
    │   │   │               └── core-site.xml
    │   │   │           ├── hive-conf-dir
    │   │   │               └── hive-site.xml
    │   │   │           └── log4j2-test.properties
    │   ├── flink-cdc-pipeline-connector-starrocks
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── starrocks
    │   │   │       │   │                       └── sink
    │   │   │       │   │                           ├── EventRecordSerializationSchema.java
    │   │   │       │   │                           ├── SchemaChangeConfig.java
    │   │   │       │   │                           ├── StarRocksDataSink.java
    │   │   │       │   │                           ├── StarRocksDataSinkFactory.java
    │   │   │       │   │                           ├── StarRocksDataSinkOptions.java
    │   │   │       │   │                           ├── StarRocksEnrichedCatalog.java
    │   │   │       │   │                           ├── StarRocksMetadataApplier.java
    │   │   │       │   │                           ├── StarRocksUtils.java
    │   │   │       │   │                           └── TableCreateConfig.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.cdc.common.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── starrocks
    │   │   │           │                       └── sink
    │   │   │           │                           ├── CdcDataTypeTransformerTest.java
    │   │   │           │                           ├── EventRecordSerializationSchemaTest.java
    │   │   │           │                           ├── MockStarRocksCatalog.java
    │   │   │           │                           ├── StarRocksDataSinkFactoryTest.java
    │   │   │           │                           ├── StarRocksMetadataApplierITCase.java
    │   │   │           │                           ├── StarRocksMetadataApplierTest.java
    │   │   │           │                           ├── StarRocksPipelineITCase.java
    │   │   │           │                           └── utils
    │   │   │           │                               ├── StarRocksContainer.java
    │   │   │           │                               └── StarRocksSinkTestBase.java
    │   │   │       └── resources
    │   │   │           └── log4j2-test.properties
    │   ├── flink-cdc-pipeline-connector-values
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── values
    │   │   │       │   │                       ├── ValuesDatabase.java
    │   │   │       │   │                       ├── factory
    │   │   │       │   │                           └── ValuesDataFactory.java
    │   │   │       │   │                       ├── sink
    │   │   │       │   │                           ├── ValuesDataSink.java
    │   │   │       │   │                           ├── ValuesDataSinkFunction.java
    │   │   │       │   │                           ├── ValuesDataSinkHelper.java
    │   │   │       │   │                           └── ValuesDataSinkOptions.java
    │   │   │       │   │                       └── source
    │   │   │       │   │                           ├── OpTsMetadataColumn.java
    │   │   │       │   │                           ├── TimestampTypeMetadataColumn.java
    │   │   │       │   │                           ├── ValuesDataSource.java
    │   │   │       │   │                           ├── ValuesDataSourceHelper.java
    │   │   │       │   │                           └── ValuesDataSourceOptions.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.cdc.common.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── values
    │   │   │           │                       ├── ValuesDatabaseTest.java
    │   │   │           │                       ├── sink
    │   │   │           │                           └── ValuesDataSinkHelperTest.java
    │   │   │           │                       └── source
    │   │   │           │                           └── ValuesDataSourceITCase.java
    │   │   │       └── resources
    │   │   │           └── log4j2-test.properties
    │   └── pom.xml
    ├── flink-cdc-source-connectors
    │   ├── flink-cdc-base
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       └── java
    │   │   │       │   └── org
    │   │   │       │       └── apache
    │   │   │       │           └── flink
    │   │   │       │               └── cdc
    │   │   │       │                   └── connectors
    │   │   │       │                       └── base
    │   │   │       │                           ├── WatermarkDispatcher.java
    │   │   │       │                           ├── config
    │   │   │       │                               ├── BaseSourceConfig.java
    │   │   │       │                               ├── JdbcSourceConfig.java
    │   │   │       │                               ├── JdbcSourceConfigFactory.java
    │   │   │       │                               └── SourceConfig.java
    │   │   │       │                           ├── dialect
    │   │   │       │                               ├── DataSourceDialect.java
    │   │   │       │                               └── JdbcDataSourceDialect.java
    │   │   │       │                           ├── options
    │   │   │       │                               ├── JdbcSourceOptions.java
    │   │   │       │                               ├── SourceOptions.java
    │   │   │       │                               ├── StartupMode.java
    │   │   │       │                               └── StartupOptions.java
    │   │   │       │                           ├── relational
    │   │   │       │                               ├── JdbcSourceEventDispatcher.java
    │   │   │       │                               ├── connection
    │   │   │       │                               │   ├── ConnectionPoolId.java
    │   │   │       │                               │   ├── ConnectionPools.java
    │   │   │       │                               │   ├── JdbcConnectionFactory.java
    │   │   │       │                               │   ├── JdbcConnectionPoolFactory.java
    │   │   │       │                               │   └── JdbcConnectionPools.java
    │   │   │       │                               └── handler
    │   │   │       │                               │   └── SchemaChangeEventHandler.java
    │   │   │       │                           ├── source
    │   │   │       │                               ├── EmbeddedFlinkDatabaseHistory.java
    │   │   │       │                               ├── IncrementalSource.java
    │   │   │       │                               ├── assigner
    │   │   │       │                               │   ├── AssignerStatus.java
    │   │   │       │                               │   ├── HybridSplitAssigner.java
    │   │   │       │                               │   ├── SnapshotSplitAssigner.java
    │   │   │       │                               │   ├── SplitAssigner.java
    │   │   │       │                               │   ├── StreamSplitAssigner.java
    │   │   │       │                               │   ├── splitter
    │   │   │       │                               │   │   ├── ChunkRange.java
    │   │   │       │                               │   │   ├── ChunkSplitter.java
    │   │   │       │                               │   │   └── JdbcSourceChunkSplitter.java
    │   │   │       │                               │   └── state
    │   │   │       │                               │   │   ├── ChunkSplitterState.java
    │   │   │       │                               │   │   ├── HybridPendingSplitsState.java
    │   │   │       │                               │   │   ├── PendingSplitsState.java
    │   │   │       │                               │   │   ├── PendingSplitsStateSerializer.java
    │   │   │       │                               │   │   ├── SnapshotPendingSplitsState.java
    │   │   │       │                               │   │   └── StreamPendingSplitsState.java
    │   │   │       │                               ├── enumerator
    │   │   │       │                               │   └── IncrementalSourceEnumerator.java
    │   │   │       │                               ├── jdbc
    │   │   │       │                               │   └── JdbcIncrementalSource.java
    │   │   │       │                               ├── meta
    │   │   │       │                               │   ├── events
    │   │   │       │                               │   │   ├── FinishedSnapshotSplitsAckEvent.java
    │   │   │       │                               │   │   ├── FinishedSnapshotSplitsReportEvent.java
    │   │   │       │                               │   │   ├── FinishedSnapshotSplitsRequestEvent.java
    │   │   │       │                               │   │   ├── LatestFinishedSplitsNumberEvent.java
    │   │   │       │                               │   │   ├── LatestFinishedSplitsNumberRequestEvent.java
    │   │   │       │                               │   │   ├── StreamSplitAssignedEvent.java
    │   │   │       │                               │   │   ├── StreamSplitMetaEvent.java
    │   │   │       │                               │   │   ├── StreamSplitMetaRequestEvent.java
    │   │   │       │                               │   │   ├── StreamSplitUpdateAckEvent.java
    │   │   │       │                               │   │   └── StreamSplitUpdateRequestEvent.java
    │   │   │       │                               │   ├── offset
    │   │   │       │                               │   │   ├── Offset.java
    │   │   │       │                               │   │   ├── OffsetDeserializerSerializer.java
    │   │   │       │                               │   │   └── OffsetFactory.java
    │   │   │       │                               │   ├── split
    │   │   │       │                               │   │   ├── ChangeEventRecords.java
    │   │   │       │                               │   │   ├── FinishedSnapshotSplitInfo.java
    │   │   │       │                               │   │   ├── SchemalessSnapshotSplit.java
    │   │   │       │                               │   │   ├── SnapshotSplit.java
    │   │   │       │                               │   │   ├── SnapshotSplitState.java
    │   │   │       │                               │   │   ├── SourceRecords.java
    │   │   │       │                               │   │   ├── SourceSplitBase.java
    │   │   │       │                               │   │   ├── SourceSplitSerializer.java
    │   │   │       │                               │   │   ├── SourceSplitState.java
    │   │   │       │                               │   │   ├── StreamSplit.java
    │   │   │       │                               │   │   └── StreamSplitState.java
    │   │   │       │                               │   └── wartermark
    │   │   │       │                               │   │   ├── WatermarkEvent.java
    │   │   │       │                               │   │   └── WatermarkKind.java
    │   │   │       │                               ├── metrics
    │   │   │       │                               │   ├── SourceEnumeratorMetrics.java
    │   │   │       │                               │   └── SourceReaderMetrics.java
    │   │   │       │                               ├── reader
    │   │   │       │                               │   ├── IncrementalSourceReader.java
    │   │   │       │                               │   ├── IncrementalSourceReaderContext.java
    │   │   │       │                               │   ├── IncrementalSourceReaderWithCommit.java
    │   │   │       │                               │   ├── IncrementalSourceRecordEmitter.java
    │   │   │       │                               │   ├── IncrementalSourceSplitReader.java
    │   │   │       │                               │   └── external
    │   │   │       │                               │   │   ├── AbstractScanFetchTask.java
    │   │   │       │                               │   │   ├── FetchTask.java
    │   │   │       │                               │   │   ├── Fetcher.java
    │   │   │       │                               │   │   ├── IncrementalSourceScanFetcher.java
    │   │   │       │                               │   │   ├── IncrementalSourceStreamFetcher.java
    │   │   │       │                               │   │   └── JdbcSourceFetchTaskContext.java
    │   │   │       │                               └── utils
    │   │   │       │                               │   ├── JdbcChunkUtils.java
    │   │   │       │                               │   └── hooks
    │   │   │       │                               │       ├── SnapshotPhaseHook.java
    │   │   │       │                               │       └── SnapshotPhaseHooks.java
    │   │   │       │                           └── utils
    │   │   │       │                               ├── EnvironmentUtils.java
    │   │   │       │                               ├── ObjectUtils.java
    │   │   │       │                               ├── OptionUtils.java
    │   │   │       │                               ├── SerializerUtils.java
    │   │   │       │                               ├── SourceRecordUtils.java
    │   │   │       │                               └── VersionComparable.java
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── base
    │   │   │           │                       ├── GenericConnectionPoolTest.java
    │   │   │           │                       ├── mocked
    │   │   │           │                           ├── MockedPooledDataSourceFactory.java
    │   │   │           │                           └── MockedSourceConfig.java
    │   │   │           │                       └── source
    │   │   │           │                           └── assigner
    │   │   │           │                               └── state
    │   │   │           │                                   └── PendingSplitsStateSerializerTest.java
    │   │   │       └── resources
    │   │   │           ├── ddl
    │   │   │               ├── inventory.sql
    │   │   │               └── metrics.sql
    │   │   │           ├── docker
    │   │   │               ├── server-gtids
    │   │   │               │   └── my.cnf
    │   │   │               └── setup.sql
    │   │   │           └── log4j2-test.properties
    │   ├── flink-connector-db2-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   ├── io
    │   │   │       │   │   └── debezium
    │   │   │       │   │   │   └── connector
    │   │   │       │   │   │       └── db2
    │   │   │       │   │   │           ├── Db2Connection.java
    │   │   │       │   │   │           └── Db2StreamingChangeEventSource.java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── db2
    │   │   │       │   │                       ├── Db2Source.java
    │   │   │       │   │                       ├── source
    │   │   │       │   │                           ├── Db2SourceBuilder.java
    │   │   │       │   │                           ├── config
    │   │   │       │   │                           │   ├── Db2SourceConfig.java
    │   │   │       │   │                           │   └── Db2SourceConfigFactory.java
    │   │   │       │   │                           ├── dialect
    │   │   │       │   │                           │   ├── Db2ChunkSplitter.java
    │   │   │       │   │                           │   ├── Db2Dialect.java
    │   │   │       │   │                           │   ├── Db2PooledDataSourceFactory.java
    │   │   │       │   │                           │   └── Db2Schema.java
    │   │   │       │   │                           ├── fetch
    │   │   │       │   │                           │   ├── Db2ScanFetchTask.java
    │   │   │       │   │                           │   ├── Db2SourceFetchTaskContext.java
    │   │   │       │   │                           │   └── Db2StreamFetchTask.java
    │   │   │       │   │                           ├── handler
    │   │   │       │   │                           │   └── Db2SchemaChangeEventHandler.java
    │   │   │       │   │                           ├── offset
    │   │   │       │   │                           │   ├── LsnFactory.java
    │   │   │       │   │                           │   └── LsnOffset.java
    │   │   │       │   │                           └── utils
    │   │   │       │   │                           │   ├── Db2ConnectionUtils.java
    │   │   │       │   │                           │   ├── Db2TypeUtils.java
    │   │   │       │   │                           │   └── Db2Utils.java
    │   │   │       │   │                       ├── table
    │   │   │       │   │                           ├── Db2ReadableMetaData.java
    │   │   │       │   │                           ├── Db2TableSource.java
    │   │   │       │   │                           ├── Db2TableSourceFactory.java
    │   │   │       │   │                           └── StartupOptions.java
    │   │   │       │   │                       └── utils
    │   │   │       │   │                           └── OptionUtils.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.table.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── db2
    │   │   │           │                       ├── Db2ParallelSourceExampleTest.java
    │   │   │           │                       ├── Db2SourceTest.java
    │   │   │           │                       ├── Db2TestBase.java
    │   │   │           │                       ├── source
    │   │   │           │                           └── Db2SourceITCase.java
    │   │   │           │                       ├── table
    │   │   │           │                           ├── Db2ConnectorITCase.java
    │   │   │           │                           └── Db2TableSourceFactoryTest.java
    │   │   │           │                       └── testutils
    │   │   │           │                           ├── RecordsFormatter.java
    │   │   │           │                           └── TestTable.java
    │   │   │       └── resources
    │   │   │           ├── db2_server
    │   │   │               ├── Dockerfile
    │   │   │               ├── asncdc.c
    │   │   │               ├── asncdc_UDF.sql
    │   │   │               ├── asncdcaddremove.sql
    │   │   │               ├── asncdctables.sql
    │   │   │               ├── cdcsetup.sh
    │   │   │               ├── column_type_test.sql
    │   │   │               ├── customers.sql
    │   │   │               ├── dbsetup.sh
    │   │   │               ├── inventory.sql
    │   │   │               └── startup-agent.sql
    │   │   │           └── log4j2-test.properties
    │   ├── flink-connector-debezium
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   └── main
    │   │   │       └── java
    │   │   │           ├── io
    │   │   │               └── debezium
    │   │   │               │   ├── embedded
    │   │   │               │       └── EmbeddedEngineChangeEvent.java
    │   │   │               │   └── relational
    │   │   │               │       ├── HistorizedRelationalDatabaseConnectorConfig.java
    │   │   │               │       ├── RelationalChangeRecordEmitter.java
    │   │   │               │       └── RelationalTableFilters.java
    │   │   │           └── org
    │   │   │               └── apache
    │   │   │                   └── flink
    │   │   │                       └── cdc
    │   │   │                           └── debezium
    │   │   │                               ├── DebeziumDeserializationSchema.java
    │   │   │                               ├── DebeziumSourceFunction.java
    │   │   │                               ├── JsonDebeziumDeserializationSchema.java
    │   │   │                               ├── StringDebeziumDeserializationSchema.java
    │   │   │                               ├── Validator.java
    │   │   │                               ├── event
    │   │   │                                   ├── DebeziumEventDeserializationSchema.java
    │   │   │                                   ├── DebeziumSchemaDataTypeInference.java
    │   │   │                                   ├── SchemaDataTypeInference.java
    │   │   │                                   └── SourceRecordEventDeserializer.java
    │   │   │                               ├── history
    │   │   │                                   └── FlinkJsonTableChangeSerializer.java
    │   │   │                               ├── internal
    │   │   │                                   ├── DebeziumChangeConsumer.java
    │   │   │                                   ├── DebeziumChangeFetcher.java
    │   │   │                                   ├── DebeziumOffset.java
    │   │   │                                   ├── DebeziumOffsetSerializer.java
    │   │   │                                   ├── FlinkDatabaseHistory.java
    │   │   │                                   ├── FlinkDatabaseSchemaHistory.java
    │   │   │                                   ├── FlinkOffsetBackingStore.java
    │   │   │                                   ├── Handover.java
    │   │   │                                   └── SchemaRecord.java
    │   │   │                               ├── table
    │   │   │                                   ├── AppendMetadataCollector.java
    │   │   │                                   ├── DebeziumChangelogMode.java
    │   │   │                                   ├── DebeziumOptions.java
    │   │   │                                   ├── DeserializationRuntimeConverter.java
    │   │   │                                   ├── DeserializationRuntimeConverterFactory.java
    │   │   │                                   ├── MetadataConverter.java
    │   │   │                                   ├── RowDataDebeziumDeserializeSchema.java
    │   │   │                                   └── RowDataMetadataConverter.java
    │   │   │                               └── utils
    │   │   │                                   ├── ConvertTimeBceUtil.java
    │   │   │                                   ├── DatabaseHistoryUtil.java
    │   │   │                                   ├── JdbcUrlUtils.java
    │   │   │                                   ├── ResolvedSchemaUtils.java
    │   │   │                                   └── TemporalConversions.java
    │   ├── flink-connector-mongodb-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── mongodb
    │   │   │       │   │                       ├── MongoDBSource.java
    │   │   │       │   │                       ├── internal
    │   │   │       │   │                           ├── MongoDBConnectorSourceConnector.java
    │   │   │       │   │                           ├── MongoDBConnectorSourceTask.java
    │   │   │       │   │                           └── MongoDBEnvelope.java
    │   │   │       │   │                       ├── source
    │   │   │       │   │                           ├── MongoDBSource.java
    │   │   │       │   │                           ├── MongoDBSourceBuilder.java
    │   │   │       │   │                           ├── assigners
    │   │   │       │   │                           │   └── splitters
    │   │   │       │   │                           │   │   ├── MongoDBChunkSplitter.java
    │   │   │       │   │                           │   │   ├── SampleBucketSplitStrategy.java
    │   │   │       │   │                           │   │   ├── ShardedSplitStrategy.java
    │   │   │       │   │                           │   │   ├── SingleSplitStrategy.java
    │   │   │       │   │                           │   │   ├── SplitContext.java
    │   │   │       │   │                           │   │   ├── SplitStrategy.java
    │   │   │       │   │                           │   │   └── SplitVectorSplitStrategy.java
    │   │   │       │   │                           ├── config
    │   │   │       │   │                           │   ├── MongoDBSourceConfig.java
    │   │   │       │   │                           │   ├── MongoDBSourceConfigFactory.java
    │   │   │       │   │                           │   └── MongoDBSourceOptions.java
    │   │   │       │   │                           ├── connection
    │   │   │       │   │                           │   └── MongoClientPool.java
    │   │   │       │   │                           ├── dialect
    │   │   │       │   │                           │   └── MongoDBDialect.java
    │   │   │       │   │                           ├── offset
    │   │   │       │   │                           │   ├── ChangeStreamDescriptor.java
    │   │   │       │   │                           │   ├── ChangeStreamOffset.java
    │   │   │       │   │                           │   └── ChangeStreamOffsetFactory.java
    │   │   │       │   │                           ├── reader
    │   │   │       │   │                           │   ├── MongoDBRecordEmitter.java
    │   │   │       │   │                           │   └── fetch
    │   │   │       │   │                           │   │   ├── MongoDBFetchTaskContext.java
    │   │   │       │   │                           │   │   ├── MongoDBScanFetchTask.java
    │   │   │       │   │                           │   │   └── MongoDBStreamFetchTask.java
    │   │   │       │   │                           └── utils
    │   │   │       │   │                           │   ├── BsonUtils.java
    │   │   │       │   │                           │   ├── ChunkUtils.java
    │   │   │       │   │                           │   ├── CollectionDiscoveryUtils.java
    │   │   │       │   │                           │   ├── MongoRecordUtils.java
    │   │   │       │   │                           │   ├── MongoUtils.java
    │   │   │       │   │                           │   └── ResumeTokenUtils.java
    │   │   │       │   │                       └── table
    │   │   │       │   │                           ├── MongoDBConnectorDeserializationSchema.java
    │   │   │       │   │                           ├── MongoDBConnectorFullChangelogDeserializationSchema.java
    │   │   │       │   │                           ├── MongoDBReadableMetadata.java
    │   │   │       │   │                           ├── MongoDBTableSource.java
    │   │   │       │   │                           └── MongoDBTableSourceFactory.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.table.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── mongodb
    │   │   │           │                       ├── LegacyMongoDBContainer.java
    │   │   │           │                       ├── LegacyMongoDBSourceExampleTest.java
    │   │   │           │                       ├── LegacyMongoDBSourceTest.java
    │   │   │           │                       ├── LegacyMongoDBSourceTestBase.java
    │   │   │           │                       ├── LegacyMongoDBTestBase.java
    │   │   │           │                       ├── source
    │   │   │           │                           ├── MongoDBFullChangelogITCase.java
    │   │   │           │                           ├── MongoDBParallelSourceExampleTest.java
    │   │   │           │                           ├── MongoDBParallelSourceITCase.java
    │   │   │           │                           ├── MongoDBSourceTestBase.java
    │   │   │           │                           ├── NewlyAddedTableITCase.java
    │   │   │           │                           ├── reader
    │   │   │           │                           │   ├── MongoDBSnapshotSplitReaderAssignEndingFirstTest.java
    │   │   │           │                           │   ├── MongoDBSnapshotSplitReaderTest.java
    │   │   │           │                           │   └── MongoDBStreamSplitReaderTest.java
    │   │   │           │                           └── utils
    │   │   │           │                           │   ├── BsonUtilsTest.java
    │   │   │           │                           │   └── ResumeTokenUtilsTest.java
    │   │   │           │                       ├── table
    │   │   │           │                           ├── MongoDBConnectorITCase.java
    │   │   │           │                           ├── MongoDBRegexFilterITCase.java
    │   │   │           │                           ├── MongoDBTableFactoryTest.java
    │   │   │           │                           └── MongoDBTimeZoneITCase.java
    │   │   │           │                       └── utils
    │   │   │           │                           ├── MongoDBAssertUtils.java
    │   │   │           │                           ├── MongoDBContainer.java
    │   │   │           │                           ├── MongoDBTestUtils.java
    │   │   │           │                           ├── RecordsFormatter.java
    │   │   │           │                           └── TestTable.java
    │   │   │       └── resources
    │   │   │           ├── ddl
    │   │   │               ├── chunk_test.js
    │   │   │               ├── column_type_test.js
    │   │   │               ├── customer.js
    │   │   │               ├── inventory.js
    │   │   │               ├── ns-dotted.js
    │   │   │               ├── ns-regex.js
    │   │   │               └── ns_regex.js
    │   │   │           ├── docker
    │   │   │               └── mongodb
    │   │   │               │   ├── random.key
    │   │   │               │   └── setup.js
    │   │   │           └── log4j2-test.properties
    │   ├── flink-connector-mysql-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   ├── com
    │   │   │       │   │   └── github
    │   │   │       │   │   │   └── shyiko
    │   │   │       │   │   │       └── mysql
    │   │   │       │   │   │           └── binlog
    │   │   │       │   │   │               ├── event
    │   │   │       │   │   │                   └── deserialization
    │   │   │       │   │   │                   │   ├── ColumnType.java
    │   │   │       │   │   │                   │   ├── TableMapEventDataDeserializer.java
    │   │   │       │   │   │                   │   ├── TableMapEventMetadataDeserializer.java
    │   │   │       │   │   │                   │   └── json
    │   │   │       │   │   │                   │       └── JsonStringFormatter.java
    │   │   │       │   │   │               └── io
    │   │   │       │   │   │                   └── BufferedSocketInputStream.java
    │   │   │       │   ├── io
    │   │   │       │   │   └── debezium
    │   │   │       │   │   │   └── connector
    │   │   │       │   │   │       └── mysql
    │   │   │       │   │   │           ├── GtidUtils.java
    │   │   │       │   │   │           ├── MySqlConnection.java
    │   │   │       │   │   │           ├── MySqlDefaultValueConverter.java
    │   │   │       │   │   │           ├── MySqlStreamingChangeEventSource.java
    │   │   │       │   │   │           ├── MySqlValueConverters.java
    │   │   │       │   │   │           ├── antlr
    │   │   │       │   │   │               └── listener
    │   │   │       │   │   │               │   └── DefaultValueParserListener.java
    │   │   │       │   │   │           ├── converters
    │   │   │       │   │   │               └── MysqlDebeziumTimeConverter.java
    │   │   │       │   │   │           └── util
    │   │   │       │   │   │               └── ErrorMessageUtils.java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── mysql
    │   │   │       │   │                       ├── MySqlSource.java
    │   │   │       │   │                       ├── MySqlValidator.java
    │   │   │       │   │                       ├── SeekBinlogToTimestampFilter.java
    │   │   │       │   │                       ├── debezium
    │   │   │       │   │                           ├── DebeziumUtils.java
    │   │   │       │   │                           ├── EmbeddedFlinkDatabaseHistory.java
    │   │   │       │   │                           ├── dispatcher
    │   │   │       │   │                           │   ├── EventDispatcherImpl.java
    │   │   │       │   │                           │   └── SignalEventDispatcher.java
    │   │   │       │   │                           ├── reader
    │   │   │       │   │                           │   ├── BinlogSplitReader.java
    │   │   │       │   │                           │   ├── DebeziumReader.java
    │   │   │       │   │                           │   ├── SnapshotSplitReader.java
    │   │   │       │   │                           │   └── StoppableChangeEventSourceContext.java
    │   │   │       │   │                           └── task
    │   │   │       │   │                           │   ├── MySqlBinlogSplitReadTask.java
    │   │   │       │   │                           │   ├── MySqlSnapshotSplitReadTask.java
    │   │   │       │   │                           │   └── context
    │   │   │       │   │                           │       ├── MySqlErrorHandler.java
    │   │   │       │   │                           │       ├── MySqlTaskContextImpl.java
    │   │   │       │   │                           │       ├── StatefulTaskContext.java
    │   │   │       │   │                           │       └── exception
    │   │   │       │   │                           │           └── SchemaOutOfSyncException.java
    │   │   │       │   │                       ├── schema
    │   │   │       │   │                           ├── MySqlFieldDefinition.java
    │   │   │       │   │                           ├── MySqlSchema.java
    │   │   │       │   │                           ├── MySqlTableDefinition.java
    │   │   │       │   │                           ├── MySqlTypeUtils.java
    │   │   │       │   │                           └── Selectors.java
    │   │   │       │   │                       ├── source
    │   │   │       │   │                           ├── MySqlSource.java
    │   │   │       │   │                           ├── MySqlSourceBuilder.java
    │   │   │       │   │                           ├── assigners
    │   │   │       │   │                           │   ├── AssignerStatus.java
    │   │   │       │   │                           │   ├── ChunkRange.java
    │   │   │       │   │                           │   ├── ChunkSplitter.java
    │   │   │       │   │                           │   ├── MySqlBinlogSplitAssigner.java
    │   │   │       │   │                           │   ├── MySqlChunkSplitter.java
    │   │   │       │   │                           │   ├── MySqlHybridSplitAssigner.java
    │   │   │       │   │                           │   ├── MySqlSnapshotSplitAssigner.java
    │   │   │       │   │                           │   ├── MySqlSplitAssigner.java
    │   │   │       │   │                           │   └── state
    │   │   │       │   │                           │   │   ├── BinlogPendingSplitsState.java
    │   │   │       │   │                           │   │   ├── ChunkSplitterState.java
    │   │   │       │   │                           │   │   ├── HybridPendingSplitsState.java
    │   │   │       │   │                           │   │   ├── PendingSplitsState.java
    │   │   │       │   │                           │   │   ├── PendingSplitsStateSerializer.java
    │   │   │       │   │                           │   │   └── SnapshotPendingSplitsState.java
    │   │   │       │   │                           ├── config
    │   │   │       │   │                           │   ├── MySqlSourceConfig.java
    │   │   │       │   │                           │   ├── MySqlSourceConfigFactory.java
    │   │   │       │   │                           │   ├── MySqlSourceOptions.java
    │   │   │       │   │                           │   └── ServerIdRange.java
    │   │   │       │   │                           ├── connection
    │   │   │       │   │                           │   ├── ConnectionPoolId.java
    │   │   │       │   │                           │   ├── ConnectionPools.java
    │   │   │       │   │                           │   ├── JdbcConnectionFactory.java
    │   │   │       │   │                           │   ├── JdbcConnectionPools.java
    │   │   │       │   │                           │   └── PooledDataSourceFactory.java
    │   │   │       │   │                           ├── enumerator
    │   │   │       │   │                           │   └── MySqlSourceEnumerator.java
    │   │   │       │   │                           ├── events
    │   │   │       │   │                           │   ├── BinlogSplitAssignedEvent.java
    │   │   │       │   │                           │   ├── BinlogSplitMetaEvent.java
    │   │   │       │   │                           │   ├── BinlogSplitMetaRequestEvent.java
    │   │   │       │   │                           │   ├── BinlogSplitUpdateAckEvent.java
    │   │   │       │   │                           │   ├── BinlogSplitUpdateRequestEvent.java
    │   │   │       │   │                           │   ├── FinishedSnapshotSplitsAckEvent.java
    │   │   │       │   │                           │   ├── FinishedSnapshotSplitsReportEvent.java
    │   │   │       │   │                           │   ├── FinishedSnapshotSplitsRequestEvent.java
    │   │   │       │   │                           │   ├── LatestFinishedSplitsNumberEvent.java
    │   │   │       │   │                           │   └── LatestFinishedSplitsNumberRequestEvent.java
    │   │   │       │   │                           ├── metrics
    │   │   │       │   │                           │   └── MySqlSourceReaderMetrics.java
    │   │   │       │   │                           ├── offset
    │   │   │       │   │                           │   ├── BinlogOffset.java
    │   │   │       │   │                           │   ├── BinlogOffsetBuilder.java
    │   │   │       │   │                           │   ├── BinlogOffsetKind.java
    │   │   │       │   │                           │   ├── BinlogOffsetSerializer.java
    │   │   │       │   │                           │   └── BinlogOffsetUtils.java
    │   │   │       │   │                           ├── reader
    │   │   │       │   │                           │   ├── MySqlRecordEmitter.java
    │   │   │       │   │                           │   ├── MySqlSourceReader.java
    │   │   │       │   │                           │   ├── MySqlSourceReaderContext.java
    │   │   │       │   │                           │   └── MySqlSplitReader.java
    │   │   │       │   │                           ├── split
    │   │   │       │   │                           │   ├── FinishedSnapshotSplitInfo.java
    │   │   │       │   │                           │   ├── MySqlBinlogSplit.java
    │   │   │       │   │                           │   ├── MySqlBinlogSplitState.java
    │   │   │       │   │                           │   ├── MySqlRecords.java
    │   │   │       │   │                           │   ├── MySqlSchemalessSnapshotSplit.java
    │   │   │       │   │                           │   ├── MySqlSnapshotSplit.java
    │   │   │       │   │                           │   ├── MySqlSnapshotSplitState.java
    │   │   │       │   │                           │   ├── MySqlSplit.java
    │   │   │       │   │                           │   ├── MySqlSplitSerializer.java
    │   │   │       │   │                           │   ├── MySqlSplitState.java
    │   │   │       │   │                           │   └── SourceRecords.java
    │   │   │       │   │                           └── utils
    │   │   │       │   │                           │   ├── ChunkUtils.java
    │   │   │       │   │                           │   ├── EnvironmentUtils.java
    │   │   │       │   │                           │   ├── ObjectUtils.java
    │   │   │       │   │                           │   ├── RecordUtils.java
    │   │   │       │   │                           │   ├── SerializerUtils.java
    │   │   │       │   │                           │   ├── StatementUtils.java
    │   │   │       │   │                           │   ├── TableDiscoveryUtils.java
    │   │   │       │   │                           │   ├── VersionComparable.java
    │   │   │       │   │                           │   └── hooks
    │   │   │       │   │                           │       ├── SnapshotPhaseHook.java
    │   │   │       │   │                           │       └── SnapshotPhaseHooks.java
    │   │   │       │   │                       ├── table
    │   │   │       │   │                           ├── MySqlDeserializationConverterFactory.java
    │   │   │       │   │                           ├── MySqlReadableMetadata.java
    │   │   │       │   │                           ├── MySqlTableSource.java
    │   │   │       │   │                           ├── MySqlTableSourceFactory.java
    │   │   │       │   │                           ├── StartupMode.java
    │   │   │       │   │                           └── StartupOptions.java
    │   │   │       │   │                       └── utils
    │   │   │       │   │                           └── OptionUtils.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.table.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           ├── com
    │   │   │           │   └── github
    │   │   │           │   │   └── shyiko
    │   │   │           │   │       └── mysql
    │   │   │           │   │           └── binlog
    │   │   │           │   │               ├── event
    │   │   │           │   │                   └── deserialization
    │   │   │           │   │                   │   └── TableMapEventDataDeserializerTest.java
    │   │   │           │   │               └── io
    │   │   │           │   │                   └── BufferedSocketInputStreamTest.java
    │   │   │           ├── io
    │   │   │           │   └── debezium
    │   │   │           │   │   └── connector
    │   │   │           │   │       └── mysql
    │   │   │           │   │           ├── GtidUtilsTest.java
    │   │   │           │   │           └── util
    │   │   │           │   │               └── ErrorMessageUtilsTest.java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   ├── mysql
    │   │   │           │                       ├── LegacyMySqlSourceExampleTest.java
    │   │   │           │                       ├── LegacyMySqlSourceITCase.java
    │   │   │           │                       ├── LegacyMySqlSourceTest.java
    │   │   │           │                       ├── LegacyMySqlTestBase.java
    │   │   │           │                       ├── MySqlTestUtils.java
    │   │   │           │                       ├── MySqlValidatorTest.java
    │   │   │           │                       ├── debezium
    │   │   │           │                       │   ├── DebeziumUtilsTest.java
    │   │   │           │                       │   ├── converters
    │   │   │           │                       │   │   └── MysqlDebeziumTimeConverterITCase.java
    │   │   │           │                       │   └── reader
    │   │   │           │                       │   │   ├── BinlogSplitReaderTest.java
    │   │   │           │                       │   │   └── SnapshotSplitReaderTest.java
    │   │   │           │                       ├── source
    │   │   │           │                       │   ├── MySqlAncientDateAndTimeITCase.java
    │   │   │           │                       │   ├── MySqlMultipleTablesRenamingITCase.java
    │   │   │           │                       │   ├── MySqlOnLineSchemaMigrationSourceITCase.java
    │   │   │           │                       │   ├── MySqlSourceExampleTest.java
    │   │   │           │                       │   ├── MySqlSourceITCase.java
    │   │   │           │                       │   ├── MySqlSourceTestBase.java
    │   │   │           │                       │   ├── NewlyAddedTableITCase.java
    │   │   │           │                       │   ├── SpecificStartingOffsetITCase.java
    │   │   │           │                       │   ├── assigners
    │   │   │           │                       │   │   ├── MySqlBinlogSplitAssignerTest.java
    │   │   │           │                       │   │   ├── MySqlChunkSplitterTest.java
    │   │   │           │                       │   │   ├── MySqlHybridSplitAssignerTest.java
    │   │   │           │                       │   │   ├── MySqlSnapshotSplitAssignerTest.java
    │   │   │           │                       │   │   └── state
    │   │   │           │                       │   │   │   └── PendingSplitsStateSerializerTest.java
    │   │   │           │                       │   ├── reader
    │   │   │           │                       │   │   ├── MySqlRecordEmitterTest.java
    │   │   │           │                       │   │   └── MySqlSourceReaderTest.java
    │   │   │           │                       │   ├── split
    │   │   │           │                       │   │   ├── MySqlBinlogSplitTest.java
    │   │   │           │                       │   │   ├── MySqlSplitSerializerTest.java
    │   │   │           │                       │   │   └── MySqlSplitStateTest.java
    │   │   │           │                       │   └── utils
    │   │   │           │                       │   │   ├── MockMySqlSplitEnumeratorEnumeratorContext.java
    │   │   │           │                       │   │   ├── ObjectUtilsTest.java
    │   │   │           │                       │   │   ├── RecordUtilsTest.java
    │   │   │           │                       │   │   └── SerializerUtilsTest.java
    │   │   │           │                       ├── table
    │   │   │           │                       │   ├── MySqlAncientDateAndTimeITCase.java
    │   │   │           │                       │   ├── MySqlCompatibilityITCase.java
    │   │   │           │                       │   ├── MySqlConnectorITCase.java
    │   │   │           │                       │   ├── MySqlConnectorShardingTableITCase.java
    │   │   │           │                       │   ├── MySqlJsonArrayAsKeyIndexITCase.java
    │   │   │           │                       │   ├── MySqlOnLineSchemaMigrationTableITCase.java
    │   │   │           │                       │   ├── MySqlTableSourceFactoryTest.java
    │   │   │           │                       │   ├── MySqlTimezoneITCase.java
    │   │   │           │                       │   └── MysqlConnectorCharsetITCase.java
    │   │   │           │                       └── testutils
    │   │   │           │                       │   ├── MetricsUtils.java
    │   │   │           │                       │   ├── MySqlContainer.java
    │   │   │           │                       │   ├── MySqlVersion.java
    │   │   │           │                       │   ├── RecordsFormatter.java
    │   │   │           │                       │   ├── TestTable.java
    │   │   │           │                       │   ├── TestTableSchemas.java
    │   │   │           │                       │   └── UniqueDatabase.java
    │   │   │           │                   └── polardbx
    │   │   │           │                       ├── PolardbxCharsetITCase.java
    │   │   │           │                       ├── PolardbxSourceITCase.java
    │   │   │           │                       └── PolardbxSourceTestBase.java
    │   │   │       └── resources
    │   │   │           ├── ddl
    │   │   │               ├── ancient_date_and_time.sql
    │   │   │               ├── binlog_metadata_test.sql
    │   │   │               ├── charset_test.sql
    │   │   │               ├── column_type_test.sql
    │   │   │               ├── column_type_test_mysql8.sql
    │   │   │               ├── customer.sql
    │   │   │               ├── customer3.0.sql
    │   │   │               ├── date_convert_test.sql
    │   │   │               ├── inventory.sql
    │   │   │               ├── json_array_as_key.sql
    │   │   │               ├── polardbx_ddl_test.sql
    │   │   │               ├── user_1.sql
    │   │   │               └── user_2.sql
    │   │   │           ├── docker
    │   │   │               ├── server-allow-ancient-date-time
    │   │   │               │   └── my.cnf
    │   │   │               ├── server-gtids
    │   │   │               │   ├── expire-seconds
    │   │   │               │   │   └── my.cnf
    │   │   │               │   └── my.cnf
    │   │   │               ├── server
    │   │   │               │   └── my.cnf
    │   │   │               └── setup.sql
    │   │   │           ├── file
    │   │   │               ├── debezium-data-schema-exclude-with-numeric-decimal.json
    │   │   │               ├── debezium-data-schema-exclude.json
    │   │   │               └── debezium-data-schema-include.json
    │   │   │           └── log4j2-test.properties
    │   ├── flink-connector-oceanbase-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── oceanbase
    │   │   │       │   │                       ├── OceanBaseSource.java
    │   │   │       │   │                       ├── source
    │   │   │       │   │                           ├── OceanBaseRichSourceFunction.java
    │   │   │       │   │                           ├── config
    │   │   │       │   │                           │   └── OceanBaseConnectorConfig.java
    │   │   │       │   │                           ├── connection
    │   │   │       │   │                           │   └── OceanBaseConnection.java
    │   │   │       │   │                           ├── converter
    │   │   │       │   │                           │   ├── OceanBaseDeserializationConverterFactory.java
    │   │   │       │   │                           │   └── OceanBaseValueConverters.java
    │   │   │       │   │                           ├── offset
    │   │   │       │   │                           │   ├── OceanBaseSourceInfo.java
    │   │   │       │   │                           │   └── OceanBaseSourceInfoStructMaker.java
    │   │   │       │   │                           └── schema
    │   │   │       │   │                           │   ├── OceanBaseDatabaseSchema.java
    │   │   │       │   │                           │   └── OceanBaseSchema.java
    │   │   │       │   │                       ├── table
    │   │   │       │   │                           ├── OceanBaseReadableMetadata.java
    │   │   │       │   │                           ├── OceanBaseTableSource.java
    │   │   │       │   │                           └── OceanBaseTableSourceFactory.java
    │   │   │       │   │                       └── utils
    │   │   │       │   │                           ├── OceanBaseUtils.java
    │   │   │       │   │                           └── OptionUtils.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.table.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── oceanbase
    │   │   │           │                       ├── OceanBaseTestBase.java
    │   │   │           │                       ├── OceanBaseTestUtils.java
    │   │   │           │                       ├── table
    │   │   │           │                           ├── OceanBaseMySQLModeITCase.java
    │   │   │           │                           ├── OceanBaseOracleModeITCase.java
    │   │   │           │                           └── OceanBaseTableFactoryTest.java
    │   │   │           │                       └── testutils
    │   │   │           │                           ├── LogProxyContainer.java
    │   │   │           │                           ├── OceanBaseCdcMetadata.java
    │   │   │           │                           ├── OceanBaseContainer.java
    │   │   │           │                           ├── OceanBaseMySQLCdcMetadata.java
    │   │   │           │                           ├── OceanBaseOracleCdcMetadata.java
    │   │   │           │                           └── UniqueDatabase.java
    │   │   │       └── resources
    │   │   │           ├── ddl
    │   │   │               ├── mysql
    │   │   │               │   ├── column_type_test.sql
    │   │   │               │   └── inventory.sql
    │   │   │               └── oracle
    │   │   │               │   └── column_type_test.sql
    │   │   │           └── log4j2-test.properties
    │   ├── flink-connector-oracle-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   ├── io
    │   │   │       │   │   └── debezium
    │   │   │       │   │   │   └── connector
    │   │   │       │   │   │       └── oracle
    │   │   │       │   │   │           └── logminer
    │   │   │       │   │   │               ├── LogMinerAdapter.java
    │   │   │       │   │   │               ├── LogMinerChangeRecordEmitter.java
    │   │   │       │   │   │               ├── LogMinerStreamingChangeEventSource.java
    │   │   │       │   │   │               └── processor
    │   │   │       │   │   │                   └── AbstractLogMinerEventProcessor.java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── oracle
    │   │   │       │   │                       ├── OracleSource.java
    │   │   │       │   │                       ├── OracleValidator.java
    │   │   │       │   │                       ├── source
    │   │   │       │   │                           ├── OracleDialect.java
    │   │   │       │   │                           ├── OraclePooledDataSourceFactory.java
    │   │   │       │   │                           ├── OracleSourceBuilder.java
    │   │   │       │   │                           ├── assigner
    │   │   │       │   │                           │   └── splitter
    │   │   │       │   │                           │   │   └── OracleChunkSplitter.java
    │   │   │       │   │                           ├── config
    │   │   │       │   │                           │   ├── OracleSourceConfig.java
    │   │   │       │   │                           │   ├── OracleSourceConfigFactory.java
    │   │   │       │   │                           │   └── OracleSourceOptions.java
    │   │   │       │   │                           ├── handler
    │   │   │       │   │                           │   └── OracleSchemaChangeEventHandler.java
    │   │   │       │   │                           ├── meta
    │   │   │       │   │                           │   └── offset
    │   │   │       │   │                           │   │   ├── RedoLogOffset.java
    │   │   │       │   │                           │   │   └── RedoLogOffsetFactory.java
    │   │   │       │   │                           ├── reader
    │   │   │       │   │                           │   └── fetch
    │   │   │       │   │                           │   │   ├── EventProcessorFactory.java
    │   │   │       │   │                           │   │   ├── OracleScanFetchTask.java
    │   │   │       │   │                           │   │   ├── OracleSourceFetchTaskContext.java
    │   │   │       │   │                           │   │   ├── OracleStreamFetchTask.java
    │   │   │       │   │                           │   │   └── StoppableChangeEventSourceContext.java
    │   │   │       │   │                           └── utils
    │   │   │       │   │                           │   ├── OracleConnectionUtils.java
    │   │   │       │   │                           │   ├── OracleSchema.java
    │   │   │       │   │                           │   ├── OracleTypeUtils.java
    │   │   │       │   │                           │   └── OracleUtils.java
    │   │   │       │   │                       ├── table
    │   │   │       │   │                           ├── OracleDeserializationConverterFactory.java
    │   │   │       │   │                           ├── OracleReadableMetaData.java
    │   │   │       │   │                           ├── OracleTableSource.java
    │   │   │       │   │                           └── OracleTableSourceFactory.java
    │   │   │       │   │                       └── util
    │   │   │       │   │                           ├── ChunkUtils.java
    │   │   │       │   │                           └── OracleJdbcUrlUtils.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.table.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   ├── apache
    │   │   │           │       └── flink
    │   │   │           │       │   └── cdc
    │   │   │           │       │       └── connectors
    │   │   │           │       │           └── oracle
    │   │   │           │       │               ├── OracleChangeEventSourceExampleTest.java
    │   │   │           │       │               ├── OracleSourceTest.java
    │   │   │           │       │               ├── source
    │   │   │           │       │                   ├── NewlyAddedTableITCase.java
    │   │   │           │       │                   ├── OracleSourceITCase.java
    │   │   │           │       │                   ├── OracleSourceTestBase.java
    │   │   │           │       │                   ├── assigner
    │   │   │           │       │                   │   └── splitter
    │   │   │           │       │                   │   │   └── OracleChunkSplitterTest.java
    │   │   │           │       │                   └── reader
    │   │   │           │       │                   │   └── OracleSourceReaderTest.java
    │   │   │           │       │               ├── table
    │   │   │           │       │                   ├── OracleConnectorITCase.java
    │   │   │           │       │                   └── OracleTableSourceFactoryTest.java
    │   │   │           │       │               └── testutils
    │   │   │           │       │                   ├── OracleTestUtils.java
    │   │   │           │       │                   ├── RecordsFormatter.java
    │   │   │           │       │                   └── TestTable.java
    │   │   │           │   └── testcontainers
    │   │   │           │       └── containers
    │   │   │           │           └── OracleContainer.java
    │   │   │       └── resources
    │   │   │           ├── ddl
    │   │   │               ├── column_type_test.sql
    │   │   │               ├── customer.sql
    │   │   │               └── product.sql
    │   │   │           └── log4j2-test.properties
    │   ├── flink-connector-postgres-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   ├── io
    │   │   │       │   │   └── debezium
    │   │   │       │   │   │   └── connector
    │   │   │       │   │   │       └── postgresql
    │   │   │       │   │   │           ├── PostgresObjectUtils.java
    │   │   │       │   │   │           ├── PostgresStreamingChangeEventSource.java
    │   │   │       │   │   │           ├── Utils.java
    │   │   │       │   │   │           └── connection
    │   │   │       │   │   │               ├── Lsn.java
    │   │   │       │   │   │               ├── PostgresConnection.java
    │   │   │       │   │   │               ├── PostgresConnectionUtils.java
    │   │   │       │   │   │               └── PostgresReplicationConnection.java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── postgres
    │   │   │       │   │                       ├── PostgreSQLSource.java
    │   │   │       │   │                       ├── source
    │   │   │       │   │                           ├── PostgresChunkSplitter.java
    │   │   │       │   │                           ├── PostgresConnectionPoolFactory.java
    │   │   │       │   │                           ├── PostgresDialect.java
    │   │   │       │   │                           ├── PostgresSourceBuilder.java
    │   │   │       │   │                           ├── config
    │   │   │       │   │                           │   ├── PostgresSourceConfig.java
    │   │   │       │   │                           │   ├── PostgresSourceConfigFactory.java
    │   │   │       │   │                           │   └── PostgresSourceOptions.java
    │   │   │       │   │                           ├── enumerator
    │   │   │       │   │                           │   └── PostgresSourceEnumerator.java
    │   │   │       │   │                           ├── events
    │   │   │       │   │                           │   ├── OffsetCommitAckEvent.java
    │   │   │       │   │                           │   └── OffsetCommitEvent.java
    │   │   │       │   │                           ├── fetch
    │   │   │       │   │                           │   ├── CDCPostgresDispatcher.java
    │   │   │       │   │                           │   ├── PostgresScanFetchTask.java
    │   │   │       │   │                           │   ├── PostgresSourceFetchTaskContext.java
    │   │   │       │   │                           │   ├── PostgresStreamFetchTask.java
    │   │   │       │   │                           │   └── StoppableChangeEventSourceContext.java
    │   │   │       │   │                           ├── handler
    │   │   │       │   │                           │   └── PostgresSchemaChangeEventHandler.java
    │   │   │       │   │                           ├── offset
    │   │   │       │   │                           │   ├── PostgresOffset.java
    │   │   │       │   │                           │   ├── PostgresOffsetFactory.java
    │   │   │       │   │                           │   └── PostgresOffsetUtils.java
    │   │   │       │   │                           ├── reader
    │   │   │       │   │                           │   └── PostgresSourceReader.java
    │   │   │       │   │                           └── utils
    │   │   │       │   │                           │   ├── ChunkUtils.java
    │   │   │       │   │                           │   ├── CustomPostgresSchema.java
    │   │   │       │   │                           │   ├── PostgresQueryUtils.java
    │   │   │       │   │                           │   ├── PostgresTypeUtils.java
    │   │   │       │   │                           │   └── TableDiscoveryUtils.java
    │   │   │       │   │                       ├── table
    │   │   │       │   │                           ├── PostgreSQLDeserializationConverterFactory.java
    │   │   │       │   │                           ├── PostgreSQLReadableMetadata.java
    │   │   │       │   │                           ├── PostgreSQLTableFactory.java
    │   │   │       │   │                           ├── PostgreSQLTableSource.java
    │   │   │       │   │                           └── PostgresValueValidator.java
    │   │   │       │   │                       └── utils
    │   │   │       │   │                           └── OptionUtils.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.table.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── postgres
    │   │   │           │                       ├── PostgreSQLSourceTest.java
    │   │   │           │                       ├── PostgresTestBase.java
    │   │   │           │                       ├── source
    │   │   │           │                           ├── MockPostgresDialect.java
    │   │   │           │                           ├── NewlyAddedTableITCase.java
    │   │   │           │                           ├── PostgresDialectTest.java
    │   │   │           │                           ├── PostgresSourceExampleTest.java
    │   │   │           │                           ├── PostgresSourceITCase.java
    │   │   │           │                           ├── fetch
    │   │   │           │                           │   ├── PostgresScanFetchTaskTest.java
    │   │   │           │                           │   └── PostgresSourceFetchTaskContextTest.java
    │   │   │           │                           └── reader
    │   │   │           │                           │   └── PostgresSourceReaderTest.java
    │   │   │           │                       ├── table
    │   │   │           │                           ├── MockPostgreSQLTableFactory.java
    │   │   │           │                           ├── MockPostgreSQLTableSource.java
    │   │   │           │                           ├── PostgreSQLConnectorITCase.java
    │   │   │           │                           ├── PostgreSQLSavepointITCase.java
    │   │   │           │                           └── PostgreSQLTableFactoryTest.java
    │   │   │           │                       └── testutils
    │   │   │           │                           ├── PostgresTestUtils.java
    │   │   │           │                           ├── RecordsFormatter.java
    │   │   │           │                           ├── TestHelper.java
    │   │   │           │                           ├── TestTable.java
    │   │   │           │                           ├── TestTableId.java
    │   │   │           │                           └── UniqueDatabase.java
    │   │   │       └── resources
    │   │   │           ├── META-INF
    │   │   │               └── services
    │   │   │               │   └── org.apache.flink.table.factories.Factory
    │   │   │           ├── ddl
    │   │   │               ├── column_type_test.sql
    │   │   │               ├── customer.sql
    │   │   │               ├── index_type_test.sql
    │   │   │               ├── inventory.sql
    │   │   │               └── replica_identity.sql
    │   │   │           └── log4j2-test.properties
    │   ├── flink-connector-sqlserver-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   ├── io
    │   │   │       │   │   └── debezium
    │   │   │       │   │   │   └── connector
    │   │   │       │   │   │       └── sqlserver
    │   │   │       │   │   │           ├── SqlServerOffsetContext.java
    │   │   │       │   │   │           └── SqlServerStreamingChangeEventSource.java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── sqlserver
    │   │   │       │   │                       ├── SqlServerSource.java
    │   │   │       │   │                       ├── SqlServerValidator.java
    │   │   │       │   │                       ├── source
    │   │   │       │   │                           ├── SqlServerSourceBuilder.java
    │   │   │       │   │                           ├── config
    │   │   │       │   │                           │   ├── SqlServerSourceConfig.java
    │   │   │       │   │                           │   └── SqlServerSourceConfigFactory.java
    │   │   │       │   │                           ├── dialect
    │   │   │       │   │                           │   ├── SqlServerChunkSplitter.java
    │   │   │       │   │                           │   ├── SqlServerDialect.java
    │   │   │       │   │                           │   ├── SqlServerPooledDataSourceFactory.java
    │   │   │       │   │                           │   └── SqlServerSchema.java
    │   │   │       │   │                           ├── handler
    │   │   │       │   │                           │   └── SqlServerSchemaChangeEventHandler.java
    │   │   │       │   │                           ├── offset
    │   │   │       │   │                           │   ├── LsnFactory.java
    │   │   │       │   │                           │   └── LsnOffset.java
    │   │   │       │   │                           ├── reader
    │   │   │       │   │                           │   └── fetch
    │   │   │       │   │                           │   │   ├── SqlServerScanFetchTask.java
    │   │   │       │   │                           │   │   ├── SqlServerSourceFetchTaskContext.java
    │   │   │       │   │                           │   │   └── SqlServerStreamFetchTask.java
    │   │   │       │   │                           └── utils
    │   │   │       │   │                           │   ├── SqlServerConnectionUtils.java
    │   │   │       │   │                           │   ├── SqlServerTypeUtils.java
    │   │   │       │   │                           │   └── SqlServerUtils.java
    │   │   │       │   │                       └── table
    │   │   │       │   │                           ├── SqlServerDeserializationConverterFactory.java
    │   │   │       │   │                           ├── SqlServerReadableMetadata.java
    │   │   │       │   │                           ├── SqlServerTableFactory.java
    │   │   │       │   │                           └── SqlServerTableSource.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.table.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── sqlserver
    │   │   │           │                       ├── SqlServerParallelSourceExampleTest.java
    │   │   │           │                       ├── SqlServerTestBase.java
    │   │   │           │                       ├── source
    │   │   │           │                           ├── SqlServerSourceITCase.java
    │   │   │           │                           ├── SqlServerSourceTestBase.java
    │   │   │           │                           ├── reader
    │   │   │           │                           │   ├── SqlserverSourceReaderTest.java
    │   │   │           │                           │   └── fetch
    │   │   │           │                           │   │   └── SqlServerScanFetchTaskTest.java
    │   │   │           │                           └── utils
    │   │   │           │                           │   └── SQLServerUUIDComparatorTest.java
    │   │   │           │                       ├── table
    │   │   │           │                           ├── SqlServerConnectorITCase.java
    │   │   │           │                           ├── SqlServerTableFactoryTest.java
    │   │   │           │                           └── SqlServerTimezoneITCase.java
    │   │   │           │                       └── testutils
    │   │   │           │                           ├── RecordsFormatter.java
    │   │   │           │                           └── TestTable.java
    │   │   │       └── resources
    │   │   │           ├── container-license-acceptance.txt
    │   │   │           ├── ddl
    │   │   │               ├── column_type_test.sql
    │   │   │               ├── customer.sql
    │   │   │               ├── inventory.sql
    │   │   │               ├── pk.sql
    │   │   │               └── product.sql
    │   │   │           └── log4j2-test.properties
    │   ├── flink-connector-test-util
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   └── main
    │   │   │       └── java
    │   │   │           └── org
    │   │   │               └── apache
    │   │   │                   └── flink
    │   │   │                       └── cdc
    │   │   │                           └── connectors
    │   │   │                               └── utils
    │   │   │                                   ├── AssertUtils.java
    │   │   │                                   ├── ExternalResourceProxy.java
    │   │   │                                   ├── StaticExternalResourceProxy.java
    │   │   │                                   └── TestSourceContext.java
    │   ├── flink-connector-tidb-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   ├── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │       │   └── cdc
    │   │   │       │   │       │       └── connectors
    │   │   │       │   │       │           └── tidb
    │   │   │       │   │       │               ├── TDBSourceOptions.java
    │   │   │       │   │       │               ├── TiDBSource.java
    │   │   │       │   │       │               ├── TiKVChangeEventDeserializationSchema.java
    │   │   │       │   │       │               ├── TiKVRichParallelSourceFunction.java
    │   │   │       │   │       │               ├── TiKVSnapshotEventDeserializationSchema.java
    │   │   │       │   │       │               ├── metrics
    │   │   │       │   │       │                   └── TiDBSourceMetrics.java
    │   │   │       │   │       │               └── table
    │   │   │       │   │       │                   ├── RowDataTiKVChangeEventDeserializationSchema.java
    │   │   │       │   │       │                   ├── RowDataTiKVEventDeserializationSchemaBase.java
    │   │   │       │   │       │                   ├── RowDataTiKVSnapshotEventDeserializationSchema.java
    │   │   │       │   │       │                   ├── StartupMode.java
    │   │   │       │   │       │                   ├── StartupOptions.java
    │   │   │       │   │       │                   ├── TiDBTableSource.java
    │   │   │       │   │       │                   ├── TiDBTableSourceFactory.java
    │   │   │       │   │       │                   ├── TiKVAppendMetadataCollector.java
    │   │   │       │   │       │                   ├── TiKVDeserializationRuntimeConverter.java
    │   │   │       │   │       │                   ├── TiKVMetadataConverter.java
    │   │   │       │   │       │                   ├── TiKVReadableMetadata.java
    │   │   │       │   │       │                   └── utils
    │   │   │       │   │       │                       ├── OptionUtils.java
    │   │   │       │   │       │                       ├── TableKeyRangeUtils.java
    │   │   │       │   │       │                       └── UriHostMapping.java
    │   │   │       │   │   └── tikv
    │   │   │       │   │       ├── cdc
    │   │   │       │   │           ├── CDCClient.java
    │   │   │       │   │           ├── CDCEvent.java
    │   │   │       │   │           └── RegionCDCClient.java
    │   │   │       │   │       └── common
    │   │   │       │   │           ├── operation
    │   │   │       │   │               └── iterator
    │   │   │       │   │               │   └── ScanIterator.java
    │   │   │       │   │           └── util
    │   │   │       │   │               └── ChannelFactory.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.table.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── tidb
    │   │   │           │                       ├── TiDBTestBase.java
    │   │   │           │                       ├── metrics
    │   │   │           │                           └── TiDBSourceMetricsTest.java
    │   │   │           │                       └── table
    │   │   │           │                           ├── TiDBConnectorITCase.java
    │   │   │           │                           ├── TiDBConnectorRegionITCase.java
    │   │   │           │                           ├── TiDBTableSourceFactoryTest.java
    │   │   │           │                           └── utils
    │   │   │           │                               └── UriHostMappingTest.java
    │   │   │       └── resources
    │   │   │           ├── config
    │   │   │               ├── pd.toml
    │   │   │               ├── tidb.toml
    │   │   │               └── tikv.toml
    │   │   │           ├── ddl
    │   │   │               ├── column_type_test.sql
    │   │   │               ├── inventory.sql
    │   │   │               └── region_switch_test.sql
    │   │   │           └── log4j2-test.properties
    │   ├── flink-connector-vitess-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   ├── main
    │   │   │       ├── java
    │   │   │       │   └── org
    │   │   │       │   │   └── apache
    │   │   │       │   │       └── flink
    │   │   │       │   │           └── cdc
    │   │   │       │   │               └── connectors
    │   │   │       │   │                   └── vitess
    │   │   │       │   │                       ├── VitessSource.java
    │   │   │       │   │                       ├── VitessValidator.java
    │   │   │       │   │                       ├── config
    │   │   │       │   │                           ├── SchemaAdjustmentMode.java
    │   │   │       │   │                           └── TabletType.java
    │   │   │       │   │                       └── table
    │   │   │       │   │                           ├── VitessTableFactory.java
    │   │   │       │   │                           └── VitessTableSource.java
    │   │   │       └── resources
    │   │   │       │   └── META-INF
    │   │   │       │       └── services
    │   │   │       │           └── org.apache.flink.table.factories.Factory
    │   │   │   └── test
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── vitess
    │   │   │           │                       ├── VitessSourceTest.java
    │   │   │           │                       ├── VitessTestBase.java
    │   │   │           │                       ├── container
    │   │   │           │                           └── VitessContainer.java
    │   │   │           │                       └── table
    │   │   │           │                           ├── VitessConnectorITCase.java
    │   │   │           │                           └── VitessTableFactoryTest.java
    │   │   │       └── resources
    │   │   │           ├── ddl
    │   │   │               ├── column_type_test.sql
    │   │   │               └── inventory.sql
    │   │   │           └── log4j2-test.properties
    │   ├── flink-sql-connector-db2-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   └── main
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── db2
    │   │   │           │                       └── DummyDocs.java
    │   │   │       └── resources
    │   │   │           └── META-INF
    │   │   │               └── NOTICE
    │   ├── flink-sql-connector-mongodb-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   └── main
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── mongodb
    │   │   │           │                       └── DummyDocs.java
    │   │   │       └── resources
    │   │   │           └── META-INF
    │   │   │               └── NOTICE
    │   ├── flink-sql-connector-mysql-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   └── main
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── mysql
    │   │   │           │                       └── DummyDocs.java
    │   │   │       └── resources
    │   │   │           └── META-INF
    │   │   │               └── NOTICE
    │   ├── flink-sql-connector-oceanbase-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   └── main
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── oceanbase
    │   │   │           │                       └── DummyDocs.java
    │   │   │       └── resources
    │   │   │           └── META-INF
    │   │   │               └── NOTICE
    │   ├── flink-sql-connector-oracle-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   └── main
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── oracle
    │   │   │           │                       └── DummyDocs.java
    │   │   │       └── resources
    │   │   │           └── META-INF
    │   │   │               └── NOTICE
    │   ├── flink-sql-connector-postgres-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   └── main
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── postgres
    │   │   │           │                       └── DummyDocs.java
    │   │   │       └── resources
    │   │   │           └── META-INF
    │   │   │               └── NOTICE
    │   ├── flink-sql-connector-sqlserver-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   └── main
    │   │   │       ├── java
    │   │   │           └── org
    │   │   │           │   └── apache
    │   │   │           │       └── flink
    │   │   │           │           └── cdc
    │   │   │           │               └── connectors
    │   │   │           │                   └── sqlserver
    │   │   │           │                       └── DummyDocs.java
    │   │   │       └── resources
    │   │   │           └── META-INF
    │   │   │               └── NOTICE
    │   ├── flink-sql-connector-tidb-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   └── main
    │   │   │       └── java
    │   │   │           └── org
    │   │   │               └── apache
    │   │   │                   └── flink
    │   │   │                       └── cdc
    │   │   │                           └── connectors
    │   │   │                               └── tidb
    │   │   │                                   └── DummyDocs.java
    │   ├── flink-sql-connector-vitess-cdc
    │   │   ├── pom.xml
    │   │   └── src
    │   │   │   └── main
    │   │   │       └── java
    │   │   │           └── org
    │   │   │               └── apache
    │   │   │                   └── flink
    │   │   │                       └── cdc
    │   │   │                           └── connectors
    │   │   │                               └── vitess
    │   │   │                                   └── DummyDocs.java
    │   └── pom.xml
    └── pom.xml
├── flink-cdc-dist
    ├── pom.xml
    └── src
    │   └── main
    │       ├── assembly
    │           └── assembly.xml
    │       └── flink-cdc-bin
    │           ├── bin
    │               └── flink-cdc.sh
    │           └── conf
    │               ├── flink-cdc.yaml
    │               └── log4j-cli.properties
├── flink-cdc-e2e-tests
    ├── flink-cdc-e2e-utils
    │   ├── pom.xml
    │   └── src
    │   │   └── test
    │   │       └── java
    │   │           └── org
    │   │               └── apache
    │   │                   └── flink
    │   │                       └── cdc
    │   │                           └── common
    │   │                               └── test
    │   │                                   └── utils
    │   │                                       ├── JdbcProxy.java
    │   │                                       ├── ParameterProperty.java
    │   │                                       └── TestUtils.java
    ├── flink-cdc-pipeline-e2e-tests
    │   ├── pom.xml
    │   └── src
    │   │   └── test
    │   │       ├── java
    │   │           └── org
    │   │           │   └── apache
    │   │           │       └── flink
    │   │           │           └── cdc
    │   │           │               └── pipeline
    │   │           │                   └── tests
    │   │           │                       ├── MaxComputeE2eITCase.java
    │   │           │                       ├── MySqlToDorisE2eITCase.java
    │   │           │                       ├── MySqlToIcebergE2eITCase.java
    │   │           │                       ├── MySqlToPaimonE2eITCase.java
    │   │           │                       ├── MysqlE2eITCase.java
    │   │           │                       ├── MysqlE2eWithYarnApplicationITCase.java
    │   │           │                       ├── MysqlToKafkaE2eITCase.java
    │   │           │                       ├── OceanBaseE2eITCase.java
    │   │           │                       ├── RouteE2eITCase.java
    │   │           │                       ├── SchemaEvolveE2eITCase.java
    │   │           │                       ├── SchemaEvolvingTransformE2eITCase.java
    │   │           │                       ├── TransformE2eITCase.java
    │   │           │                       ├── UdfE2eITCase.java
    │   │           │                       ├── migration
    │   │           │                           └── YamlJobMigrationITCase.java
    │   │           │                       └── utils
    │   │           │                           ├── PipelineTestEnvironment.java
    │   │           │                           ├── PipelineTestOnYarnEnvironment.java
    │   │           │                           └── TarballFetcher.java
    │   │       └── resources
    │   │           ├── ddl
    │   │               ├── data_types_test.sql
    │   │               ├── iceberg_inventory.sql
    │   │               ├── mysql_2_oceanbase_test.sql
    │   │               ├── mysql_inventory.sql
    │   │               ├── paimon_inventory.sql
    │   │               ├── route_test.sql
    │   │               ├── schema_evolve.sql
    │   │               └── transform_test.sql
    │   │           ├── docker
    │   │               ├── mysql
    │   │               │   ├── my.cnf
    │   │               │   └── setup.sql
    │   │               ├── peek-iceberg.sql
    │   │               └── peek-paimon.sql
    │   │           ├── expectedEvents
    │   │               └── mysqlToKafka
    │   │               │   ├── canal-json.txt
    │   │               │   ├── debezium-json-with-schema.txt
    │   │               │   └── debezium-json.txt
    │   │           └── log4j2-test.properties
    ├── flink-cdc-source-e2e-tests
    │   ├── pom.xml
    │   └── src
    │   │   └── test
    │   │       ├── java
    │   │           └── org
    │   │           │   └── apache
    │   │           │       └── flink
    │   │           │           └── cdc
    │   │           │               └── connectors
    │   │           │                   └── tests
    │   │           │                       ├── Db2E2eITCase.java
    │   │           │                       ├── MongoE2eITCase.java
    │   │           │                       ├── MySqlE2eITCase.java
    │   │           │                       ├── OceanBaseE2eITCase.java
    │   │           │                       ├── OracleE2eITCase.java
    │   │           │                       ├── PostgresE2eITCase.java
    │   │           │                       ├── SqlServerE2eITCase.java
    │   │           │                       ├── TiDBE2eITCase.java
    │   │           │                       ├── VitessE2eITCase.java
    │   │           │                       └── utils
    │   │           │                           ├── FlinkContainerTestEnvironment.java
    │   │           │                           └── SQLJobSubmission.java
    │   │       └── resources
    │   │           ├── container-license-acceptance.txt
    │   │           ├── ddl
    │   │               ├── mongo_inventory.js
    │   │               ├── mysql_inventory.sql
    │   │               ├── oceanbase_inventory.sql
    │   │               ├── oracle_inventory.sql
    │   │               ├── postgres_inventory.sql
    │   │               ├── sqlserver_inventory.sql
    │   │               ├── tidb_inventory.sql
    │   │               └── vitess_inventory.sql
    │   │           ├── docker
    │   │               ├── db2
    │   │               │   ├── Dockerfile
    │   │               │   ├── asncdc.c
    │   │               │   ├── asncdc_UDF.sql
    │   │               │   ├── asncdcaddremove.sql
    │   │               │   ├── asncdctables.sql
    │   │               │   ├── cdcsetup.sh
    │   │               │   ├── column_type_test.sql
    │   │               │   ├── customers.sql
    │   │               │   ├── dbsetup.sh
    │   │               │   ├── inventory.sql
    │   │               │   └── startup-agent.sql
    │   │               ├── mongodb
    │   │               │   ├── random.key
    │   │               │   └── setup.js
    │   │               ├── mysql
    │   │               │   ├── my.cnf
    │   │               │   └── setup.sql
    │   │               └── tidb
    │   │               │   ├── pd.toml
    │   │               │   ├── tidb.toml
    │   │               │   └── tikv.toml
    │   │           └── log4j2-test.properties
    └── pom.xml
├── flink-cdc-pipeline-model
    ├── pom.xml
    └── src
    │   ├── main
    │       └── java
    │       │   └── org
    │       │       └── apache
    │       │           └── flink
    │       │               └── cdc
    │       │                   └── runtime
    │       │                       └── model
    │       │                           ├── ModelOptions.java
    │       │                           ├── OpenAIChatModel.java
    │       │                           └── OpenAIEmbeddingModel.java
    │   └── test
    │       └── java
    │           └── org
    │               └── apache
    │                   └── flink
    │                       └── cdc
    │                           └── runtime
    │                               └── model
    │                                   ├── TestOpenAIChatModel.java
    │                                   └── TestOpenAIEmbeddingModel.java
├── flink-cdc-pipeline-udf-examples
    ├── pom.xml
    └── src
    │   └── main
    │       ├── java
    │           └── org
    │           │   └── apache
    │           │       └── flink
    │           │           ├── cdc
    │           │               └── udf
    │           │               │   └── examples
    │           │               │       └── java
    │           │               │           ├── AddOneFunctionClass.java
    │           │               │           ├── FormatFunctionClass.java
    │           │               │           ├── LifecycleFunctionClass.java
    │           │               │           ├── TypeHintFunctionClass.java
    │           │               │           ├── TypeOfFunctionClass.java
    │           │               │           └── precision
    │           │               │               ├── BinaryTypeReturningClass.java
    │           │               │               ├── CharTypeReturningClass.java
    │           │               │               ├── DecimalTypeNonNullReturningClass.java
    │           │               │               ├── DecimalTypeReturningClass.java
    │           │               │               ├── LocalZonedTimestampTypeReturningClass.java
    │           │               │               ├── TimestampTypeReturningClass.java
    │           │               │               ├── VarBinaryTypeReturningClass.java
    │           │               │               └── VarCharTypeReturningClass.java
    │           │           └── udf
    │           │               └── examples
    │           │                   └── java
    │           │                       ├── AddOneFunctionClass.java
    │           │                       ├── FormatFunctionClass.java
    │           │                       └── TypeOfFunctionClass.java
    │       └── scala
    │           └── org
    │               └── apache
    │                   └── flink
    │                       ├── cdc
    │                           └── udf
    │                           │   └── examples
    │                           │       └── scala
    │                           │           ├── AddOneFunctionClass.scala
    │                           │           ├── FormatFunctionClass.scala
    │                           │           ├── LifecycleFunctionClass.scala
    │                           │           ├── TypeHintFunctionClass.scala
    │                           │           ├── TypeOfFunctionClass.scala
    │                           │           └── precision
    │                           │               ├── BinaryTypeReturningClass.scala
    │                           │               ├── CharTypeReturningClass.scala
    │                           │               ├── DecimalTypeNonNullReturningClass.scala
    │                           │               ├── DecimalTypeReturningClass.scala
    │                           │               ├── LocalZonedTimestampTypeReturningClass.scala
    │                           │               ├── TimestampTypeReturningClass.scala
    │                           │               ├── VarBinaryTypeReturningClass.scala
    │                           │               └── VarCharTypeReturningClass.scala
    │                       └── udf
    │                           └── examples
    │                               └── scala
    │                                   ├── AddOneFunctionClass.scala
    │                                   ├── FormatFunctionClass.scala
    │                                   └── TypeOfFunctionClass.scala
├── flink-cdc-runtime
    ├── pom.xml
    └── src
    │   ├── main
    │       └── java
    │       │   └── org
    │       │       └── apache
    │       │           └── flink
    │       │               └── cdc
    │       │                   └── runtime
    │       │                       ├── functions
    │       │                           ├── BuiltInScalarFunction.java
    │       │                           ├── BuiltInTimestampFunction.java
    │       │                           └── SystemFunctionUtils.java
    │       │                       ├── operators
    │       │                           ├── schema
    │       │                           │   ├── common
    │       │                           │   │   ├── CoordinationResponseUtils.java
    │       │                           │   │   ├── CoordinatorExecutorThreadFactory.java
    │       │                           │   │   ├── SchemaDerivator.java
    │       │                           │   │   ├── SchemaManager.java
    │       │                           │   │   ├── SchemaRegistry.java
    │       │                           │   │   ├── TableIdRouter.java
    │       │                           │   │   ├── event
    │       │                           │   │   │   ├── FlushSuccessEvent.java
    │       │                           │   │   │   ├── GetEvolvedSchemaRequest.java
    │       │                           │   │   │   ├── GetEvolvedSchemaResponse.java
    │       │                           │   │   │   ├── GetOriginalSchemaRequest.java
    │       │                           │   │   │   ├── GetOriginalSchemaResponse.java
    │       │                           │   │   │   └── SinkWriterRegisterEvent.java
    │       │                           │   │   └── metrics
    │       │                           │   │   │   └── SchemaOperatorMetrics.java
    │       │                           │   ├── distributed
    │       │                           │   │   ├── SchemaCoordinator.java
    │       │                           │   │   ├── SchemaCoordinatorProvider.java
    │       │                           │   │   ├── SchemaOperator.java
    │       │                           │   │   ├── SchemaOperatorFactory.java
    │       │                           │   │   └── event
    │       │                           │   │   │   ├── SchemaChangeRequest.java
    │       │                           │   │   │   └── SchemaChangeResponse.java
    │       │                           │   └── regular
    │       │                           │   │   ├── BatchSchemaOperator.java
    │       │                           │   │   ├── SchemaCoordinator.java
    │       │                           │   │   ├── SchemaCoordinatorProvider.java
    │       │                           │   │   ├── SchemaOperator.java
    │       │                           │   │   ├── SchemaOperatorFactory.java
    │       │                           │   │   └── event
    │       │                           │   │       ├── SchemaChangeRequest.java
    │       │                           │   │       └── SchemaChangeResponse.java
    │       │                           ├── sink
    │       │                           │   ├── BatchDataSinkFunctionOperator.java
    │       │                           │   ├── BatchDataSinkWriterOperator.java
    │       │                           │   ├── DataSinkFunctionOperator.java
    │       │                           │   ├── DataSinkWriterOperator.java
    │       │                           │   ├── DataSinkWriterOperatorFactory.java
    │       │                           │   ├── SchemaEvolutionClient.java
    │       │                           │   └── exception
    │       │                           │   │   └── SinkWrapperException.java
    │       │                           └── transform
    │       │                           │   ├── PostTransformChangeInfo.java
    │       │                           │   ├── PostTransformOperator.java
    │       │                           │   ├── PostTransformOperatorBuilder.java
    │       │                           │   ├── PostTransformer.java
    │       │                           │   ├── PreTransformChangeInfo.java
    │       │                           │   ├── PreTransformOperator.java
    │       │                           │   ├── PreTransformOperatorBuilder.java
    │       │                           │   ├── PreTransformProcessor.java
    │       │                           │   ├── PreTransformer.java
    │       │                           │   ├── ProjectionColumn.java
    │       │                           │   ├── ProjectionColumnProcessor.java
    │       │                           │   ├── SchemaMetadataTransform.java
    │       │                           │   ├── TransformContext.java
    │       │                           │   ├── TransformExpressionCompiler.java
    │       │                           │   ├── TransformExpressionKey.java
    │       │                           │   ├── TransformFilter.java
    │       │                           │   ├── TransformFilterProcessor.java
    │       │                           │   ├── TransformProjection.java
    │       │                           │   ├── TransformProjectionProcessor.java
    │       │                           │   ├── TransformRule.java
    │       │                           │   ├── UserDefinedFunctionDescriptor.java
    │       │                           │   ├── converter
    │       │                           │       ├── PostTransformConverter.java
    │       │                           │       ├── PostTransformConverters.java
    │       │                           │       └── SoftDeleteConverter.java
    │       │                           │   └── exceptions
    │       │                           │       └── TransformException.java
    │       │                       ├── parser
    │       │                           ├── JaninoCompiler.java
    │       │                           ├── TransformParser.java
    │       │                           └── metadata
    │       │                           │   ├── MetadataColumns.java
    │       │                           │   ├── TransformNumericExceptFirstOperandChecker.java
    │       │                           │   ├── TransformSchema.java
    │       │                           │   ├── TransformSchemaFactory.java
    │       │                           │   ├── TransformSqlOperatorTable.java
    │       │                           │   ├── TransformSqlReturnTypes.java
    │       │                           │   └── TransformTable.java
    │       │                       ├── partitioning
    │       │                           ├── BatchRegularPrePartitionOperator.java
    │       │                           ├── DistributedPrePartitionOperator.java
    │       │                           ├── EventPartitioner.java
    │       │                           ├── PartitioningEvent.java
    │       │                           ├── PartitioningEventKeySelector.java
    │       │                           ├── PostPartitionProcessor.java
    │       │                           └── RegularPrePartitionOperator.java
    │       │                       ├── serializer
    │       │                           ├── BooleanSerializer.java
    │       │                           ├── BytePrimitiveArraySerializer.java
    │       │                           ├── ByteSerializer.java
    │       │                           ├── DoubleSerializer.java
    │       │                           ├── EnumSerializer.java
    │       │                           ├── FloatSerializer.java
    │       │                           ├── IntSerializer.java
    │       │                           ├── InternalSerializers.java
    │       │                           ├── LinkedListSerializer.java
    │       │                           ├── ListSerializer.java
    │       │                           ├── LongSerializer.java
    │       │                           ├── MapSerializer.java
    │       │                           ├── NestedSerializersSnapshotDelegate.java
    │       │                           ├── NullableSerializerWrapper.java
    │       │                           ├── ShortSerializer.java
    │       │                           ├── StringSerializer.java
    │       │                           ├── TableIdSerializer.java
    │       │                           ├── TypeSerializerSingleton.java
    │       │                           ├── data
    │       │                           │   ├── ArrayDataSerializer.java
    │       │                           │   ├── DecimalDataSerializer.java
    │       │                           │   ├── LocalZonedTimestampDataSerializer.java
    │       │                           │   ├── MapDataSerializer.java
    │       │                           │   ├── RecordDataSerializer.java
    │       │                           │   ├── StringDataSerializer.java
    │       │                           │   ├── TimestampDataSerializer.java
    │       │                           │   ├── ZonedTimestampDataSerializer.java
    │       │                           │   ├── binary
    │       │                           │   │   ├── BinaryRecordDataDataUtil.java
    │       │                           │   │   └── BinaryRecordDataSerializer.java
    │       │                           │   ├── util
    │       │                           │   │   └── MapDataUtil.java
    │       │                           │   └── writer
    │       │                           │   │   ├── AbstractBinaryWriter.java
    │       │                           │   │   ├── BinaryArrayWriter.java
    │       │                           │   │   ├── BinaryRecordDataWriter.java
    │       │                           │   │   └── BinaryWriter.java
    │       │                           ├── event
    │       │                           │   ├── AddColumnEventSerializer.java
    │       │                           │   ├── AlterColumnTypeEventSerializer.java
    │       │                           │   ├── CreateTableEventSerializer.java
    │       │                           │   ├── DataChangeEventSerializer.java
    │       │                           │   ├── DropColumnEventSerializer.java
    │       │                           │   ├── DropTableEventSerializer.java
    │       │                           │   ├── EventSerializer.java
    │       │                           │   ├── PartitioningEventSerializer.java
    │       │                           │   ├── RenameColumnEventSerializer.java
    │       │                           │   ├── SchemaChangeEventSerializer.java
    │       │                           │   └── TruncateTableEventSerializer.java
    │       │                           └── schema
    │       │                           │   ├── ColumnSerializer.java
    │       │                           │   ├── ColumnWithPositionSerializer.java
    │       │                           │   ├── DataFieldSerializer.java
    │       │                           │   ├── DataTypeSerializer.java
    │       │                           │   ├── MetadataColumnSerializer.java
    │       │                           │   ├── PhysicalColumnSerializer.java
    │       │                           │   ├── RowTypeSerializer.java
    │       │                           │   └── SchemaSerializer.java
    │       │                       └── typeutils
    │       │                           ├── BinaryRecordDataExtractor.java
    │       │                           ├── BinaryRecordDataGenerator.java
    │       │                           ├── DataTypeConverter.java
    │       │                           ├── EventTypeInfo.java
    │       │                           └── PartitioningEventTypeInfo.java
    │   └── test
    │       ├── java
    │           └── org
    │           │   └── apache
    │           │       └── flink
    │           │           └── cdc
    │           │               └── runtime
    │           │                   ├── operators
    │           │                       ├── schema
    │           │                       │   ├── common
    │           │                       │   │   ├── SchemaDerivatorTest.java
    │           │                       │   │   ├── SchemaManagerTest.java
    │           │                       │   │   ├── SchemaTestBase.java
    │           │                       │   │   └── TableIdRouterTest.java
    │           │                       │   ├── distributed
    │           │                       │   │   └── SchemaEvolveTest.java
    │           │                       │   └── regular
    │           │                       │   │   ├── SchemaEvolveTest.java
    │           │                       │   │   └── SchemaOperatorTest.java
    │           │                       ├── sink
    │           │                       │   ├── DataSinkOperatorAdapter.java
    │           │                       │   └── DataSinkOperatorWithSchemaEvolveTest.java
    │           │                       └── transform
    │           │                       │   ├── PostTransformOperatorTest.java
    │           │                       │   ├── PreTransformOperatorTest.java
    │           │                       │   ├── TransformOperatorWithSchemaEvolveTest.java
    │           │                       │   ├── UnifiedTransformOperatorTest.java
    │           │                       │   └── UserDefinedFunctionDescriptorTest.java
    │           │                   ├── parser
    │           │                       ├── JaninoCompilerTest.java
    │           │                       └── TransformParserTest.java
    │           │                   ├── partitioning
    │           │                       └── PrePartitionOperatorTest.java
    │           │                   ├── serializer
    │           │                       ├── BooleanSerializerTest.java
    │           │                       ├── BytePrimitiveArraySerializerTest.java
    │           │                       ├── ByteSerializerTest.java
    │           │                       ├── DoubleSerializerTest.java
    │           │                       ├── EnumSerializerTest.java
    │           │                       ├── FloatSerializerTest.java
    │           │                       ├── IntSerializerTest.java
    │           │                       ├── LinkedListSerializerTest.java
    │           │                       ├── ListSerializerTest.java
    │           │                       ├── LongSerializerTest.java
    │           │                       ├── MapSerializerTest.java
    │           │                       ├── NullableSerializerWrapperTest.java
    │           │                       ├── SerializerTestBase.java
    │           │                       ├── ShortSerializerTest.java
    │           │                       ├── StringSerializerTest.java
    │           │                       ├── TableIdSerializerTest.java
    │           │                       ├── data
    │           │                       │   ├── ArrayDataSerializerTest.java
    │           │                       │   ├── DecimalDataSerializerTest.java
    │           │                       │   ├── LocalZonedTimestampDataSerializerTest.java
    │           │                       │   ├── MapDataSerializerTest.java
    │           │                       │   ├── RecordDataSerializerTest.java
    │           │                       │   ├── StringDataSerializerTest.java
    │           │                       │   ├── TimestampDataSerializerTest.java
    │           │                       │   ├── ZonedTimestampDataSerializerTest.java
    │           │                       │   ├── binary
    │           │                       │   │   └── BinarySegmentUtilsTest.java
    │           │                       │   ├── util
    │           │                       │   │   └── DataFormatTestUtil.java
    │           │                       │   └── writer
    │           │                       │   │   └── BinaryArrayWriterTest.java
    │           │                       ├── event
    │           │                       │   ├── AddColumnEventSerializerTest.java
    │           │                       │   ├── AlterColumnTypeEventSerializerTest.java
    │           │                       │   ├── CreateTableEventSerializerTest.java
    │           │                       │   ├── DataChangeEventSerializerTest.java
    │           │                       │   ├── DropColumnEventSerializerTest.java
    │           │                       │   ├── DropTableEventSerializerTest.java
    │           │                       │   ├── EventSerializerTest.java
    │           │                       │   ├── PartitioningEventSerializerTest.java
    │           │                       │   ├── RenameColumnEventSerializerTest.java
    │           │                       │   ├── SchemaChangeEventSerializerTest.java
    │           │                       │   └── TruncateTableEventSerializerTest.java
    │           │                       └── schema
    │           │                       │   ├── ColumnSerializerTest.java
    │           │                       │   ├── ColumnWithPositionSerializerTest.java
    │           │                       │   ├── DataFieldSerializerTest.java
    │           │                       │   ├── DataTypeSerializerTest.java
    │           │                       │   ├── MetadataColumnSerializerTest.java
    │           │                       │   ├── PhysicalColumnSerializerTest.java
    │           │                       │   ├── RowTypeSerializerTest.java
    │           │                       │   └── SchemaSerializerTest.java
    │           │                   ├── testutils
    │           │                       ├── operators
    │           │                       │   ├── DistributedEventOperatorTestHarness.java
    │           │                       │   ├── MockedOperatorCoordinatorContext.java
    │           │                       │   └── RegularEventOperatorTestHarness.java
    │           │                       └── schema
    │           │                       │   ├── CollectingMetadataApplier.java
    │           │                       │   └── TestingSchemaRegistryGateway.java
    │           │                   └── typeutils
    │           │                       ├── BinaryRecordDataExtractorTest.java
    │           │                       └── BinaryRecordDataGeneratorTest.java
    │       └── resources
    │           └── log4j2-test.properties
├── pom.xml
└── tools
    ├── cdcup
        ├── .gitignore
        ├── Dockerfile
        ├── README.md
        ├── cdcup.sh
        └── src
        │   ├── app.rb
        │   ├── download_libs.rb
        │   ├── sink
        │       ├── doris.rb
        │       ├── kafka.rb
        │       ├── paimon.rb
        │       ├── star_rocks.rb
        │       └── values_sink.rb
        │   └── source
        │       ├── my_sql.rb
        │       └── values_source.rb
    ├── ci
        └── license_check.rb
    ├── maven
        ├── checkstyle.xml
        └── suppressions.xml
    └── releasing
        ├── create_release_branch.sh
        ├── create_source_release.sh
        ├── deploy_staging_jars.sh
        └── update_branch_version.sh


/.dlc.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "ignorePatterns": [
 3 |     {
 4 |       "pattern": "^http://localhost"
 5 |     },
 6 |     {
 7 |       "pattern": "^#"
 8 |     },
 9 |     {
10 |       "pattern": "^{"
11 |     },
12 |     {
13 |       "pattern": "^https://repo1.maven.org/maven2/org/apache/flink.*"
14 |     },
15 |     {
16 |       "pattern": "^https://mvnrepository.com"
17 |     },
18 |     {
19 |       "pattern": "^https://img.shields.io"
20 |     },
21 |     {
22 |       "pattern": "^https://twitter.com*"
23 |     }
24 |   ],
25 |   "timeout": "30s",
26 |   "retryOn429": true,
27 |   "retryCount": 10,
28 |   "fallbackRetryDelay": "1000s",
29 |   "aliveStatusCodes": [
30 |     0,
31 |     200,
32 |     401,
33 |     403
34 |   ]
35 | }
36 | 


--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | #
 8 | #    http://www.apache.org/licenses/LICENSE-2.0
 9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | blank_issues_enabled: false
17 | 
18 | 


--------------------------------------------------------------------------------
/.github/workflows/approve_label_trigger.yml:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one
 2 | # or more contributor license agreements.  See the NOTICE file
 3 | # distributed with this work for additional information
 4 | # regarding copyright ownership.  The ASF licenses this file
 5 | # to you under the Apache License, Version 2.0 (the
 6 | # "License"); you may not use this file except in compliance
 7 | # with the License.  You may obtain a copy of the License at
 8 | #
 9 | #   http://www.apache.org/licenses/LICENSE-2.0
10 | #
11 | # Unless required by applicable law or agreed to in writing,
12 | # software distributed under the License is distributed on an
13 | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14 | # KIND, either express or implied.  See the License for the
15 | # specific language governing permissions and limitations
16 | # under the License.
17 | #
18 | 
19 | name: Label-when-reviewed
20 | on: pull_request_review
21 | jobs:
22 | 
23 |   label-when-reviewed:
24 |     name: "Label PRs when reviewed"
25 |     runs-on: ubuntu-latest
26 |     steps:
27 |       - name: "Do nothing. Only trigger corresponding workflow_run event"
28 |         run: echo


--------------------------------------------------------------------------------
/.github/workflows/utils.sh:
--------------------------------------------------------------------------------
 1 | #!/usr/bin/env bash
 2 | ################################################################################
 3 | #  Licensed to the Apache Software Foundation (ASF) under one
 4 | #  or more contributor license agreements.  See the NOTICE file
 5 | #  distributed with this work for additional information
 6 | #  regarding copyright ownership.  The ASF licenses this file
 7 | #  to you under the Apache License, Version 2.0 (the
 8 | #  "License"); you may not use this file except in compliance
 9 | #  with the License.  You may obtain a copy of the License at
10 | #
11 | #      http://www.apache.org/licenses/LICENSE-2.0
12 | #
13 | #  Unless required by applicable law or agreed to in writing, software
14 | #  distributed under the License is distributed on an "AS IS" BASIS,
15 | #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 | #  See the License for the specific language governing permissions and
17 | # limitations under the License.
18 | ################################################################################
19 | 
20 | function random_timezone() {
21 |     local rnd=$(expr $RANDOM % 25)
22 |     local hh=$(expr $rnd / 2)
23 |     local mm=$(expr $rnd % 2 \* 3)"0"
24 |     local sgn=$(expr $RANDOM % 2)
25 |     if [ $sgn -eq 0 ]
26 |     then
27 |         echo "GMT+$hh:$mm"
28 |     else
29 |         echo "GMT-$hh:$mm"
30 |     fi
31 | }


--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
 1 | .cache
 2 | scalastyle-output.xml
 3 | .classpath
 4 | .idea/*
 5 | !.idea/vcs.xml
 6 | .metadata
 7 | .settings
 8 | .project
 9 | .version.properties
10 | filter.properties
11 | logs.zip
12 | target
13 | tmp
14 | *.class
15 | *.iml
16 | *.swp
17 | *.jar
18 | *.zip
19 | *.log
20 | *.pyc
21 | .DS_Store
22 | build-targetatlassian-ide-plugin.xml
23 | *.ipr
24 | *.iws
25 | docs/_build
26 | **/.flattened-pom.xml
27 | **/dependency-reduced-pom.xml
28 | 


--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
 1 | [submodule "docs/themes/book"]
 2 | 	path = docs/themes/book
 3 | 	url = https://github.com/alex-shpak/hugo-book
 4 | [submodule ".github/actions/get-workflow-origin"]
 5 | 	path = .github/actions/get-workflow-origin
 6 | 	url = https://github.com/potiuk/get-workflow-origin
 7 | [submodule ".github/actions/label-when-approved-action"]
 8 | 	path = .github/actions/label-when-approved-action
 9 | 	url = https://github.com/TobKed/label-when-approved-action
10 | 


--------------------------------------------------------------------------------
/.idea/vcs.xml:
--------------------------------------------------------------------------------
 1 | <?xml version="1.0" encoding="UTF-8"?>
 2 | <project version="4">
 3 |   <component name="IssueNavigationConfiguration">
 4 |     <option name="links">
 5 |       <list>
 6 |         <IssueNavigationLink>
 7 |           <option name="issueRegexp" value="FLINK\-\d+" />
 8 |           <option name="linkRegexp" value="https://issues.apache.org/jira/browse/$0" />
 9 |         </IssueNavigationLink>
10 |         <IssueNavigationLink>
11 |           <option name="issueRegexp" value="FLIP\-\d+" />
12 |           <option name="linkRegexp" value="https://cwiki.apache.org/confluence/display/FLINK/$0" />
13 |         </IssueNavigationLink>
14 |         <IssueNavigationLink>
15 |           <option name="issueRegexp" value="#(\d+)" />
16 |           <option name="linkRegexp" value="https://github.com/apache/flink-cdc/pull/$1" />
17 |         </IssueNavigationLink>
18 |       </list>
19 |     </option>
20 |   </component>
21 |   <component name="VcsDirectoryMappings">
22 |     <mapping directory="$PROJECT_DIR
quot; vcs="Git" />
23 |     <mapping directory="$PROJECT_DIR$/docs/themes/book" vcs="Git" />
24 |   </component>
25 | </project>
26 | 


--------------------------------------------------------------------------------
/docs/.gitignore:
--------------------------------------------------------------------------------
 1 | .bundle/
 2 | .jekyll-metadata
 3 | .jekyll-cache/
 4 | .rubydeps/
 5 | ruby2/.bundle/
 6 | ruby2/.rubydeps/
 7 | public/
 8 | resources/
 9 | .hugo_build.lock
10 | .DS_Store
11 | 


--------------------------------------------------------------------------------
/docs/assets/_fonts.scss:
--------------------------------------------------------------------------------
 1 | // Licensed to the Apache Software Foundation (ASF) under one
 2 | // or more contributor license agreements.  See the NOTICE file
 3 | // distributed with this work for additional information
 4 | // regarding copyright ownership.  The ASF licenses this file
 5 | // to you under the Apache License, Version 2.0 (the
 6 | // "License"); you may not use this file except in compliance
 7 | // with the License.  You may obtain a copy of the License at
 8 | // 
 9 | //   http://www.apache.org/licenses/LICENSE-2.0
10 | // 
11 | // Unless required by applicable law or agreed to in writing,
12 | // software distributed under the License is distributed on an
13 | // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14 | // KIND, either express or implied.  See the License for the
15 | // specific language governing permissions and limitations
16 | // under the License.
17 | 
18 | body {
19 |     font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
20 |     font-size: 14px;
21 | }
22 | 
23 | code {
24 |     font-family: "Menlo", "Lucida Console", monospace;
25 | }


--------------------------------------------------------------------------------
/docs/content.zh/docs/connectors/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: 连接器
 3 | bold: true
 4 | bookCollapseSection: true
 5 | weight: 3
 6 | ---
 7 | <!--
 8 | Licensed to the Apache Software Foundation (ASF) under one
 9 | or more contributor license agreements.  See the NOTICE file
10 | distributed with this work for additional information
11 | regarding copyright ownership.  The ASF licenses this file
12 | to you under the Apache License, Version 2.0 (the
13 | "License"); you may not use this file except in compliance
14 | with the License.  You may obtain a copy of the License at
15 | 
16 |   http://www.apache.org/licenses/LICENSE-2.0
17 | 
18 | Unless required by applicable law or agreed to in writing,
19 | software distributed under the License is distributed on an
20 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 | KIND, either express or implied.  See the License for the
22 | specific language governing permissions and limitations
23 | under the License.
24 | -->
25 | 


--------------------------------------------------------------------------------
/docs/content.zh/docs/connectors/flink-sources/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: Flink Source 连接器
 3 | bookCollapseSection: true
 4 | weight: 2
 5 | ---
 6 | <!--
 7 | Licensed to the Apache Software Foundation (ASF) under one
 8 | or more contributor license agreements.  See the NOTICE file
 9 | distributed with this work for additional information
10 | regarding copyright ownership.  The ASF licenses this file
11 | to you under the Apache License, Version 2.0 (the
12 | "License"); you may not use this file except in compliance
13 | with the License.  You may obtain a copy of the License at
14 | 
15 |   http://www.apache.org/licenses/LICENSE-2.0
16 | 
17 | Unless required by applicable law or agreed to in writing,
18 | software distributed under the License is distributed on an
19 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20 | KIND, either express or implied.  See the License for the
21 | specific language governing permissions and limitations
22 | under the License.
23 | -->
24 | 


--------------------------------------------------------------------------------
/docs/content.zh/docs/connectors/flink-sources/tutorials/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: "Flink CDC Sources 教程"
 3 | bookCollapseSection: true
 4 | weight: 999
 5 | ---
 6 | <!--
 7 | Licensed to the Apache Software Foundation (ASF) under one
 8 | or more contributor license agreements.  See the NOTICE file
 9 | distributed with this work for additional information
10 | regarding copyright ownership.  The ASF licenses this file
11 | to you under the Apache License, Version 2.0 (the
12 | "License"); you may not use this file except in compliance
13 | with the License.  You may obtain a copy of the License at
14 | 
15 |   http://www.apache.org/licenses/LICENSE-2.0
16 | 
17 | Unless required by applicable law or agreed to in writing,
18 | software distributed under the License is distributed on an
19 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20 | KIND, either express or implied.  See the License for the
21 | specific language governing permissions and limitations
22 | under the License.
23 | -->
24 | 


--------------------------------------------------------------------------------
/docs/content.zh/docs/connectors/pipeline-connectors/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: Pipeline 连接器
 3 | bookCollapseSection: true
 4 | weight: 1
 5 | ---
 6 | <!--
 7 | Licensed to the Apache Software Foundation (ASF) under one
 8 | or more contributor license agreements.  See the NOTICE file
 9 | distributed with this work for additional information
10 | regarding copyright ownership.  The ASF licenses this file
11 | to you under the Apache License, Version 2.0 (the
12 | "License"); you may not use this file except in compliance
13 | with the License.  You may obtain a copy of the License at
14 | 
15 |   http://www.apache.org/licenses/LICENSE-2.0
16 | 
17 | Unless required by applicable law or agreed to in writing,
18 | software distributed under the License is distributed on an
19 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20 | KIND, either express or implied.  See the License for the
21 | specific language governing permissions and limitations
22 | under the License.
23 | -->
24 | 


--------------------------------------------------------------------------------
/docs/content.zh/docs/core-concept/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: "核心概念"
 3 | bold: true
 4 | bookCollapseSection: true
 5 | weight: 2
 6 | ---
 7 | <!--
 8 | Licensed to the Apache Software Foundation (ASF) under one
 9 | or more contributor license agreements.  See the NOTICE file
10 | distributed with this work for additional information
11 | regarding copyright ownership.  The ASF licenses this file
12 | to you under the Apache License, Version 2.0 (the
13 | "License"); you may not use this file except in compliance
14 | with the License.  You may obtain a copy of the License at
15 | 
16 |   http://www.apache.org/licenses/LICENSE-2.0
17 | 
18 | Unless required by applicable law or agreed to in writing,
19 | software distributed under the License is distributed on an
20 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 | KIND, either express or implied.  See the License for the
22 | specific language governing permissions and limitations
23 | under the License.
24 | -->
25 | 


--------------------------------------------------------------------------------
/docs/content.zh/docs/deployment/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: 部署模式
 3 | bold: true
 4 | bookCollapseSection: true
 5 | weight: 4
 6 | ---
 7 | <!--
 8 | Licensed to the Apache Software Foundation (ASF) under one
 9 | or more contributor license agreements.  See the NOTICE file
10 | distributed with this work for additional information
11 | regarding copyright ownership.  The ASF licenses this file
12 | to you under the Apache License, Version 2.0 (the
13 | "License"); you may not use this file except in compliance
14 | with the License.  You may obtain a copy of the License at
15 | 
16 |   http://www.apache.org/licenses/LICENSE-2.0
17 | 
18 | Unless required by applicable law or agreed to in writing,
19 | software distributed under the License is distributed on an
20 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 | KIND, either express or implied.  See the License for the
22 | specific language governing permissions and limitations
23 | under the License.
24 | -->
25 | 


--------------------------------------------------------------------------------
/docs/content.zh/docs/developer-guide/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: 开发者指南
 3 | bold: true
 4 | bookCollapseSection: true
 5 | weight: 5
 6 | ---
 7 | <!--
 8 | Licensed to the Apache Software Foundation (ASF) under one
 9 | or more contributor license agreements.  See the NOTICE file
10 | distributed with this work for additional information
11 | regarding copyright ownership.  The ASF licenses this file
12 | to you under the Apache License, Version 2.0 (the
13 | "License"); you may not use this file except in compliance
14 | with the License.  You may obtain a copy of the License at
15 | 
16 |   http://www.apache.org/licenses/LICENSE-2.0
17 | 
18 | Unless required by applicable law or agreed to in writing,
19 | software distributed under the License is distributed on an
20 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 | KIND, either express or implied.  See the License for the
22 | specific language governing permissions and limitations
23 | under the License.
24 | -->
25 | 


--------------------------------------------------------------------------------
/docs/content.zh/docs/faq/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: "常见问题"
 3 | # bold: true
 4 | bookCollapseSection: true
 5 | weight: 6
 6 | ---
 7 | <!--
 8 | Licensed to the Apache Software Foundation (ASF) under one
 9 | or more contributor license agreements.  See the NOTICE file
10 | distributed with this work for additional information
11 | regarding copyright ownership.  The ASF licenses this file
12 | to you under the Apache License, Version 2.0 (the
13 | "License"); you may not use this file except in compliance
14 | with the License.  You may obtain a copy of the License at
15 | 
16 |   http://www.apache.org/licenses/LICENSE-2.0
17 | 
18 | Unless required by applicable law or agreed to in writing,
19 | software distributed under the License is distributed on an
20 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 | KIND, either express or implied.  See the License for the
22 | specific language governing permissions and limitations
23 | under the License.
24 | -->
25 | 


--------------------------------------------------------------------------------
/docs/content.zh/docs/get-started/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: "入门指南"
 3 | bold: true
 4 | bookCollapseSection: true
 5 | weight: 1
 6 | ---
 7 | <!--
 8 | Licensed to the Apache Software Foundation (ASF) under one
 9 | or more contributor license agreements.  See the NOTICE file
10 | distributed with this work for additional information
11 | regarding copyright ownership.  The ASF licenses this file
12 | to you under the Apache License, Version 2.0 (the
13 | "License"); you may not use this file except in compliance
14 | with the License.  You may obtain a copy of the License at
15 | 
16 |   http://www.apache.org/licenses/LICENSE-2.0
17 | 
18 | Unless required by applicable law or agreed to in writing,
19 | software distributed under the License is distributed on an
20 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 | KIND, either express or implied.  See the License for the
22 | specific language governing permissions and limitations
23 | under the License.
24 | -->
25 | 


--------------------------------------------------------------------------------
/docs/content.zh/docs/get-started/quickstart/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: "快速开始"
 3 | bookCollapseSection: true
 4 | weight: 2
 5 | ---
 6 | <!--
 7 | Licensed to the Apache Software Foundation (ASF) under one
 8 | or more contributor license agreements.  See the NOTICE file
 9 | distributed with this work for additional information
10 | regarding copyright ownership.  The ASF licenses this file
11 | to you under the Apache License, Version 2.0 (the
12 | "License"); you may not use this file except in compliance
13 | with the License.  You may obtain a copy of the License at
14 | 
15 |   http://www.apache.org/licenses/LICENSE-2.0
16 | 
17 | Unless required by applicable law or agreed to in writing,
18 | software distributed under the License is distributed on an
19 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20 | KIND, either express or implied.  See the License for the
21 | specific language governing permissions and limitations
22 | under the License.
23 | -->
24 | 


--------------------------------------------------------------------------------
/docs/content.zh/versions.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: Versions 
 3 | type: docs
 4 | bookToc: false
 5 | ---
 6 | <!--
 7 | Licensed to the Apache Software Foundation (ASF) under one
 8 | or more contributor license agreements.  See the NOTICE file
 9 | distributed with this work for additional information
10 | regarding copyright ownership.  The ASF licenses this file
11 | to you under the Apache License, Version 2.0 (the
12 | "License"); you may not use this file except in compliance
13 | with the License.  You may obtain a copy of the License at
14 | 
15 |   http://www.apache.org/licenses/LICENSE-2.0
16 | 
17 | Unless required by applicable law or agreed to in writing,
18 | software distributed under the License is distributed on an
19 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20 | KIND, either express or implied.  See the License for the
21 | specific language governing permissions and limitations
22 | under the License.
23 | -->
24 | 
25 | # Versions
26 | 
27 | An appendix of hosted documentation for all versions of Apache Flink CDC.
28 | 
29 | {{< all_versions >}}
30 | 


--------------------------------------------------------------------------------
/docs/content/docs/connectors/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: Connectors
 3 | bold: true
 4 | bookCollapseSection: true
 5 | weight: 3
 6 | ---
 7 | <!--
 8 | Licensed to the Apache Software Foundation (ASF) under one
 9 | or more contributor license agreements.  See the NOTICE file
10 | distributed with this work for additional information
11 | regarding copyright ownership.  The ASF licenses this file
12 | to you under the Apache License, Version 2.0 (the
13 | "License"); you may not use this file except in compliance
14 | with the License.  You may obtain a copy of the License at
15 | 
16 |   http://www.apache.org/licenses/LICENSE-2.0
17 | 
18 | Unless required by applicable law or agreed to in writing,
19 | software distributed under the License is distributed on an
20 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 | KIND, either express or implied.  See the License for the
22 | specific language governing permissions and limitations
23 | under the License.
24 | -->
25 | 


--------------------------------------------------------------------------------
/docs/content/docs/connectors/flink-sources/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: Flink Sources
 3 | bookCollapseSection: true
 4 | weight: 2
 5 | ---
 6 | <!--
 7 | Licensed to the Apache Software Foundation (ASF) under one
 8 | or more contributor license agreements.  See the NOTICE file
 9 | distributed with this work for additional information
10 | regarding copyright ownership.  The ASF licenses this file
11 | to you under the Apache License, Version 2.0 (the
12 | "License"); you may not use this file except in compliance
13 | with the License.  You may obtain a copy of the License at
14 | 
15 |   http://www.apache.org/licenses/LICENSE-2.0
16 | 
17 | Unless required by applicable law or agreed to in writing,
18 | software distributed under the License is distributed on an
19 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20 | KIND, either express or implied.  See the License for the
21 | specific language governing permissions and limitations
22 | under the License.
23 | -->
24 | 


--------------------------------------------------------------------------------
/docs/content/docs/connectors/flink-sources/tutorials/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: Tutorials
 3 | bookCollapseSection: true
 4 | weight: 999
 5 | ---
 6 | <!--
 7 | Licensed to the Apache Software Foundation (ASF) under one
 8 | or more contributor license agreements.  See the NOTICE file
 9 | distributed with this work for additional information
10 | regarding copyright ownership.  The ASF licenses this file
11 | to you under the Apache License, Version 2.0 (the
12 | "License"); you may not use this file except in compliance
13 | with the License.  You may obtain a copy of the License at
14 | 
15 |   http://www.apache.org/licenses/LICENSE-2.0
16 | 
17 | Unless required by applicable law or agreed to in writing,
18 | software distributed under the License is distributed on an
19 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20 | KIND, either express or implied.  See the License for the
21 | specific language governing permissions and limitations
22 | under the License.
23 | -->
24 | 


--------------------------------------------------------------------------------
/docs/content/docs/connectors/pipeline-connectors/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: Pipeline Connectors
 3 | bookCollapseSection: true
 4 | weight: 1
 5 | ---
 6 | <!--
 7 | Licensed to the Apache Software Foundation (ASF) under one
 8 | or more contributor license agreements.  See the NOTICE file
 9 | distributed with this work for additional information
10 | regarding copyright ownership.  The ASF licenses this file
11 | to you under the Apache License, Version 2.0 (the
12 | "License"); you may not use this file except in compliance
13 | with the License.  You may obtain a copy of the License at
14 | 
15 |   http://www.apache.org/licenses/LICENSE-2.0
16 | 
17 | Unless required by applicable law or agreed to in writing,
18 | software distributed under the License is distributed on an
19 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20 | KIND, either express or implied.  See the License for the
21 | specific language governing permissions and limitations
22 | under the License.
23 | -->
24 | 


--------------------------------------------------------------------------------
/docs/content/docs/core-concept/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: "Core Concept"
 3 | bold: true
 4 | bookCollapseSection: true
 5 | weight: 2
 6 | ---
 7 | <!--
 8 | Licensed to the Apache Software Foundation (ASF) under one
 9 | or more contributor license agreements.  See the NOTICE file
10 | distributed with this work for additional information
11 | regarding copyright ownership.  The ASF licenses this file
12 | to you under the Apache License, Version 2.0 (the
13 | "License"); you may not use this file except in compliance
14 | with the License.  You may obtain a copy of the License at
15 | 
16 |   http://www.apache.org/licenses/LICENSE-2.0
17 | 
18 | Unless required by applicable law or agreed to in writing,
19 | software distributed under the License is distributed on an
20 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 | KIND, either express or implied.  See the License for the
22 | specific language governing permissions and limitations
23 | under the License.
24 | -->
25 | 


--------------------------------------------------------------------------------
/docs/content/docs/deployment/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: Deployment
 3 | bold: true
 4 | bookCollapseSection: true
 5 | weight: 4
 6 | ---
 7 | <!--
 8 | Licensed to the Apache Software Foundation (ASF) under one
 9 | or more contributor license agreements.  See the NOTICE file
10 | distributed with this work for additional information
11 | regarding copyright ownership.  The ASF licenses this file
12 | to you under the Apache License, Version 2.0 (the
13 | "License"); you may not use this file except in compliance
14 | with the License.  You may obtain a copy of the License at
15 | 
16 |   http://www.apache.org/licenses/LICENSE-2.0
17 | 
18 | Unless required by applicable law or agreed to in writing,
19 | software distributed under the License is distributed on an
20 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 | KIND, either express or implied.  See the License for the
22 | specific language governing permissions and limitations
23 | under the License.
24 | -->
25 | 


--------------------------------------------------------------------------------
/docs/content/docs/developer-guide/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: Developer Guide
 3 | bold: true
 4 | bookCollapseSection: true
 5 | weight: 5
 6 | ---
 7 | <!--
 8 | Licensed to the Apache Software Foundation (ASF) under one
 9 | or more contributor license agreements.  See the NOTICE file
10 | distributed with this work for additional information
11 | regarding copyright ownership.  The ASF licenses this file
12 | to you under the Apache License, Version 2.0 (the
13 | "License"); you may not use this file except in compliance
14 | with the License.  You may obtain a copy of the License at
15 | 
16 |   http://www.apache.org/licenses/LICENSE-2.0
17 | 
18 | Unless required by applicable law or agreed to in writing,
19 | software distributed under the License is distributed on an
20 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 | KIND, either express or implied.  See the License for the
22 | specific language governing permissions and limitations
23 | under the License.
24 | -->
25 | 


--------------------------------------------------------------------------------
/docs/content/docs/faq/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: "FAQ"
 3 | # bold: true
 4 | bookCollapseSection: true
 5 | weight: 6
 6 | ---
 7 | <!--
 8 | Licensed to the Apache Software Foundation (ASF) under one
 9 | or more contributor license agreements.  See the NOTICE file
10 | distributed with this work for additional information
11 | regarding copyright ownership.  The ASF licenses this file
12 | to you under the Apache License, Version 2.0 (the
13 | "License"); you may not use this file except in compliance
14 | with the License.  You may obtain a copy of the License at
15 | 
16 |   http://www.apache.org/licenses/LICENSE-2.0
17 | 
18 | Unless required by applicable law or agreed to in writing,
19 | software distributed under the License is distributed on an
20 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 | KIND, either express or implied.  See the License for the
22 | specific language governing permissions and limitations
23 | under the License.
24 | -->
25 | 


--------------------------------------------------------------------------------
/docs/content/docs/get-started/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: "Get Started"
 3 | bold: true
 4 | bookCollapseSection: true
 5 | weight: 1
 6 | ---
 7 | <!--
 8 | Licensed to the Apache Software Foundation (ASF) under one
 9 | or more contributor license agreements.  See the NOTICE file
10 | distributed with this work for additional information
11 | regarding copyright ownership.  The ASF licenses this file
12 | to you under the Apache License, Version 2.0 (the
13 | "License"); you may not use this file except in compliance
14 | with the License.  You may obtain a copy of the License at
15 | 
16 |   http://www.apache.org/licenses/LICENSE-2.0
17 | 
18 | Unless required by applicable law or agreed to in writing,
19 | software distributed under the License is distributed on an
20 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 | KIND, either express or implied.  See the License for the
22 | specific language governing permissions and limitations
23 | under the License.
24 | -->
25 | 


--------------------------------------------------------------------------------
/docs/content/docs/get-started/quickstart/_index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: "Quickstart"
 3 | bookCollapseSection: true
 4 | weight: 2
 5 | ---
 6 | <!--
 7 | Licensed to the Apache Software Foundation (ASF) under one
 8 | or more contributor license agreements.  See the NOTICE file
 9 | distributed with this work for additional information
10 | regarding copyright ownership.  The ASF licenses this file
11 | to you under the Apache License, Version 2.0 (the
12 | "License"); you may not use this file except in compliance
13 | with the License.  You may obtain a copy of the License at
14 | 
15 |   http://www.apache.org/licenses/LICENSE-2.0
16 | 
17 | Unless required by applicable law or agreed to in writing,
18 | software distributed under the License is distributed on an
19 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20 | KIND, either express or implied.  See the License for the
21 | specific language governing permissions and limitations
22 | under the License.
23 | -->
24 | 


--------------------------------------------------------------------------------
/docs/content/versions.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | title: Versions 
 3 | type: docs
 4 | bookToc: false
 5 | ---
 6 | <!--
 7 | Licensed to the Apache Software Foundation (ASF) under one
 8 | or more contributor license agreements.  See the NOTICE file
 9 | distributed with this work for additional information
10 | regarding copyright ownership.  The ASF licenses this file
11 | to you under the Apache License, Version 2.0 (the
12 | "License"); you may not use this file except in compliance
13 | with the License.  You may obtain a copy of the License at
14 | 
15 |   http://www.apache.org/licenses/LICENSE-2.0
16 | 
17 | Unless required by applicable law or agreed to in writing,
18 | software distributed under the License is distributed on an
19 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
20 | KIND, either express or implied.  See the License for the
21 | specific language governing permissions and limitations
22 | under the License.
23 | -->
24 | 
25 | # Versions
26 | 
27 | An appendix of hosted documentation for all versions of Apache Flink CDC.
28 | 
29 | {{< all_versions >}}
30 | 


--------------------------------------------------------------------------------
/docs/layouts/partials/docs/footer.html:
--------------------------------------------------------------------------------
 1 | <!--
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | -->
19 | <!--
20 |     Partial that on the footer of every page.
21 | -->
22 | {{ if .IsPage }}
23 | {{ $folder := "content" }}
24 | {{ if eq "/zh" .Site.LanguagePrefix }}
25 | 	{{ $folder = "content.zh" }}
26 | {{ end }}
27 | <a href="{{ .Site.Params.Repo }}/edit/{{ .Site.Params.Branch }}/docs/{{ $folder }}/{{ .File.Path }}" style="color:black"><i class="fa fa-edit fa-fw"></i>Edit This Page</a>
28 | {{ end }}
29 | 


--------------------------------------------------------------------------------
/docs/layouts/partials/docs/inject/head.html:
--------------------------------------------------------------------------------
 1 | <!--
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | -->
19 | <!--
20 |     Misc other content that should run in the header
21 | -->
22 | <link rel="stylesheet" type="text/css" href="{{.Site.BaseURL}}/font-awesome/css/font-awesome.min.css">
23 | <script src="{{.Site.BaseURL}}/js/anchor.min.js"></script>
24 | <script src="{{.Site.BaseURL}}/js/flink.js"></script>
25 | 
26 | 


--------------------------------------------------------------------------------
/docs/layouts/partials/docs/inject/menu-before.html:
--------------------------------------------------------------------------------
 1 | <!--
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | -->
19 | <!--
20 |     Partial that renders at the top of the menu.
21 | -->
22 | <a id="logo" href="{{.Site.BaseURL}}{{.Site.LanguagePrefix}}">
23 |     <img width="70%" src="{{.Site.BaseURL}}/navbar-brand-logo.jpg">
24 | </a>
25 | <p style="text-align:right">v{{ $.Site.Params.Version }}</p>


--------------------------------------------------------------------------------
/docs/layouts/partials/docs/interpolate.html:
--------------------------------------------------------------------------------
 1 | <!--
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | -->
19 | <!--
20 |     Partial that interpolates $scala_version and $version into strings.
21 | -->
22 | {{ $str := replace . "$scala_version" site.Params.ScalaVersion }}
23 | {{ $str = replace $str "$version" site.Params.Version }} 
24 | {{ return $str }}


--------------------------------------------------------------------------------
/docs/layouts/partials/docs/simple-title.html:
--------------------------------------------------------------------------------
 1 | <!--
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | -->
19 | <!-- 
20 |   Partial to generate page name without sytling
21 |   from Title or File name. Accepts Page as context.
22 | -->
23 | {{ $title := "" }}
24 | 
25 | {{ if .Title }}
26 |   {{ $title = .Title }}
27 | {{ else if and .IsSection .File }}
28 |   {{ $title = path.Base .File.Dir | humanize | title }}
29 | {{ else if and .IsPage .File }}
30 |   {{ $title = .File.BaseFileName | humanize | title }}
31 | {{ end }}
32 | 
33 | {{ return $title }}


--------------------------------------------------------------------------------
/docs/layouts/partials/docs/toc.html:
--------------------------------------------------------------------------------
 1 | <!--
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | -->
19 | {{/* 
20 | 	Generates the pages table of contents. Unfortunately, hugo does not give us a lot of flexibility 
21 | 	around how the TOC is generated so we have to fall back to a regex to add the header.	
22 | */}}
23 | {{ .TableOfContents | replaceRE "<nav id=\"TableOfContents\">" "<nav id=\"TableOfContents\"><h3>On This Page <button class=\"toc\" onclick=\"collapseToc()\"><i class=\"fa fa-compress\" aria-hidden=\"true\"></i></button></h3>" | safeHTML }}
24 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/all_versions.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |     Generate a list of links to all previous
20 |     versions of the Flink docs.
21 | */}}
22 | <ul class="book-languages-list">
23 |     {{ range $docs := .Site.Params.PreviousDocs }}
24 |         <li>
25 |             <a href="{{ index $docs 1 }}">
26 |                 v{{ index $docs 0}}
27 |             </a>
28 |         </li>
29 |     {{ end }}
30 | </ul>


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/beta.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |     Adds a warning that the current feature is in BETA.
20 | */}}
21 | <blockquote class="book-hint warning">
22 |     This feature is currency marked as <b>BETA</b> and in an evolving state.
23 |     As such, there are <b>no guaruntees</b> made about feature stability
24 |     and breaking changes may occur in future Flink versions.
25 | </blockquote>


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/build_time.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |   Shortcode that only renders the build time of the site
20 |   */}}
21 | <div>
22 | Documentation built at {{ now.Format "Mon, 02 Jan 2006 15:04:05 -0700" }}
23 | </div>
24 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/center.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |     Shortcode for centering text
20 | 
21 |     Parmeters: markdown text
22 | */}}
23 | <div style="text-align: center;">
24 |     {{ .Inner | markdownify }}
25 | </div>


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/check.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 | http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 | Adds a check icon.
20 | */}}
21 | <i class="fa fa-solid fa-check" style="color:green"></i>
22 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/downloads.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 | http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |     Shortcode for linking to Flink's download page.
20 | 
21 |     This way the English and Chinese docs will always point to the correct page.
22 | 
23 | */}}
24 | {{ if eq "/zh" .Site.LanguagePrefix }}
25 |     {{ .Site.Params.ZhDownloadPage }}
26 | {{ else }}
27 |     {{ .Site.Params.DownloadPage }}
28 | {{ end }}
29 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/gh_link.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |     Shortcode for linking to a file in github. This shortcode
20 |     will automatically discover the repo and correct branch.
21 | 
22 |     Parmeters:
23 |         - file: The absolute path to the image file (required)
24 |         - name: The rendered link name (required)
25 | */}}
26 | <a href="{{ .Site.Params.Repo }}/blob/{{ .Site.Params.Branch }}/{{ .Get "file" }}">
27 |     {{ .Get "name" | markdownify }}
28 | </a>
29 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/github_repo.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |     Shortcode that interpolates the full github repo
20 | 
21 |     Parmeters: None
22 | */}}{{- $.Site.Params.GithubRepo -}}
23 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/img.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |   Shortcode for embedding an image.
20 |   This is more powerful than plain markdown
21 |   because we can configure the HTML image tag
22 |   properties.
23 | 
24 |   Parmeters: 
25 |       - src: The absolute path to the image file (required)
26 |       - alt: Image alt text (optional)
27 |       - width: Image width (optional)
28 | */}}
29 | <img 
30 |   src="{{.Site.BaseURL}}{{ .Get "src" }}"
31 |   alt="{{ .Get "alt" }}"
32 |   width="{{ .Get "width" }}"
33 |   style="display:block;margin-left:auto;margin-right:auto"
34 | >


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/include_reporter_config.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}
19 | {{/* 
20 |   Shortcode for embedding a reporter configuration while
21 |   stripping the key prefixes
22 |   for a concise listing of available parameters.
23 | */}}
24 | {{ $file := .Get 0 }}
25 | 
26 | {{ safeHTML (replaceRE "metrics\\.reporter\\.[&lt;&gt;>a-zA-Z]+?\\." "" (os.ReadFile $file)) }}


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/javadoc.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |     Shortcode for linking to Flink's JavaDoc
20 | 
21 |     Parameters:
22 |         - file: The relative path to the doc file (required)
23 |         - name: The rendered link name (required)
24 | */}}
25 | <a href="{{ .Site.Params.JavaDocs }}/{{ .Get "file" }}">
26 |     {{ .Get "name" | markdownify }}
27 | </a>
28 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/label.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |   Shortcode for embedding an image.
20 |   This is more powerful than plain markdown
21 |   because we can configure the HTML image tag
22 |   properties.
23 | 
24 |   Parmeters: 
25 |       - src: The absolute path to the image file (required)
26 |       - alt: Image alt text (optional)
27 |       - width: Image width (optional)
28 | */}}
29 | <span class="label">{{ .Get 0 }}</span>


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/query_state_warning.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}
19 | For streaming queries the required state to compute the query result might grow infinitely depending
20 | on the type of aggregation and the number of distinct grouping keys. Please provide an idle state
21 | retention time to prevent excessive state size.
22 | See <a href="{{.Site.BaseURL}}{{.Site.LanguagePrefix}}/docs/dev/table/concepts/overview/#idle-state-retention-time">Idle State Retention Time</a> for details.
23 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/query_state_warning_zh.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 | http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}
19 | 对于流式查询,计算查询结果所需的状态可能会无限增长,具体取决于关于聚合类型和不同分组键的数量。请配置空闲状态
20 | 维持时间以防止状态过大。详情可查看
21 | <a href="{{.Site.BaseURL}}{{.Site.LanguagePrefix}}/docs/dev/table/concepts/overview/#idle-state-retention-time">空闲状态维持时间</a>。
22 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/ref_static.html:
--------------------------------------------------------------------------------
 1 | 
 2 | {{/*
 3 | Licensed to the Apache Software Foundation (ASF) under one
 4 | or more contributor license agreements.  See the NOTICE file
 5 | distributed with this work for additional information
 6 | regarding copyright ownership.  The ASF licenses this file
 7 | to you under the Apache License, Version 2.0 (the
 8 | "License"); you may not use this file except in compliance
 9 | with the License.  You may obtain a copy of the License at
10 | 
11 |   http://www.apache.org/licenses/LICENSE-2.0
12 | 
13 | Unless required by applicable law or agreed to in writing,
14 | software distributed under the License is distributed on an
15 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 | KIND, either express or implied.  See the License for the
17 | specific language governing permissions and limitations
18 | under the License.
19 | */}}{{/*
20 |   Shortcode for embedding a link to a static resource.
21 | */}}
22 | {{ .Site.BaseURL }}/{{ .Get 0 }}
23 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/scala_version.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |     Shortcode for interpolating the scala version set in conf.toml
20 | 
21 |     Parmeters: None
22 | */}}{{- $.Site.Params.ScalaVersion -}}


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/stable.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |   Shortcode that only renders its contents if the site
20 |   is marked as stable.
21 | 
22 |   Parmeters: Markdown text
23 | */}}{{ if $.Site.Params.IsStable }}{{ .Inner | markdownify }}{{ end }}


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/tab.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |   Shortcode for a single tab. See tabs.
20 | */}}
21 | {{ if .Parent }}
22 |   {{ $name := .Get 0 }}
23 |   {{ $group := printf "tabs-%s" (.Parent.Get 0) }}
24 | 
25 |   {{ if not (.Parent.Scratch.Get $group) }}
26 |     {{ .Parent.Scratch.Set $group slice }}
27 |   {{ end }}
28 | 
29 |   {{ .Parent.Scratch.Add $group (dict "Name" $name "Content" .Inner) }}
30 | {{ else }}
31 |   {{ errorf "%q: 'tab' shortcode must be inside 'tabs' shortcode" .Page.Path }}
32 | {{ end}}
33 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/top.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |   Shortcode that adds a "Back to Top" link.
20 | 
21 |   Parmeters: None
22 | */}}
23 | <p><a href="#top" class="top pull-right"><i class="fas fa-triangle"></i> Back to top</a></p>
24 | 
25 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/training_link.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |     Shortcode for linking to a file in the training repo github. This shortcode
20 |     will automatically discover the repo and correct branch.
21 | 
22 |     Parmeters: 
23 |         - file: The absolute path to the image file (required)
24 |         - name: The rendered link name (required)
25 | */}}
26 | <a href="{{ .Site.Params.TrainingExercises }}/blob/{{ .Site.Params.Branch }}/{{ .Get "file" }}">
27 |     {{ .Get "name" }}
28 | </a>
29 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/training_repo.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |     Shortcode for linking to a file in the training repo github. This shortcode
20 |     will automatically discover the repo and correct branch.
21 | 
22 |     Parmeters: 
23 |         - file: The absolute path to the image file (required)
24 |         - name: The rendered link name (required)
25 | */}}
26 | <a href="{{ .Site.Params.TrainingExercises }}/tree/{{ .Site.Params.Branch }}/">
27 |     flink-training-repo
28 | </a>
29 | 
30 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/unstable.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |   Shortcode that only renders its contents if the site
20 |   is not marked as stable.
21 | 
22 |   Parmeters: Markdown text
23 | */}}{{ if (not $.Site.Params.IsStable) }}{{ .Inner | markdownify }}{{ end }}


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/version.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 |   http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 |     Shortcode that interpolates the full maven version (x.y.z)
20 | 
21 |     Parmeters: None
22 | */}}{{- $.Site.Params.Version -}}
23 | 


--------------------------------------------------------------------------------
/docs/layouts/shortcodes/xmark.html:
--------------------------------------------------------------------------------
 1 | {{/*
 2 | Licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 | http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.
18 | */}}{{/*
19 | Adds a X mark icon.
20 | */}}
21 | <i class="fa fa-solid fa-times" style="color:darkred"></i>
22 | 


--------------------------------------------------------------------------------
/docs/static/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/favicon.png


--------------------------------------------------------------------------------
/docs/static/fig/LICENSE.txt:
--------------------------------------------------------------------------------
 1 | All image files in the folder and its subfolders are
 2 | licensed to the Apache Software Foundation (ASF) under one
 3 | or more contributor license agreements.  See the NOTICE file
 4 | distributed with this work for additional information
 5 | regarding copyright ownership.  The ASF licenses this file
 6 | to you under the Apache License, Version 2.0 (the
 7 | "License"); you may not use this file except in compliance
 8 | with the License.  You may obtain a copy of the License at
 9 | 
10 | http://www.apache.org/licenses/LICENSE-2.0
11 | 
12 | Unless required by applicable law or agreed to in writing,
13 | software distributed under the License is distributed on an
14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 | KIND, either express or implied.  See the License for the
16 | specific language governing permissions and limitations
17 | under the License.


--------------------------------------------------------------------------------
/docs/static/fig/architecture.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/architecture.png


--------------------------------------------------------------------------------
/docs/static/fig/cdc-flow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/cdc-flow.png


--------------------------------------------------------------------------------
/docs/static/fig/design.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/design.png


--------------------------------------------------------------------------------
/docs/static/fig/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/favicon.png


--------------------------------------------------------------------------------
/docs/static/fig/flinkcdc-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/flinkcdc-logo.png


--------------------------------------------------------------------------------
/docs/static/fig/flow-of-events.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/flow-of-events.png


--------------------------------------------------------------------------------
/docs/static/fig/index-background-footer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/index-background-footer.png


--------------------------------------------------------------------------------
/docs/static/fig/index-background-header.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/index-background-header.png


--------------------------------------------------------------------------------
/docs/static/fig/index-yaml-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/index-yaml-example.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-doris-tutorial/doris-create-table.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-doris-tutorial/doris-create-table.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-doris-tutorial/doris-display-data.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-doris-tutorial/doris-display-data.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-doris-tutorial/doris-display-result.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-doris-tutorial/doris-display-result.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-doris-tutorial/doris-ui.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-doris-tutorial/doris-ui.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-doris-tutorial/flink-ui.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-doris-tutorial/flink-ui.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-doris-tutorial/mysql-to-doris.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-doris-tutorial/mysql-to-doris.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-postgres-tutorial/flink-cdc-streaming-etl.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-postgres-tutorial/flink-cdc-streaming-etl.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-postgres-tutorial/flink-sql-client.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-postgres-tutorial/flink-sql-client.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-postgres-tutorial/flink-ui.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-postgres-tutorial/flink-ui.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-postgres-tutorial/kafka-gmv-changes.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-postgres-tutorial/kafka-gmv-changes.gif


--------------------------------------------------------------------------------
/docs/static/fig/mysql-postgres-tutorial/kibana-create-index-pattern.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-postgres-tutorial/kibana-create-index-pattern.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-postgres-tutorial/kibana-detailed-orders-changes.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-postgres-tutorial/kibana-detailed-orders-changes.gif


--------------------------------------------------------------------------------
/docs/static/fig/mysql-postgres-tutorial/kibana-detailed-orders.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-postgres-tutorial/kibana-detailed-orders.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-starrocks-tutorial/flink-ui.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-starrocks-tutorial/flink-ui.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-starrocks-tutorial/mysql-to-starrocks.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-starrocks-tutorial/mysql-to-starrocks.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-starrocks-tutorial/starrocks-display-data.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-starrocks-tutorial/starrocks-display-data.png


--------------------------------------------------------------------------------
/docs/static/fig/mysql-starrocks-tutorial/starrocks-display-result.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/mysql-starrocks-tutorial/starrocks-display-result.png


--------------------------------------------------------------------------------
/docs/static/fig/real-time-data-lake-tutorial/data_in_iceberg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/real-time-data-lake-tutorial/data_in_iceberg.png


--------------------------------------------------------------------------------
/docs/static/fig/real-time-data-lake-tutorial/files-in-iceberg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/real-time-data-lake-tutorial/files-in-iceberg.png


--------------------------------------------------------------------------------
/docs/static/fig/real-time-data-lake-tutorial/final-data-in-iceberg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/real-time-data-lake-tutorial/final-data-in-iceberg.png


--------------------------------------------------------------------------------
/docs/static/fig/real-time-data-lake-tutorial/flink-cdc-iceberg-running-job.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/real-time-data-lake-tutorial/flink-cdc-iceberg-running-job.png


--------------------------------------------------------------------------------
/docs/static/fig/real-time-data-lake-tutorial/flink-sql-client.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/real-time-data-lake-tutorial/flink-sql-client.png


--------------------------------------------------------------------------------
/docs/static/fig/real-time-data-lake-tutorial/flink-ui.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/real-time-data-lake-tutorial/flink-ui.png


--------------------------------------------------------------------------------
/docs/static/fig/real-time-data-lake-tutorial/real-time-data-lake-tutorial.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/fig/real-time-data-lake-tutorial/real-time-data-lake-tutorial.png


--------------------------------------------------------------------------------
/docs/static/font-awesome/fonts/FontAwesome.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/font-awesome/fonts/FontAwesome.otf


--------------------------------------------------------------------------------
/docs/static/font-awesome/fonts/fontawesome-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/font-awesome/fonts/fontawesome-webfont.eot


--------------------------------------------------------------------------------
/docs/static/font-awesome/fonts/fontawesome-webfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/font-awesome/fonts/fontawesome-webfont.ttf


--------------------------------------------------------------------------------
/docs/static/font-awesome/fonts/fontawesome-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/font-awesome/fonts/fontawesome-webfont.woff


--------------------------------------------------------------------------------
/docs/static/font-awesome/fonts/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/font-awesome/fonts/fontawesome-webfont.woff2


--------------------------------------------------------------------------------
/docs/static/navbar-brand-logo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/apache/flink-cdc/13c2456da46bf1795e1b053a8d3bf8adaea099d7/docs/static/navbar-brand-logo.jpg


--------------------------------------------------------------------------------
/flink-cdc-cli/src/test/resources/definitions/pipeline-definition-minimized.yaml:
--------------------------------------------------------------------------------
 1 | ################################################################################
 2 | # Licensed to the Apache Software Foundation (ASF) under one or more
 3 | # contributor license agreements.  See the NOTICE file distributed with
 4 | # this work for additional information regarding copyright ownership.
 5 | # The ASF licenses this file to You under the Apache License, Version 2.0
 6 | # (the "License"); you may not use this file except in compliance with
 7 | # the License.  You may obtain a copy of the License at
 8 | # 
 9 | #      http://www.apache.org/licenses/LICENSE-2.0
10 | # 
11 | # Unless required by applicable law or agreed to in writing, software
12 | # distributed under the License is distributed on an "AS IS" BASIS,
13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 | # See the License for the specific language governing permissions and
15 | # limitations under the License.
16 | ################################################################################
17 | source:
18 |   type: mysql
19 | 
20 | sink:
21 |   type: kafka
22 | 


--------------------------------------------------------------------------------
/flink-cdc-cli/src/test/resources/flink-home/conf/config.yaml:
--------------------------------------------------------------------------------
 1 | #  Licensed to the Apache Software Foundation (ASF) under one
 2 | #  or more contributor license agreements.  See the NOTICE file
 3 | #  distributed with this work for additional information
 4 | #  regarding copyright ownership.  The ASF licenses this file
 5 | #  to you under the Apache License, Version 2.0 (the
 6 | #  "License"); you may not use this file except in compliance
 7 | #  with the License.  You may obtain a copy of the License at
 8 | #
 9 | #      http://www.apache.org/licenses/LICENSE-2.0
10 | #
11 | #  Unless required by applicable law or agreed to in writing, software
12 | #  distributed under the License is distributed on an "AS IS" BASIS,
13 | #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 | #  See the License for the specific language governing permissions and
15 | #  limitations under the License.
16 | ################################################################################
17 | 
18 | jobmanager:
19 |   rpc:
20 |     address: localhost
21 |     port: 6123
22 |   bind-host: localhost
23 |   memory:
24 |     process:
25 |       size: 1600m
26 |   execution:
27 |     failover-strategy: region
28 | 
29 | taskmanager:
30 |   bind-host: localhost
31 |   host: localhost
32 |   memory:
33 |     process:
34 |       size: 1728m
35 |   numberOfTaskSlots: 1
36 | 
37 | 
38 | parallelism:
39 |   default: 1
40 | 
41 | # The rest of your YAML file...
42 | 


--------------------------------------------------------------------------------
/flink-cdc-cli/src/test/resources/global-config/global-config.yaml:
--------------------------------------------------------------------------------
 1 | ################################################################################
 2 | # Licensed to the Apache Software Foundation (ASF) under one or more
 3 | # contributor license agreements.  See the NOTICE file distributed with
 4 | # this work for additional information regarding copyright ownership.
 5 | # The ASF licenses this file to You under the Apache License, Version 2.0
 6 | # (the "License"); you may not use this file except in compliance with
 7 | # the License.  You may obtain a copy of the License at
 8 | # 
 9 | #      http://www.apache.org/licenses/LICENSE-2.0
10 | # 
11 | # Unless required by applicable law or agreed to in writing, software
12 | # distributed under the License is distributed on an "AS IS" BASIS,
13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 | # See the License for the specific language governing permissions and
15 | # limitations under the License.
16 | ################################################################################
17 | parallelism: 1
18 | schema.change.behavior: ignore


--------------------------------------------------------------------------------
/flink-cdc-cli/src/test/resources/log4j2-test.properties:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | #   http://www.apache.org/licenses/LICENSE-2.0
 8 | # Unless required by applicable law or agreed to in writing, software
 9 | # distributed under the License is distributed on an "AS IS" BASIS,
10 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | # See the License for the specific language governing permissions and
12 | # limitations under the License.
13 | 
14 | # Set root logger level to ERROR to not flood build logs
15 | # set manually to INFO for debugging purposes
16 | rootLogger.level = ERROR
17 | rootLogger.appenderRef.test.ref = TestLogger
18 | 
19 | appender.testlogger.name = TestLogger
20 | appender.testlogger.type = CONSOLE
21 | appender.testlogger.target = SYSTEM_ERR
22 | appender.testlogger.layout.type = PatternLayout
23 | appender.testlogger.layout.pattern = %-4r [%t] %-5p %c - %m%n
24 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/configuration/description/BlockElement.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.configuration.description;
19 | 
20 | import org.apache.flink.cdc.common.annotation.PublicEvolving;
21 | 
22 | /** Part of description that represents a block e.g. some text, linebreak or a list. */
23 | @PublicEvolving
24 | public interface BlockElement extends DescriptionElement {}
25 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/configuration/description/DescriptionElement.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.configuration.description;
19 | 
20 | import org.apache.flink.cdc.common.annotation.PublicEvolving;
21 | 
22 | /** Part of a {@link Description} that can be converted into String representation. */
23 | @PublicEvolving
24 | interface DescriptionElement {
25 |     /**
26 |      * Transforms itself into String representation using given format.
27 |      *
28 |      * @param formatter formatter to use.
29 |      */
30 |     void format(Formatter formatter);
31 | }
32 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/configuration/description/InlineElement.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.configuration.description;
19 | 
20 | import org.apache.flink.cdc.common.annotation.PublicEvolving;
21 | 
22 | /** Part of description that represents an element inside a block e.g. a link. */
23 | @PublicEvolving
24 | public interface InlineElement extends DescriptionElement {}
25 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/event/ChangeEvent.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.event;
19 | 
20 | import org.apache.flink.cdc.common.annotation.PublicEvolving;
21 | 
22 | /**
23 |  * Class {@code ChangeEvent} represents the change events of external systems, including {@link
24 |  * DataChangeEvent} and {@link SchemaChangeEvent}.
25 |  */
26 | @PublicEvolving
27 | public interface ChangeEvent extends Event {
28 | 
29 |     /** Describes the database table corresponding to the occurrence of a change event. */
30 |     TableId tableId();
31 | }
32 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/event/Event.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.event;
19 | 
20 | import org.apache.flink.cdc.common.annotation.PublicEvolving;
21 | 
22 | /**
23 |  * Class {@code Event} is the super interface defines the events of external systems flowing into
24 |  * Flink CDC.
25 |  */
26 | @PublicEvolving
27 | public interface Event {}
28 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/event/EventDeserializer.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.event;
19 | 
20 | import org.apache.flink.cdc.common.annotation.PublicEvolving;
21 | 
22 | import java.io.Serializable;
23 | import java.util.List;
24 | 
25 | /** Deserializer to deserialize given record to {@link Event}. */
26 | @PublicEvolving
27 | public interface EventDeserializer<T> extends Serializable {
28 | 
29 |     /** Deserialize given record to {@link Event}s. */
30 |     List<? extends Event> deserialize(T record) throws Exception;
31 | }
32 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/event/OperationType.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.event;
19 | 
20 | import org.apache.flink.cdc.common.annotation.PublicEvolving;
21 | 
22 | /**
23 |  * Enum {@code OperationType} describes the type of operation that the data change event reports.
24 |  */
25 | @PublicEvolving
26 | public enum OperationType {
27 |     INSERT,
28 |     UPDATE,
29 |     REPLACE,
30 |     DELETE
31 | }
32 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/event/visitor/AddColumnEventVisitor.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.event.visitor;
19 | 
20 | import org.apache.flink.cdc.common.annotation.Internal;
21 | import org.apache.flink.cdc.common.event.AddColumnEvent;
22 | 
23 | /** Visitor for {@link AddColumnEvent}s. */
24 | @Internal
25 | @FunctionalInterface
26 | public interface AddColumnEventVisitor<T, E extends Throwable> {
27 |     T visit(AddColumnEvent event) throws E;
28 | }
29 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/event/visitor/AlterColumnTypeEventVisitor.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.event.visitor;
19 | 
20 | import org.apache.flink.cdc.common.annotation.Internal;
21 | import org.apache.flink.cdc.common.event.AlterColumnTypeEvent;
22 | 
23 | /** Visitor for {@link AlterColumnTypeEvent}s. */
24 | @Internal
25 | @FunctionalInterface
26 | public interface AlterColumnTypeEventVisitor<T, E extends Throwable> {
27 |     T visit(AlterColumnTypeEvent event) throws E;
28 | }
29 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/event/visitor/CreateTableEventVisitor.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.event.visitor;
19 | 
20 | import org.apache.flink.cdc.common.annotation.Internal;
21 | import org.apache.flink.cdc.common.event.CreateTableEvent;
22 | 
23 | /** Visitor for {@link CreateTableEvent}s. */
24 | @Internal
25 | @FunctionalInterface
26 | public interface CreateTableEventVisitor<T, E extends Throwable> {
27 |     T visit(CreateTableEvent event) throws E;
28 | }
29 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/event/visitor/DropColumnEventVisitor.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.event.visitor;
19 | 
20 | import org.apache.flink.cdc.common.annotation.Internal;
21 | import org.apache.flink.cdc.common.event.DropColumnEvent;
22 | 
23 | /** Visitor for {@link DropColumnEvent}s. */
24 | @Internal
25 | @FunctionalInterface
26 | public interface DropColumnEventVisitor<T, E extends Throwable> {
27 |     T visit(DropColumnEvent event) throws E;
28 | }
29 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/event/visitor/DropTableEventVisitor.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.event.visitor;
19 | 
20 | import org.apache.flink.cdc.common.annotation.Internal;
21 | import org.apache.flink.cdc.common.event.DropTableEvent;
22 | 
23 | /** Visitor for {@link DropTableEvent}s. */
24 | @Internal
25 | @FunctionalInterface
26 | public interface DropTableEventVisitor<T, E extends Throwable> {
27 |     T visit(DropTableEvent event) throws E;
28 | }
29 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/event/visitor/RenameColumnEventVisitor.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.event.visitor;
19 | 
20 | import org.apache.flink.cdc.common.annotation.Internal;
21 | import org.apache.flink.cdc.common.event.RenameColumnEvent;
22 | 
23 | /** Visitor for {@link RenameColumnEvent}s. */
24 | @Internal
25 | @FunctionalInterface
26 | public interface RenameColumnEventVisitor<T, E extends Throwable> {
27 |     T visit(RenameColumnEvent event) throws E;
28 | }
29 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/event/visitor/TruncateTableEventVisitor.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.event.visitor;
19 | 
20 | import org.apache.flink.cdc.common.annotation.Internal;
21 | import org.apache.flink.cdc.common.event.TruncateTableEvent;
22 | 
23 | /** Visitor for {@link TruncateTableEvent}s. */
24 | @Internal
25 | @FunctionalInterface
26 | public interface TruncateTableEventVisitor<T, E extends Throwable> {
27 |     T visit(TruncateTableEvent event) throws E;
28 | }
29 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/factories/DataSinkFactory.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.factories;
19 | 
20 | import org.apache.flink.cdc.common.annotation.PublicEvolving;
21 | import org.apache.flink.cdc.common.sink.DataSink;
22 | 
23 | /**
24 |  * A factory to create {@link DataSink} instances. See also {@link Factory} for more information.
25 |  */
26 | @PublicEvolving
27 | public interface DataSinkFactory extends Factory {
28 | 
29 |     /** Creates a {@link DataSink} instance. */
30 |     DataSink createDataSink(Context context);
31 | }
32 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/factories/DataSourceFactory.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.factories;
19 | 
20 | import org.apache.flink.cdc.common.annotation.PublicEvolving;
21 | import org.apache.flink.cdc.common.source.DataSource;
22 | 
23 | /**
24 |  * A factory to create {@link DataSource} instances. See also {@link Factory} for more information.
25 |  */
26 | @PublicEvolving
27 | public interface DataSourceFactory extends Factory {
28 | 
29 |     /** Creates a {@link DataSource} instance. */
30 |     DataSource createDataSource(Context context);
31 | }
32 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/function/HashFunction.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.function;
19 | 
20 | import org.apache.flink.cdc.common.annotation.Internal;
21 | 
22 | /**
23 |  * The hash function used to calculate the hash code from a given event.
24 |  *
25 |  * @param <T> the type of given event.
26 |  */
27 | @Internal
28 | public interface HashFunction<T> {
29 | 
30 |     int hashcode(T event);
31 | }
32 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/pipeline/SchemaChangeBehavior.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.pipeline;
19 | 
20 | import org.apache.flink.cdc.common.annotation.PublicEvolving;
21 | 
22 | /**
23 |  * Behavior for handling schema changes. Enums are sorted from the most tolerant strategy (IGNORE)
24 |  * to the most aggressive one (EXCEPTION).
25 |  */
26 | @PublicEvolving
27 | public enum SchemaChangeBehavior {
28 |     IGNORE,
29 |     LENIENT,
30 |     TRY_EVOLVE,
31 |     EVOLVE,
32 |     EXCEPTION
33 | }
34 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/main/java/org/apache/flink/cdc/common/udf/UserDefinedFunctionContext.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.udf;
19 | 
20 | import org.apache.flink.cdc.common.configuration.Configuration;
21 | 
22 | /** Context for initialization of {@link UserDefinedFunction}. */
23 | public interface UserDefinedFunctionContext {
24 | 
25 |     Configuration configuration();
26 | }
27 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/test/java/org/apache/flink/cdc/common/utils/StringUtilsTest.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.common.utils;
19 | 
20 | import org.assertj.core.api.Assertions;
21 | import org.junit.jupiter.api.Test;
22 | 
23 | /** A test for the {@link StringUtils}. */
24 | class StringUtilsTest {
25 |     @Test
26 |     void testConvertToCamelCase() {
27 |         String str = "AA_BB CC";
28 |         String camelCaseStr = StringUtils.convertToCamelCase(str);
29 |         Assertions.assertThat(camelCaseStr).isEqualTo("aaBbCc");
30 |     }
31 | }
32 | 


--------------------------------------------------------------------------------
/flink-cdc-common/src/test/resources/log4j2-test.properties:
--------------------------------------------------------------------------------
 1 | ################################################################################
 2 | # Licensed to the Apache Software Foundation (ASF) under one or more
 3 | # contributor license agreements.  See the NOTICE file distributed with
 4 | # this work for additional information regarding copyright ownership.
 5 | # The ASF licenses this file to You under the Apache License, Version 2.0
 6 | # (the "License"); you may not use this file except in compliance with
 7 | # the License.  You may obtain a copy of the License at
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | ################################################################################
15 | 
16 | # Set root logger level to ERROR to not flood build logs
17 | # set manually to INFO for debugging purposes
18 | rootLogger.level = ERROR
19 | rootLogger.appenderRef.test.ref = TestLogger
20 | 
21 | appender.testlogger.name = TestLogger
22 | appender.testlogger.type = CONSOLE
23 | appender.testlogger.target = SYSTEM_ERR
24 | appender.testlogger.layout.type = PatternLayout
25 | appender.testlogger.layout.pattern = %-4r [%t] %-5p %c - %m%n
26 | 


--------------------------------------------------------------------------------
/flink-cdc-composer/src/main/java/org/apache/flink/cdc/composer/PipelineComposer.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.composer;
19 | 
20 | import org.apache.flink.cdc.composer.definition.PipelineDef;
21 | 
22 | /** Composer for translating a pipeline definition to an execution. */
23 | public interface PipelineComposer {
24 | 
25 |     /**
26 |      * Composing pipeline execution from the specified pipeline definition.
27 |      *
28 |      * @param pipelineDef definition of the pipeline
29 |      */
30 |     PipelineExecution compose(PipelineDef pipelineDef);
31 | }
32 | 


--------------------------------------------------------------------------------
/flink-cdc-composer/src/test/resources/META-INF/services/org.apache.flink.cdc.common.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | #
 8 | #     http://www.apache.org/licenses/LICENSE-2.0
 9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | org.apache.flink.cdc.composer.utils.factory.DataSinkFactory1
16 | org.apache.flink.cdc.composer.utils.factory.DataSinkFactory2
17 | org.apache.flink.cdc.composer.utils.factory.DataSourceFactory1
18 | org.apache.flink.cdc.composer.utils.factory.DataSourceFactory2
19 | org.apache.flink.cdc.composer.testsource.factory.DistributedDataSourceFactory


--------------------------------------------------------------------------------
/flink-cdc-composer/src/test/resources/log4j2-test.properties:
--------------------------------------------------------------------------------
 1 | ################################################################################
 2 | # Licensed to the Apache Software Foundation (ASF) under one or more
 3 | # contributor license agreements.  See the NOTICE file distributed with
 4 | # this work for additional information regarding copyright ownership.
 5 | # The ASF licenses this file to You under the Apache License, Version 2.0
 6 | # (the "License"); you may not use this file except in compliance with
 7 | # the License.  You may obtain a copy of the License at
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | ################################################################################
15 | 
16 | # Set root logger level to ERROR to not flood build logs
17 | # set manually to INFO for debugging purposes
18 | rootLogger.level=ERROR
19 | rootLogger.appenderRef.test.ref = TestLogger
20 | 
21 | appender.testlogger.name = TestLogger
22 | appender.testlogger.type = CONSOLE
23 | appender.testlogger.target = SYSTEM_ERR
24 | appender.testlogger.layout.type = PatternLayout
25 | appender.testlogger.layout.pattern = %-4r [%t] %-5p %c - %m%n
26 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-doris/src/main/resources/META-INF/services/org.apache.flink.cdc.common.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | #
 8 | #     http://www.apache.org/licenses/LICENSE-2.0
 9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.doris.factory.DorisDataSinkFactory
17 | 
18 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-elasticsearch/src/main/resources/META-INF/services/org.apache.flink.cdc.common.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | #
 8 | #     http://www.apache.org/licenses/LICENSE-2.0
 9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.elasticsearch.sink.ElasticsearchDataSinkFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-fluss/src/main/resources/META-INF/services/org.apache.flink.cdc.common.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | #
 8 | #     http://www.apache.org/licenses/LICENSE-2.0
 9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.fluss.factory.FlussDataSinkFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-iceberg/src/main/resources/META-INF/services/org.apache.flink.cdc.common.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | #
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.iceberg.sink.IcebergDataSinkFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-iceberg/src/test/resources/log4j2-test.properties:
--------------------------------------------------------------------------------
 1 | ################################################################################
 2 | #  Copyright 2023 Ververica Inc.
 3 | #
 4 | #  Licensed under the Apache License, Version 2.0 (the "License");
 5 | #  you may not use this file except in compliance with the License.
 6 | #  You may obtain a copy of the License at
 7 | #
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | #
10 | #  Unless required by applicable law or agreed to in writing, software
11 | #  distributed under the License is distributed on an "AS IS" BASIS,
12 | #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | #  See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | ################################################################################
16 | 
17 | # Set root logger level to ERROR to not flood build logs
18 | # set manually to INFO for debugging purposes
19 | rootLogger.level=ERROR
20 | rootLogger.appenderRef.test.ref = TestLogger
21 | 
22 | appender.testlogger.name = TestLogger
23 | appender.testlogger.type = CONSOLE
24 | appender.testlogger.target = SYSTEM_ERR
25 | appender.testlogger.layout.type = PatternLayout
26 | appender.testlogger.layout.pattern = %-4r [%t] %-5p %c - %m%n
27 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-kafka/src/main/resources/META-INF/services/org.apache.flink.cdc.common.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | #
 8 | #     http://www.apache.org/licenses/LICENSE-2.0
 9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.kafka.sink.KafkaDataSinkFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-maxcompute/src/main/resources/META-INF/services/org.apache.flink.cdc.common.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | #
 8 | #     http://www.apache.org/licenses/LICENSE-2.0
 9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.maxcompute.MaxComputeDataSinkFactory
17 | 
18 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-mysql/src/main/resources/META-INF/services/org.apache.flink.cdc.common.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | # 
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | # 
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.mysql.factory.MySqlDataSourceFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-mysql/src/test/resources/pipeline-test.yaml:
--------------------------------------------------------------------------------
 1 | ################################################################################
 2 | # Licensed to the Apache Software Foundation (ASF) under one or more
 3 | # contributor license agreements.  See the NOTICE file distributed with
 4 | # this work for additional information regarding copyright ownership.
 5 | # The ASF licenses this file to You under the Apache License, Version 2.0
 6 | # (the "License"); you may not use this file except in compliance with
 7 | # the License.  You may obtain a copy of the License at
 8 | # 
 9 | #      http://www.apache.org/licenses/LICENSE-2.0
10 | # 
11 | # Unless required by applicable law or agreed to in writing, software
12 | # distributed under the License is distributed on an "AS IS" BASIS,
13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 | # See the License for the specific language governing permissions and
15 | # limitations under the License.
16 | ################################################################################
17 | source:
18 |   type: mysql
19 |   name: MySQL Source
20 |   hostname: localhost
21 |   port: 3306
22 |   username: root
23 |   password: root
24 |   tables: test.\.*
25 | 
26 | sink:
27 |   type: values
28 |   name: Values Sink
29 | 
30 | pipeline:
31 |   parallelism: 1


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-oceanbase/src/main/resources/META-INF/services/org.apache.flink.cdc.common.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | #
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.oceanbase.factory.OceanBaseDataSinkFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-paimon/src/main/java/org/apache/flink/cdc/connectors/paimon/sink/v2/PaimonRecordSerializer.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.paimon.sink.v2;
19 | 
20 | import java.io.IOException;
21 | import java.io.Serializable;
22 | 
23 | /** Converting Input into {@link PaimonEvent} for {@link PaimonWriter}. */
24 | public interface PaimonRecordSerializer<Input> extends Serializable {
25 |     PaimonEvent serialize(Input t) throws IOException;
26 | }
27 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-paimon/src/main/java/org/apache/flink/cdc/connectors/paimon/sink/v2/bucket/BucketWrapper.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.paimon.sink.v2.bucket;
19 | 
20 | import org.apache.paimon.data.InternalRow;
21 | import org.apache.paimon.flink.sink.StoreSinkWrite;
22 | 
23 | /** Wrapper class with bucket. */
24 | public interface BucketWrapper {
25 | 
26 |     /** Bucket value that was passed in {@link StoreSinkWrite#write(InternalRow, int)}. */
27 |     int getBucket();
28 | }
29 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-paimon/src/main/resources/META-INF/services/org.apache.flink.cdc.common.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | #
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.paimon.sink.PaimonDataSinkFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-starrocks/src/main/resources/META-INF/services/org.apache.flink.cdc.common.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | #
 8 | #     http://www.apache.org/licenses/LICENSE-2.0
 9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.starrocks.sink.StarRocksDataSinkFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-values/src/main/resources/META-INF/services/org.apache.flink.cdc.common.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | # 
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | # 
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.values.factory.ValuesDataFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-cdc-base/src/main/java/org/apache/flink/cdc/connectors/base/options/StartupMode.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.base.options;
19 | 
20 | /**
21 |  * Startup modes for the Flink CDC Connectors.
22 |  *
23 |  * @see StartupOptions
24 |  */
25 | public enum StartupMode {
26 |     INITIAL,
27 | 
28 |     EARLIEST_OFFSET,
29 | 
30 |     LATEST_OFFSET,
31 | 
32 |     SPECIFIC_OFFSETS,
33 |     COMMITTED_OFFSETS,
34 |     TIMESTAMP,
35 |     SNAPSHOT
36 | }
37 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-db2-cdc/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | # 
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | # 
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.db2.table.Db2TableSourceFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-db2-cdc/src/test/resources/db2_server/asncdc_UDF.sql:
--------------------------------------------------------------------------------
 1 | -- Licensed to the Apache Software Foundation (ASF) under one or more
 2 | -- contributor license agreements.  See the NOTICE file distributed with
 3 | -- this work for additional information regarding copyright ownership.
 4 | -- The ASF licenses this file to You under the Apache License, Version 2.0
 5 | -- (the "License"); you may not use this file except in compliance with
 6 | -- the License.  You may obtain a copy of the License at
 7 | -- 
 8 | --      http://www.apache.org/licenses/LICENSE-2.0
 9 | -- 
10 | -- Unless required by applicable law or agreed to in writing, software
11 | -- distributed under the License is distributed on an "AS IS" BASIS,
12 | -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | -- See the License for the specific language governing permissions and
14 | -- limitations under the License.
15 | 
16 | DROP SPECIFIC FUNCTION ASNCDC.asncdcservice;
17 | 
18 | CREATE FUNCTION ASNCDC.ASNCDCSERVICES(command VARCHAR(6), service VARCHAR(8))
19 |    RETURNS CLOB(100K)
20 |    SPECIFIC asncdcservice
21 |    EXTERNAL NAME 'asncdc!asncdcservice'
22 |    LANGUAGE C
23 |    PARAMETER STYLE SQL
24 |    DBINFO
25 |    DETERMINISTIC
26 |    NOT FENCED
27 |    RETURNS NULL ON NULL INPUT
28 |    NO SQL
29 |    NO EXTERNAL ACTION
30 |    NO SCRATCHPAD
31 |    ALLOW PARALLEL
32 |    NO FINAL CALL;
33 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-db2-cdc/src/test/resources/db2_server/startup-agent.sql:
--------------------------------------------------------------------------------
 1 | -- Licensed to the Apache Software Foundation (ASF) under one or more
 2 | -- contributor license agreements.  See the NOTICE file distributed with
 3 | -- this work for additional information regarding copyright ownership.
 4 | -- The ASF licenses this file to You under the Apache License, Version 2.0
 5 | -- (the "License"); you may not use this file except in compliance with
 6 | -- the License.  You may obtain a copy of the License at
 7 | -- 
 8 | --      http://www.apache.org/licenses/LICENSE-2.0
 9 | -- 
10 | -- Unless required by applicable law or agreed to in writing, software
11 | -- distributed under the License is distributed on an "AS IS" BASIS,
12 | -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | -- See the License for the specific language governing permissions and
14 | -- limitations under the License.
15 | 
16 | VALUES ASNCDC.ASNCDCSERVICES('start','asncdc');
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-debezium/src/main/java/org/apache/flink/cdc/debezium/Validator.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.debezium;
19 | 
20 | import java.io.Serializable;
21 | 
22 | /** Validator to validate the connected database satisfies the cdc connector's requirements. */
23 | public interface Validator extends Serializable {
24 | 
25 |     void validate();
26 | 
27 |     static Validator getDefaultValidator() {
28 |         return () -> {
29 |             // do nothing;
30 |         };
31 |     }
32 | }
33 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-debezium/src/main/java/org/apache/flink/cdc/debezium/table/MetadataConverter.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.debezium.table;
19 | 
20 | import org.apache.flink.cdc.common.annotation.Internal;
21 | 
22 | import org.apache.kafka.connect.source.SourceRecord;
23 | 
24 | import java.io.Serializable;
25 | 
26 | /** A converter converts {@link SourceRecord} metadata into Flink internal data structures. */
27 | @FunctionalInterface
28 | @Internal
29 | public interface MetadataConverter extends Serializable {
30 | 
31 |     Object read(SourceRecord record);
32 | }
33 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-debezium/src/main/java/org/apache/flink/cdc/debezium/table/RowDataMetadataConverter.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.debezium.table;
19 | 
20 | import org.apache.flink.cdc.common.annotation.Internal;
21 | import org.apache.flink.table.data.RowData;
22 | 
23 | /** A converter converts {@link RowData} metadata into Flink internal data structures. */
24 | @Internal
25 | public interface RowDataMetadataConverter extends MetadataConverter {
26 | 
27 |     Object read(RowData rowData);
28 | }
29 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-mongodb-cdc/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | # 
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | # 
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.mongodb.table.MongoDBTableSourceFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-mongodb-cdc/src/test/resources/ddl/ns-dotted.js:
--------------------------------------------------------------------------------
 1 | // Licensed to the Apache Software Foundation (ASF) under one or more
 2 | // contributor license agreements.  See the NOTICE file distributed with
 3 | // this work for additional information regarding copyright ownership.
 4 | // The ASF licenses this file to You under the Apache License, Version 2.0
 5 | // (the "License"); you may not use this file except in compliance with
 6 | // the License.  You may obtain a copy of the License at
 7 | //   http://www.apache.org/licenses/LICENSE-2.0
 8 | // Unless required by applicable law or agreed to in writing, software
 9 | // distributed under the License is distributed on an "AS IS" BASIS,
10 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | // See the License for the specific language governing permissions and
12 | // limitations under the License.
13 | 
14 | 
15 | db.getCollection('coll.name').insertOne({"seq": "A101"});
16 | db.getCollection('coll.name').insertOne({"seq": "A102"});
17 | db.getCollection('coll.name').insertOne({"seq": "A103"});


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-mongodb-cdc/src/test/resources/ddl/ns-regex.js:
--------------------------------------------------------------------------------
 1 | // Licensed to the Apache Software Foundation (ASF) under one or more
 2 | // contributor license agreements.  See the NOTICE file distributed with
 3 | // this work for additional information regarding copyright ownership.
 4 | // The ASF licenses this file to You under the Apache License, Version 2.0
 5 | // (the "License"); you may not use this file except in compliance with
 6 | // the License.  You may obtain a copy of the License at
 7 | //   http://www.apache.org/licenses/LICENSE-2.0
 8 | // Unless required by applicable law or agreed to in writing, software
 9 | // distributed under the License is distributed on an "AS IS" BASIS,
10 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | // See the License for the specific language governing permissions and
12 | // limitations under the License.
13 | 
14 | db.getCollection('coll-a1').insertOne({"seq": "A101"});
15 | db.getCollection('coll-a2').insertOne({"seq": "A201"});
16 | db.getCollection('coll-b1').insertOne({"seq": "B101"});
17 | db.getCollection('coll-b2').insertOne({"seq": "B201"});


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-mongodb-cdc/src/test/resources/ddl/ns_regex.js:
--------------------------------------------------------------------------------
 1 | // Licensed to the Apache Software Foundation (ASF) under one or more
 2 | // contributor license agreements.  See the NOTICE file distributed with
 3 | // this work for additional information regarding copyright ownership.
 4 | // The ASF licenses this file to You under the Apache License, Version 2.0
 5 | // (the "License"); you may not use this file except in compliance with
 6 | // the License.  You may obtain a copy of the License at
 7 | //   http://www.apache.org/licenses/LICENSE-2.0
 8 | // Unless required by applicable law or agreed to in writing, software
 9 | // distributed under the License is distributed on an "AS IS" BASIS,
10 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | // See the License for the specific language governing permissions and
12 | // limitations under the License.
13 | 
14 | db.getCollection('coll_a1').insertOne({"seq": "A101"});
15 | db.getCollection('coll_a2').insertOne({"seq": "A201"});
16 | db.getCollection('coll_b1').insertOne({"seq": "B101"});
17 | db.getCollection('coll_b2').insertOne({"seq": "B201"});


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-mysql-cdc/src/main/java/org/apache/flink/cdc/connectors/mysql/debezium/task/context/exception/SchemaOutOfSyncException.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.mysql.debezium.task.context.exception;
19 | 
20 | /**
21 |  * A wrapper class for clearly show the possible reason of a schema-out-of-sync exception thrown
22 |  * inside Debezium.
23 |  */
24 | public class SchemaOutOfSyncException extends Exception {
25 |     public SchemaOutOfSyncException(String message, Throwable cause) {
26 |         super(message, cause);
27 |     }
28 | }
29 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-mysql-cdc/src/main/java/org/apache/flink/cdc/connectors/mysql/table/StartupMode.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.mysql.table;
19 | 
20 | /**
21 |  * Startup modes for the MySQL CDC Consumer.
22 |  *
23 |  * @see StartupOptions
24 |  */
25 | public enum StartupMode {
26 |     INITIAL,
27 | 
28 |     EARLIEST_OFFSET,
29 | 
30 |     LATEST_OFFSET,
31 | 
32 |     SPECIFIC_OFFSETS,
33 | 
34 |     TIMESTAMP,
35 |     SNAPSHOT
36 | }
37 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-mysql-cdc/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | # 
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | # 
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.mysql.table.MySqlTableSourceFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-mysql-cdc/src/test/java/org/apache/flink/cdc/connectors/mysql/testutils/MetricsUtils.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.mysql.testutils;
19 | 
20 | import org.apache.flink.cdc.connectors.mysql.source.utils.MockMySqlSplitEnumeratorEnumeratorContext;
21 | 
22 | /** The test utils for metrics. */
23 | public class MetricsUtils {
24 |     public static MockMySqlSplitEnumeratorEnumeratorContext getMySqlSplitEnumeratorContext() {
25 |         return new MockMySqlSplitEnumeratorEnumeratorContext(1);
26 |     }
27 | }
28 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-oceanbase-cdc/src/main/java/org/apache/flink/cdc/connectors/oceanbase/utils/OceanBaseUtils.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.oceanbase.utils;
19 | 
20 | /** Utils for OceanBase. */
21 | public class OceanBaseUtils {
22 | 
23 |     public static boolean isOceanBaseDriver(String driverClass) {
24 |         return "com.oceanbase.jdbc.Driver".equals(driverClass)
25 |                 || "com.alipay.oceanbase.jdbc.Driver".equals(driverClass);
26 |     }
27 | }
28 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-oceanbase-cdc/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | # 
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | # 
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.oceanbase.table.OceanBaseTableSourceFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-oracle-cdc/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | # 
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | # 
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.oracle.table.OracleTableSourceFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-postgres-cdc/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | # 
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | # 
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.postgres.table.PostgreSQLTableFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-postgres-cdc/src/test/resources/META-INF/services/org.apache.flink.table.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | # 
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | # 
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.postgres.table.MockPostgreSQLTableFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-sqlserver-cdc/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | # 
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | # 
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.sqlserver.table.SqlServerTableFactory
17 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-sqlserver-cdc/src/test/resources/container-license-acceptance.txt:
--------------------------------------------------------------------------------
1 | mcr.microsoft.com/mssql/server:2019-latest


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-sqlserver-cdc/src/test/resources/ddl/pk.sql:
--------------------------------------------------------------------------------
 1 | -- Licensed to the Apache Software Foundation (ASF) under one or more
 2 | -- contributor license agreements.  See the NOTICE file distributed with
 3 | -- this work for additional information regarding copyright ownership.
 4 | -- The ASF licenses this file to You under the Apache License, Version 2.0
 5 | -- (the "License"); you may not use this file except in compliance with
 6 | -- the License.  You may obtain a copy of the License at
 7 | -- 
 8 | --      http://www.apache.org/licenses/LICENSE-2.0
 9 | -- 
10 | -- Unless required by applicable law or agreed to in writing, software
11 | -- distributed under the License is distributed on an "AS IS" BASIS,
12 | -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | -- See the License for the specific language governing permissions and
14 | -- limitations under the License.
15 | 
16 | CREATE DATABASE pk;
17 | 
18 | USE pk;
19 | EXEC sys.sp_cdc_enable_db;
20 | 
21 | CREATE TABLE dt_pk (
22 |     dt  datetime NOT NULL PRIMARY KEY,
23 |     val INT
24 | );
25 | 
26 | EXEC sys.sp_cdc_enable_table @source_schema = 'dbo', @source_name = 'dt_pk', @role_name = NULL, @supports_net_changes = 0;
27 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-tidb-cdc/src/main/java/org/apache/flink/cdc/connectors/tidb/table/StartupMode.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.tidb.table;
19 | 
20 | /**
21 |  * Startup modes for the TiDB CDC Consumer.
22 |  *
23 |  * @see StartupOptions
24 |  */
25 | public enum StartupMode {
26 |     INITIAL,
27 |     LATEST_OFFSET,
28 | }
29 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-tidb-cdc/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | # 
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | # 
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.tidb.table.TiDBTableSourceFactory


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-vitess-cdc/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory:
--------------------------------------------------------------------------------
 1 |  # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | # 
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | # 
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | org.apache.flink.cdc.connectors.vitess.table.VitessTableFactory


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-vitess-cdc/src/test/resources/ddl/inventory.sql:
--------------------------------------------------------------------------------
 1 | -- Licensed to the Apache Software Foundation (ASF) under one or more
 2 | -- contributor license agreements.  See the NOTICE file distributed with
 3 | -- this work for additional information regarding copyright ownership.
 4 | -- The ASF licenses this file to You under the Apache License, Version 2.0
 5 | -- (the "License"); you may not use this file except in compliance with
 6 | -- the License.  You may obtain a copy of the License at
 7 | -- 
 8 | --      http://www.apache.org/licenses/LICENSE-2.0
 9 | -- 
10 | -- Unless required by applicable law or agreed to in writing, software
11 | -- distributed under the License is distributed on an "AS IS" BASIS,
12 | -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | -- See the License for the specific language governing permissions and
14 | -- limitations under the License.
15 | 
16 | USE
17 | test;
18 | DROP TABLE IF EXISTS products;
19 | CREATE TABLE products (
20 |   id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
21 |   name VARCHAR(255) NOT NULL DEFAULT 'flink',
22 |   description VARCHAR(512),
23 |   weight FLOAT
24 | );
25 | ALTER TABLE products AUTO_INCREMENT = 101;
26 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-db2-cdc/src/main/java/org/apache/flink/cdc/connectors/db2/DummyDocs.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.db2;
19 | 
20 | /** This is used to generate a dummy docs jar for this module to pass OSS repository rule. */
21 | public class DummyDocs {}
22 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-db2-cdc/src/main/resources/META-INF/NOTICE:
--------------------------------------------------------------------------------
 1 | flink-sql-connector-db2-cdc
 2 | Copyright 2024 The Apache Software Foundation
 3 | 
 4 | This product includes software developed at
 5 | The Apache Software Foundation (http://www.apache.org/).
 6 | 
 7 | This project bundles the following dependencies under the Apache Software License 2.0. (http://www.apache.org/licenses/LICENSE-2.0.txt)
 8 | 
 9 | - org.apache.kafka:kafka-clients:2.5.0
10 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-mongodb-cdc/src/main/java/org/apache/flink/cdc/connectors/mongodb/DummyDocs.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.mongodb;
19 | 
20 | /** This is used to generate a dummy docs jar for this module to pass OSS repository rule. */
21 | public class DummyDocs {}
22 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-mongodb-cdc/src/main/resources/META-INF/NOTICE:
--------------------------------------------------------------------------------
 1 | flink-sql-connector-mongodb-cdc
 2 | Copyright 2024 The Apache Software Foundation
 3 | 
 4 | This product includes software developed at
 5 | The Apache Software Foundation (http://www.apache.org/).
 6 | 
 7 | This project bundles the following dependencies under the Apache Software License 2.0. (http://www.apache.org/licenses/LICENSE-2.0.txt)
 8 | 
 9 | - org.apache.kafka:kafka-clients:2.7.0
10 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-mysql-cdc/src/main/java/org/apache/flink/cdc/connectors/mysql/DummyDocs.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.mysql;
19 | 
20 | /** This is used to generate a dummy docs jar for this module to pass OSS repository rule. */
21 | public class DummyDocs {}
22 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-mysql-cdc/src/main/resources/META-INF/NOTICE:
--------------------------------------------------------------------------------
 1 | flink-sql-connector-mysql-cdc
 2 | Copyright 2024 The Apache Software Foundation
 3 | 
 4 | This product includes software developed at
 5 | The Apache Software Foundation (http://www.apache.org/).
 6 | 
 7 | This project bundles the following dependencies under the Apache Software License 2.0. (http://www.apache.org/licenses/LICENSE-2.0.txt)
 8 | 
 9 | - org.apache.kafka:kafka-clients:2.7.0
10 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-oceanbase-cdc/src/main/java/org/apache/flink/cdc/connectors/oceanbase/DummyDocs.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.oceanbase;
19 | 
20 | /** This is used to generate a dummy docs jar for this module to pass OSS repository rule. */
21 | public class DummyDocs {}
22 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-oceanbase-cdc/src/main/resources/META-INF/NOTICE:
--------------------------------------------------------------------------------
 1 | flink-sql-connector-oceanbase-cdc
 2 | Copyright 2024 The Apache Software Foundation
 3 | 
 4 | This product includes software developed at
 5 | The Apache Software Foundation (http://www.apache.org/).
 6 | 
 7 | This project bundles the following dependencies under the Apache Software License 2.0. (http://www.apache.org/licenses/LICENSE-2.0.txt)
 8 | 
 9 | - org.apache.kafka:kafka-clients:2.7.0
10 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-oracle-cdc/src/main/java/org/apache/flink/cdc/connectors/oracle/DummyDocs.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.oracle;
19 | 
20 | /** This is used to generate a dummy docs jar for this module to pass OSS repository rule. */
21 | public class DummyDocs {}
22 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-oracle-cdc/src/main/resources/META-INF/NOTICE:
--------------------------------------------------------------------------------
 1 | flink-sql-connector-oracle-cdc
 2 | Copyright 2024 The Apache Software Foundation
 3 | 
 4 | This product includes software developed at
 5 | The Apache Software Foundation (http://www.apache.org/).
 6 | 
 7 | This project bundles the following dependencies under the Apache Software License 2.0. (http://www.apache.org/licenses/LICENSE-2.0.txt)
 8 | 
 9 | - org.apache.kafka:kafka-clients:2.7.0
10 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-postgres-cdc/src/main/java/org/apache/flink/cdc/connectors/postgres/DummyDocs.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.postgres;
19 | 
20 | /** This is used to generate a dummy docs jar for this module to pass OSS repository rule. */
21 | public class DummyDocs {}
22 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-postgres-cdc/src/main/resources/META-INF/NOTICE:
--------------------------------------------------------------------------------
 1 | flink-sql-connector-postgres-cdc
 2 | Copyright 2024 The Apache Software Foundation
 3 | 
 4 | This product includes software developed at
 5 | The Apache Software Foundation (http://www.apache.org/).
 6 | 
 7 | This project bundles the following dependencies under the Apache Software License 2.0. (http://www.apache.org/licenses/LICENSE-2.0.txt)
 8 | 
 9 | - org.apache.kafka:kafka-clients:2.7.0
10 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-sqlserver-cdc/src/main/java/org/apache/flink/cdc/connectors/sqlserver/DummyDocs.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.sqlserver;
19 | 
20 | /** This is used to generate a dummy docs jar for this module to pass OSS repository rule. */
21 | public class DummyDocs {}
22 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-sqlserver-cdc/src/main/resources/META-INF/NOTICE:
--------------------------------------------------------------------------------
 1 | flink-sql-connector-sqlserver-cdc
 2 | Copyright 2024 The Apache Software Foundation
 3 | 
 4 | This product includes software developed at
 5 | The Apache Software Foundation (http://www.apache.org/).
 6 | 
 7 | This project bundles the following dependencies under the Apache Software License 2.0. (http://www.apache.org/licenses/LICENSE-2.0.txt)
 8 | 
 9 | - org.apache.kafka:kafka-clients:2.7.0
10 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-tidb-cdc/src/main/java/org/apache/flink/cdc/connectors/tidb/DummyDocs.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.tidb;
19 | 
20 | /** This is used to generate a dummy docs jar for this module to pass OSS repository rule. */
21 | public class DummyDocs {}
22 | 


--------------------------------------------------------------------------------
/flink-cdc-connect/flink-cdc-source-connectors/flink-sql-connector-vitess-cdc/src/main/java/org/apache/flink/cdc/connectors/vitess/DummyDocs.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.connectors.vitess;
19 | 
20 | /** This is used to generate a dummy docs jar for this module to pass OSS repository rule. */
21 | public class DummyDocs {}
22 | 


--------------------------------------------------------------------------------
/flink-cdc-dist/src/main/flink-cdc-bin/conf/flink-cdc.yaml:
--------------------------------------------------------------------------------
 1 | ################################################################################
 2 | # Licensed to the Apache Software Foundation (ASF) under one or more
 3 | # contributor license agreements.  See the NOTICE file distributed with
 4 | # this work for additional information regarding copyright ownership.
 5 | # The ASF licenses this file to You under the Apache License, Version 2.0
 6 | # (the "License"); you may not use this file except in compliance with
 7 | # the License.  You may obtain a copy of the License at
 8 | # 
 9 | #      http://www.apache.org/licenses/LICENSE-2.0
10 | # 
11 | # Unless required by applicable law or agreed to in writing, software
12 | # distributed under the License is distributed on an "AS IS" BASIS,
13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 | # See the License for the specific language governing permissions and
15 | # limitations under the License.
16 | ################################################################################
17 | 
18 | # Parallelism of the pipeline
19 | parallelism: 4
20 | 
21 | # Behavior for handling schema change events from source
22 | schema.change.behavior: EVOLVE
23 | 


--------------------------------------------------------------------------------
/flink-cdc-e2e-tests/flink-cdc-pipeline-e2e-tests/src/test/resources/docker/peek-iceberg.sql:
--------------------------------------------------------------------------------
 1 | -- Licensed to the Apache Software Foundation (ASF) under one or more
 2 | -- contributor license agreements.  See the NOTICE file distributed with
 3 | -- this work for additional information regarding copyright ownership.
 4 | -- The ASF licenses this file to You under the Apache License, Version 2.0
 5 | -- (the "License"); you may not use this file except in compliance with
 6 | -- the License.  You may obtain a copy of the License at
 7 | --
 8 | --      http://www.apache.org/licenses/LICENSE-2.0
 9 | --
10 | -- Unless required by applicable law or agreed to in writing, software
11 | -- distributed under the License is distributed on an "AS IS" BASIS,
12 | -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | -- See the License for the specific language governing permissions and
14 | -- limitations under the License.
15 | 
16 | -- Format this file with the following arguments:
17 | -- Warehouse Path, Database Name, and Table Name.
18 | 
19 | SET 'sql-client.execution.result-mode' = 'tableau';
20 | SET 'table.display.max-column-width' = '100000';
21 | SET 'execution.runtime-mode' = 'batch';
22 | 
23 | CREATE CATALOG iceberg_catalog WITH (
24 |   'type' = 'iceberg',
25 |   'warehouse' = '%s',
26 |   'cache-enabled' = 'false'
27 | );
28 | 
29 | SELECT * FROM iceberg_catalog.%s.%s;


--------------------------------------------------------------------------------
/flink-cdc-e2e-tests/flink-cdc-pipeline-e2e-tests/src/test/resources/docker/peek-paimon.sql:
--------------------------------------------------------------------------------
 1 | -- Licensed to the Apache Software Foundation (ASF) under one or more
 2 | -- contributor license agreements.  See the NOTICE file distributed with
 3 | -- this work for additional information regarding copyright ownership.
 4 | -- The ASF licenses this file to You under the Apache License, Version 2.0
 5 | -- (the "License"); you may not use this file except in compliance with
 6 | -- the License.  You may obtain a copy of the License at
 7 | --
 8 | --      http://www.apache.org/licenses/LICENSE-2.0
 9 | --
10 | -- Unless required by applicable law or agreed to in writing, software
11 | -- distributed under the License is distributed on an "AS IS" BASIS,
12 | -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | -- See the License for the specific language governing permissions and
14 | -- limitations under the License.
15 | 
16 | -- Format this file with the following arguments:
17 | -- Warehouse Path, Database Name, and Table Name.
18 | 
19 | SET 'sql-client.execution.result-mode' = 'tableau';
20 | SET 'table.display.max-column-width' = '100000';
21 | SET 'execution.runtime-mode' = 'batch';
22 | 
23 | CREATE CATALOG paimon_catalog WITH (
24 |   'type' = 'paimon',
25 |   'warehouse' = '%s'
26 | );
27 | 
28 | SELECT * FROM paimon_catalog.%s.%s;


--------------------------------------------------------------------------------
/flink-cdc-e2e-tests/flink-cdc-source-e2e-tests/src/test/resources/container-license-acceptance.txt:
--------------------------------------------------------------------------------
1 | mcr.microsoft.com/mssql/server:2019-latest


--------------------------------------------------------------------------------
/flink-cdc-e2e-tests/flink-cdc-source-e2e-tests/src/test/resources/ddl/vitess_inventory.sql:
--------------------------------------------------------------------------------
 1 | -- Licensed to the Apache Software Foundation (ASF) under one or more
 2 | -- contributor license agreements.  See the NOTICE file distributed with
 3 | -- this work for additional information regarding copyright ownership.
 4 | -- The ASF licenses this file to You under the Apache License, Version 2.0
 5 | -- (the "License"); you may not use this file except in compliance with
 6 | -- the License.  You may obtain a copy of the License at
 7 | -- 
 8 | --      http://www.apache.org/licenses/LICENSE-2.0
 9 | -- 
10 | -- Unless required by applicable law or agreed to in writing, software
11 | -- distributed under the License is distributed on an "AS IS" BASIS,
12 | -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | -- See the License for the specific language governing permissions and
14 | -- limitations under the License.
15 | 
16 | USE
17 | test;
18 | DROP TABLE IF EXISTS products;
19 | CREATE TABLE products (
20 |       id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
21 |       name VARCHAR(255) NOT NULL DEFAULT 'flink',
22 |       description VARCHAR(512),
23 |       weight FLOAT
24 | );
25 | ALTER TABLE products AUTO_INCREMENT = 101;
26 | 


--------------------------------------------------------------------------------
/flink-cdc-e2e-tests/flink-cdc-source-e2e-tests/src/test/resources/docker/db2/asncdc_UDF.sql:
--------------------------------------------------------------------------------
 1 | -- Licensed to the Apache Software Foundation (ASF) under one or more
 2 | -- contributor license agreements.  See the NOTICE file distributed with
 3 | -- this work for additional information regarding copyright ownership.
 4 | -- The ASF licenses this file to You under the Apache License, Version 2.0
 5 | -- (the "License"); you may not use this file except in compliance with
 6 | -- the License.  You may obtain a copy of the License at
 7 | -- 
 8 | --      http://www.apache.org/licenses/LICENSE-2.0
 9 | -- 
10 | -- Unless required by applicable law or agreed to in writing, software
11 | -- distributed under the License is distributed on an "AS IS" BASIS,
12 | -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | -- See the License for the specific language governing permissions and
14 | -- limitations under the License.
15 | 
16 | DROP SPECIFIC FUNCTION ASNCDC.asncdcservice;
17 | 
18 | CREATE FUNCTION ASNCDC.ASNCDCSERVICES(command VARCHAR(6), service VARCHAR(8))
19 |    RETURNS CLOB(100K)
20 |    SPECIFIC asncdcservice
21 |    EXTERNAL NAME 'asncdc!asncdcservice'
22 |    LANGUAGE C
23 |    PARAMETER STYLE SQL
24 |    DBINFO
25 |    DETERMINISTIC
26 |    NOT FENCED
27 |    RETURNS NULL ON NULL INPUT
28 |    NO SQL
29 |    NO EXTERNAL ACTION
30 |    NO SCRATCHPAD
31 |    ALLOW PARALLEL
32 |    NO FINAL CALL;
33 | 


--------------------------------------------------------------------------------
/flink-cdc-e2e-tests/flink-cdc-source-e2e-tests/src/test/resources/docker/db2/cdcsetup.sh:
--------------------------------------------------------------------------------
 1 | #/bin/bash
 2 | ################################################################################
 3 | # Licensed to the Apache Software Foundation (ASF) under one or more
 4 | # contributor license agreements.  See the NOTICE file distributed with
 5 | # this work for additional information regarding copyright ownership.
 6 | # The ASF licenses this file to You under the Apache License, Version 2.0
 7 | # (the "License"); you may not use this file except in compliance with
 8 | # the License.  You may obtain a copy of the License at
 9 | # 
10 | #      http://www.apache.org/licenses/LICENSE-2.0
11 | # 
12 | # Unless required by applicable law or agreed to in writing, software
13 | # distributed under the License is distributed on an "AS IS" BASIS,
14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 | # See the License for the specific language governing permissions and
16 | # limitations under the License.
17 | ################################################################################
18 | 
19 | if [ ! -f /asncdctools/src/asncdc.nlk ]; then
20 | rc=1
21 | echo "waiting for db2inst1 exists ."
22 | while [ "$rc" -ne 0 ]
23 | do
24 |    sleep 5
25 |    id db2inst1
26 |    rc=$?
27 |    echo '.'
28 | done
29 | 
30 | su  -c "/asncdctools/src/dbsetup.sh $DBNAME"   - db2inst1
31 | fi
32 | touch /asncdctools/src/asncdc.nlk
33 | 
34 | echo "The asncdc program enable finished"
35 | 


--------------------------------------------------------------------------------
/flink-cdc-e2e-tests/flink-cdc-source-e2e-tests/src/test/resources/docker/db2/startup-agent.sql:
--------------------------------------------------------------------------------
 1 | -- Licensed to the Apache Software Foundation (ASF) under one or more
 2 | -- contributor license agreements.  See the NOTICE file distributed with
 3 | -- this work for additional information regarding copyright ownership.
 4 | -- The ASF licenses this file to You under the Apache License, Version 2.0
 5 | -- (the "License"); you may not use this file except in compliance with
 6 | -- the License.  You may obtain a copy of the License at
 7 | -- 
 8 | --      http://www.apache.org/licenses/LICENSE-2.0
 9 | -- 
10 | -- Unless required by applicable law or agreed to in writing, software
11 | -- distributed under the License is distributed on an "AS IS" BASIS,
12 | -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | -- See the License for the specific language governing permissions and
14 | -- limitations under the License.
15 | 
16 | VALUES ASNCDC.ASNCDCSERVICES('start','asncdc');
17 | 


--------------------------------------------------------------------------------
/flink-cdc-pipeline-udf-examples/src/main/java/org/apache/flink/cdc/udf/examples/java/AddOneFunctionClass.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.udf.examples.java;
19 | 
20 | import org.apache.flink.cdc.common.udf.UserDefinedFunction;
21 | 
22 | /** This is an example UDF class for testing purposes only. */
23 | public class AddOneFunctionClass implements UserDefinedFunction {
24 |     public String eval(Integer num) {
25 |         return String.valueOf(num + 1);
26 |     }
27 | 
28 |     public String eval(String num) {
29 |         return String.valueOf(Integer.parseInt(num) + 1);
30 |     }
31 | }
32 | 


--------------------------------------------------------------------------------
/flink-cdc-pipeline-udf-examples/src/main/java/org/apache/flink/cdc/udf/examples/java/FormatFunctionClass.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.udf.examples.java;
19 | 
20 | import org.apache.flink.cdc.common.udf.UserDefinedFunction;
21 | 
22 | /** This is an example UDF class for testing purposes only. */
23 | public class FormatFunctionClass implements UserDefinedFunction {
24 |     public String eval(String format, Object... args) {
25 |         return String.format(format, args);
26 |     }
27 | }
28 | 


--------------------------------------------------------------------------------
/flink-cdc-pipeline-udf-examples/src/main/java/org/apache/flink/udf/examples/java/AddOneFunctionClass.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.udf.examples.java;
19 | 
20 | import org.apache.flink.table.functions.ScalarFunction;
21 | 
22 | /** This is an example Flink UDF class for testing purposes only. */
23 | public class AddOneFunctionClass extends ScalarFunction {
24 |     public String eval(Integer num) {
25 |         return String.valueOf(num + 1);
26 |     }
27 | 
28 |     public String eval(String num) {
29 |         return String.valueOf(Integer.parseInt(num) + 1);
30 |     }
31 | }
32 | 


--------------------------------------------------------------------------------
/flink-cdc-pipeline-udf-examples/src/main/java/org/apache/flink/udf/examples/java/FormatFunctionClass.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.udf.examples.java;
19 | 
20 | import org.apache.flink.table.functions.ScalarFunction;
21 | 
22 | /** This is an example UDF class for testing purposes only. */
23 | public class FormatFunctionClass extends ScalarFunction {
24 |     public String eval(String format, Object... args) {
25 |         return String.format(format, args);
26 |     }
27 | }
28 | 


--------------------------------------------------------------------------------
/flink-cdc-pipeline-udf-examples/src/main/scala/org/apache/flink/cdc/udf/examples/scala/AddOneFunctionClass.scala:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.udf.examples.scala
19 | 
20 | import org.apache.flink.cdc.common.udf.UserDefinedFunction
21 | 
22 | /** This is an example UDF class for testing purposes only. */
23 | class AddOneFunctionClass extends UserDefinedFunction {
24 |   def eval(num: Integer): String = (num + 1).toString
25 | 
26 |   def eval(num: String): String = (num.toInt + 1).toString
27 | }
28 | 


--------------------------------------------------------------------------------
/flink-cdc-pipeline-udf-examples/src/main/scala/org/apache/flink/cdc/udf/examples/scala/FormatFunctionClass.scala:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.udf.examples.scala
19 | 
20 | import org.apache.flink.cdc.common.udf.UserDefinedFunction
21 | 
22 | import scala.annotation.varargs
23 | 
24 | /** This is an example UDF class for testing purposes only. */
25 | class FormatFunctionClass extends UserDefinedFunction {
26 |   @varargs def eval(format: String, args: Object*): String = String.format(format, args: _*)
27 | }
28 | 


--------------------------------------------------------------------------------
/flink-cdc-pipeline-udf-examples/src/main/scala/org/apache/flink/cdc/udf/examples/scala/precision/BinaryTypeReturningClass.scala:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.udf.examples.scala.precision
19 | 
20 | import org.apache.flink.cdc.common.types.DataType
21 | import org.apache.flink.cdc.common.types.DataTypes
22 | import org.apache.flink.cdc.common.udf.UserDefinedFunction
23 | 
24 | /** This is an example UDF class for testing purposes only. */
25 | class BinaryTypeReturningClass extends UserDefinedFunction {
26 |   override def getReturnType: DataType = DataTypes.BINARY(17)
27 |   def eval: Array[Byte] = "xyzzy".getBytes
28 | }
29 | 


--------------------------------------------------------------------------------
/flink-cdc-pipeline-udf-examples/src/main/scala/org/apache/flink/cdc/udf/examples/scala/precision/CharTypeReturningClass.scala:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.udf.examples.scala.precision
19 | 
20 | import org.apache.flink.cdc.common.types.DataType
21 | import org.apache.flink.cdc.common.types.DataTypes
22 | import org.apache.flink.cdc.common.udf.UserDefinedFunction
23 | 
24 | /** This is an example UDF class for testing purposes only. */
25 | class CharTypeReturningClass extends UserDefinedFunction {
26 |   override def getReturnType: DataType = DataTypes.CHAR(17)
27 |   def eval = "This is a string."
28 | }
29 | 


--------------------------------------------------------------------------------
/flink-cdc-pipeline-udf-examples/src/main/scala/org/apache/flink/cdc/udf/examples/scala/precision/VarCharTypeReturningClass.scala:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.udf.examples.scala.precision
19 | 
20 | import org.apache.flink.cdc.common.types.DataType
21 | import org.apache.flink.cdc.common.types.DataTypes
22 | import org.apache.flink.cdc.common.udf.UserDefinedFunction
23 | 
24 | /** This is an example UDF class for testing purposes only. */
25 | class VarCharTypeReturningClass extends UserDefinedFunction {
26 |   override def getReturnType: DataType = DataTypes.VARCHAR(17)
27 |   def eval = "This is a string."
28 | }
29 | 


--------------------------------------------------------------------------------
/flink-cdc-pipeline-udf-examples/src/main/scala/org/apache/flink/udf/examples/scala/AddOneFunctionClass.scala:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.udf.examples.scala
19 | 
20 | import org.apache.flink.table.functions.ScalarFunction
21 | 
22 | /** This is an example Flink UDF class for testing purposes only. */
23 | class AddOneFunctionClass extends ScalarFunction {
24 |   def eval(num: Integer): String = (num + 1).toString
25 | 
26 |   def eval(num: String): String = (num.toInt + 1).toString
27 | }
28 | 


--------------------------------------------------------------------------------
/flink-cdc-pipeline-udf-examples/src/main/scala/org/apache/flink/udf/examples/scala/FormatFunctionClass.scala:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.udf.examples.scala
19 | 
20 | import org.apache.flink.table.functions.ScalarFunction
21 | 
22 | import scala.annotation.varargs
23 | 
24 | /** This is an example UDF class for testing purposes only. */
25 | class FormatFunctionClass extends ScalarFunction {
26 |   @varargs def eval(format: String, args: Object*): String = String.format(format, args: _*)
27 | }
28 | 


--------------------------------------------------------------------------------
/flink-cdc-runtime/src/main/java/org/apache/flink/cdc/runtime/partitioning/PartitioningEventKeySelector.java:
--------------------------------------------------------------------------------
 1 | /*
 2 |  * Licensed to the Apache Software Foundation (ASF) under one or more
 3 |  * contributor license agreements.  See the NOTICE file distributed with
 4 |  * this work for additional information regarding copyright ownership.
 5 |  * The ASF licenses this file to You under the Apache License, Version 2.0
 6 |  * (the "License"); you may not use this file except in compliance with
 7 |  * the License.  You may obtain a copy of the License at
 8 |  *
 9 |  *      http://www.apache.org/licenses/LICENSE-2.0
10 |  *
11 |  * Unless required by applicable law or agreed to in writing, software
12 |  * distributed under the License is distributed on an "AS IS" BASIS,
13 |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 |  * See the License for the specific language governing permissions and
15 |  * limitations under the License.
16 |  */
17 | 
18 | package org.apache.flink.cdc.runtime.partitioning;
19 | 
20 | import org.apache.flink.api.java.functions.KeySelector;
21 | import org.apache.flink.cdc.common.annotation.Internal;
22 | 
23 | /** Key selector for {@link PartitioningEvent}. */
24 | @Internal
25 | public class PartitioningEventKeySelector implements KeySelector<PartitioningEvent, Integer> {
26 |     @Override
27 |     public Integer getKey(PartitioningEvent event) {
28 |         return event.getTargetPartition();
29 |     }
30 | }
31 | 


--------------------------------------------------------------------------------
/tools/cdcup/Dockerfile:
--------------------------------------------------------------------------------
 1 | # Licensed to the Apache Software Foundation (ASF) under one or more
 2 | # contributor license agreements.  See the NOTICE file distributed with
 3 | # this work for additional information regarding copyright ownership.
 4 | # The ASF licenses this file to You under the Apache License, Version 2.0
 5 | # (the "License"); you may not use this file except in compliance with
 6 | # the License.  You may obtain a copy of the License at
 7 | #
 8 | #      http://www.apache.org/licenses/LICENSE-2.0
 9 | #
10 | # Unless required by applicable law or agreed to in writing, software
11 | # distributed under the License is distributed on an "AS IS" BASIS,
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | # See the License for the specific language governing permissions and
14 | # limitations under the License.
15 | 
16 | FROM ruby:3.3-slim
17 | 
18 | WORKDIR /src
19 | RUN apt-get update && apt-get install -y wget
20 | RUN gem install tty-prompt
21 | COPY src /src
22 | RUN chmod +x /src/app.rb
23 | ENTRYPOINT ["/src/app.rb"]
24 | 


--------------------------------------------------------------------------------
/tools/cdcup/README.md:
--------------------------------------------------------------------------------
 1 | # cdcup
 2 | 
 3 | A `docker` (`compose`) environment on Linux / macOS is required to play with this. Ruby is **not** necessary.
 4 | 
 5 | ## `./cdcup.sh init`
 6 | 
 7 | Initialize a playground environment, and generate configuration files.
 8 | 
 9 | ## `./cdcup.sh up`
10 | 
11 | Start docker containers. Note that it may take a while before database is ready.
12 | 
13 | ## `./cdcup.sh pipeline <yaml>`
14 | 
15 | Submit a YAML pipeline job. Before executing this, please ensure that:
16 | 
17 | 1. All container are running and ready for connections
18 | 2. (For MySQL) You've created at least one database & tables to be captured
19 | 
20 | ## `./cdcup.sh flink`
21 | 
22 | Print Flink Web dashboard URL.
23 | 
24 | ## `./cdcup.sh stop`
25 | 
26 | Stop all running playground containers.
27 | 
28 | ## `./cdcup.sh down`
29 | 
30 | Stop and remove containers, networks, and volumes.
31 | 


--------------------------------------------------------------------------------
/tools/cdcup/src/sink/paimon.rb:
--------------------------------------------------------------------------------
 1 | # frozen_string_literal: true
 2 | #
 3 | # Licensed to the Apache Software Foundation (ASF) under one or more
 4 | # contributor license agreements.  See the NOTICE file distributed with
 5 | # this work for additional information regarding copyright ownership.
 6 | # The ASF licenses this file to You under the Apache License, Version 2.0
 7 | # (the "License"); you may not use this file except in compliance with
 8 | # the License.  You may obtain a copy of the License at
 9 | #
10 | #      http://www.apache.org/licenses/LICENSE-2.0
11 | #
12 | # Unless required by applicable law or agreed to in writing, software
13 | # distributed under the License is distributed on an "AS IS" BASIS,
14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 | # See the License for the specific language governing permissions and
16 | # limitations under the License.
17 | #
18 | # Paimon sink definition generator class.
19 | class Paimon
20 |   class << self
21 |     def connector_name
22 |       'flink-cdc-pipeline-connector-paimon'
23 |     end
24 | 
25 |     # Nothing to do
26 |     def prepend_to_docker_compose_yaml(_); end
27 | 
28 |     def prepend_to_pipeline_yaml(pipeline_yaml)
29 |       pipeline_yaml['sink'] = {
30 |         'type' => 'paimon',
31 |         'catalog.properties.metastore' => 'filesystem',
32 |         'catalog.properties.warehouse' => '/data/paimon-warehouse'
33 |       }
34 |     end
35 |   end
36 | end
37 | 


--------------------------------------------------------------------------------
/tools/cdcup/src/sink/values_sink.rb:
--------------------------------------------------------------------------------
 1 | # frozen_string_literal: true
 2 | #
 3 | # Licensed to the Apache Software Foundation (ASF) under one or more
 4 | # contributor license agreements.  See the NOTICE file distributed with
 5 | # this work for additional information regarding copyright ownership.
 6 | # The ASF licenses this file to You under the Apache License, Version 2.0
 7 | # (the "License"); you may not use this file except in compliance with
 8 | # the License.  You may obtain a copy of the License at
 9 | #
10 | #      http://www.apache.org/licenses/LICENSE-2.0
11 | #
12 | # Unless required by applicable law or agreed to in writing, software
13 | # distributed under the License is distributed on an "AS IS" BASIS,
14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 | # See the License for the specific language governing permissions and
16 | # limitations under the License.
17 | #
18 | # Values sink definition generator class.
19 | class ValuesSink
20 |   class << self
21 |     def connector_name
22 |       'flink-cdc-pipeline-connector-values'
23 |     end
24 | 
25 |     # Nothing to do
26 |     def prepend_to_docker_compose_yaml(_); end
27 | 
28 |     def prepend_to_pipeline_yaml(pipeline_yaml)
29 |       pipeline_yaml['sink'] = {
30 |         'type' => 'values'
31 |       }
32 |     end
33 |   end
34 | end
35 | 


--------------------------------------------------------------------------------
/tools/cdcup/src/source/values_source.rb:
--------------------------------------------------------------------------------
 1 | # frozen_string_literal: true
 2 | #
 3 | # Licensed to the Apache Software Foundation (ASF) under one or more
 4 | # contributor license agreements.  See the NOTICE file distributed with
 5 | # this work for additional information regarding copyright ownership.
 6 | # The ASF licenses this file to You under the Apache License, Version 2.0
 7 | # (the "License"); you may not use this file except in compliance with
 8 | # the License.  You may obtain a copy of the License at
 9 | #
10 | #      http://www.apache.org/licenses/LICENSE-2.0
11 | #
12 | # Unless required by applicable law or agreed to in writing, software
13 | # distributed under the License is distributed on an "AS IS" BASIS,
14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 | # See the License for the specific language governing permissions and
16 | # limitations under the License.
17 | 
18 | # Values source definition generator class.
19 | class ValuesSource
20 |   class << self
21 |     def connector_name
22 |       'flink-cdc-pipeline-connector-values'
23 |     end
24 | 
25 |     # Nothing to do
26 |     def prepend_to_docker_compose_yaml(_); end
27 | 
28 |     def prepend_to_pipeline_yaml(pipeline_yaml)
29 |       pipeline_yaml['source'] = {
30 |         'type' => 'values',
31 |         'event-set.id' => 'SINGLE_SPLIT_MULTI_TABLES'
32 |       }
33 |     end
34 |   end
35 | end
36 | 


--------------------------------------------------------------------------------