close
Skip to content

[Feature][Connector-V2] Support multi-table sink feature for ClickHouse#9301

Merged
hailin0 merged 7 commits into
apache:devfrom
mrtisttt:support-ck-multi-table-sink
May 13, 2025
Merged

[Feature][Connector-V2] Support multi-table sink feature for ClickHouse#9301
hailin0 merged 7 commits into
apache:devfrom
mrtisttt:support-ck-multi-table-sink

Conversation

@mrtisttt

Copy link
Copy Markdown
Contributor

Purpose of this pull request

[Feature][ClickHouse] Support multi-table sink feature #5652

Does this PR introduce any user-facing change?

No, just a new feature of multi-table sink for clickhouse.

How was this patch tested?

Add a new e2e test case.

Check list

mrtisttt added 3 commits May 10, 2025 14:42
…CA` optional into the `optionRule` method optional of `ClickhouseSinkFactory`
@hailin0 hailin0 requested a review from Copilot May 11, 2025 14:26

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds support for the multi-table sink feature for ClickHouse by enhancing the connector implementation, updating configurations, tests, and documentation.

  • Introduces a new test resource and accompanying end-to-end test case for multi-table sink.
  • Enhances the ClickHouse connector by implementing the multi-table sink interfaces.
  • Updates both Chinese and English documentation with examples and usage details for the new feature.

Reviewed Changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-clickhouse-e2e/src/test/resources/fake_to_clickhouse_with_multi_table.conf New configuration file for multi-table sink testing
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-clickhouse-e2e/src/test/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/ClickhouseIT.java Added an end-to-end test case for multi-table sink support
seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/sink/client/ClickhouseSinkWriter.java Updated to implement the SupportMultiTableSinkWriter interface
seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/sink/client/ClickhouseSinkFactory.java Extended the OptionRule to include the new multi-table sink option
seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/sink/client/ClickhouseSink.java Updated to implement the SupportMultiTableSink interface and adjust writer creation accordingly
docs/{zh,en}/connector-v2/sink/Clickhouse.md Updated documentation with new examples and configuration details for multi-table sink
Comments suppressed due to low confidence (1)

seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/sink/client/ClickhouseSinkFactory.java:80

  • [nitpick] Verify if the addition of MULTI_TABLE_SINK_REPLICA in the option rule is sufficiently documented or if further options are required to fully support multi-table routing in various deployment scenarios.
SAVE_MODE_CREATE_TEMPLATE, SinkConnectorCommonOptions.MULTI_TABLE_SINK_REPLICA)

@mrtisttt mrtisttt requested a review from Hisoka-X May 12, 2025 06:56
@mrtisttt mrtisttt requested a review from Hisoka-X May 12, 2025 19:13

@Hisoka-X Hisoka-X left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM if ci passes.

@hailin0 hailin0 merged commit 3524895 into apache:dev May 13, 2025
@mrtisttt mrtisttt deleted the support-ck-multi-table-sink branch June 10, 2025 20:04
dybyte pushed a commit to dybyte/seatunnel that referenced this pull request Jul 23, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants