Skip to content

ticdc: add new doc for TiCDC data replication capabilities (#20967) (#21019) #21024

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
May 23, 2025

Conversation

ti-chi-bot
Copy link
Member

This is an automated cherry-pick of #21019

This is an automated cherry-pick of #20967

First-time contributors' checklist

What is changed, added or deleted? (Required)

Which TiDB version(s) do your changes apply to? (Required)

Tips for choosing the affected version(s):

By default, CHOOSE MASTER ONLY so your changes will be applied to the next TiDB major or minor releases. If your PR involves a product feature behavior change or a compatibility change, CHOOSE THE AFFECTED RELEASE BRANCH(ES) AND MASTER.

For details, see tips for choosing the affected versions.

  • master (the latest development version)
  • v9.0 (TiDB 9.0 versions)
  • v8.5 (TiDB 8.5 versions)
  • v8.4 (TiDB 8.4 versions)
  • v8.3 (TiDB 8.3 versions)
  • v8.1 (TiDB 8.1 versions)
  • v7.5 (TiDB 7.5 versions)
  • v7.1 (TiDB 7.1 versions)
  • v6.5 (TiDB 6.5 versions)
  • v6.1 (TiDB 6.1 versions)
  • v5.4 (TiDB 5.4 versions)

What is the related PR or file link(s)?

Do your changes match any of the following descriptions?

  • Delete files
  • Change aliases
  • Need modification after applied to another branch
  • Might cause conflicts after applied to another branch

@ti-chi-bot ti-chi-bot added area/ticdc Indicates that the Issue or PR belongs to the area of TiCDC. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. lgtm needs-1-more-lgtm Indicates a PR needs 1 more LGTM. ONCALL Relates to documentation oncall. size/M Denotes a PR that changes 30-99 lines, ignoring generated files. type/cherry-pick-for-master This PR is cherry-picked to master from a source PR. type/cherry-pick-for-release-8.5 This PR is cherry-picked to release-8.5 from a source PR. type/enhancement The issue or PR belongs to an enhancement. labels May 23, 2025
@ti-chi-bot ti-chi-bot self-assigned this May 23, 2025
@ti-chi-bot
Copy link
Member Author

@ti-chi-bot This PR has conflicts, I have hold it.
Please resolve them or ask others to resolve them, then comment /unhold to remove the hold label.

@ti-chi-bot ti-chi-bot bot added size/S Denotes a PR that changes 10-29 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels May 23, 2025
Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Hello @ti-chi-bot, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

Summary of Changes

Hello team, gemini-code-assist here to provide a summary of this pull request. This PR, authored by ti-chi-bot and created via an automated cherry-pick of PRs #20967 and #21019, aims to enhance the TiCDC documentation. The primary goal is to add a new document specifically detailing TiCDC's data replication capabilities and to update the existing overview document to reference this new content. It's important to note that the automated cherry-pick process introduced merge conflicts in both modified files, which are visible in the patch and will need to be resolved.

Highlights

  • New Documentation Added: A new markdown file (ticdc/ticdc-data-replication-capabilities.md) has been added to the documentation set. This file is intended to provide a dedicated and detailed explanation of what types of data changes TiCDC can replicate.
  • Overview Document Updated: The existing TiCDC overview document (ticdc/ticdc-overview.md) has been modified to include a link pointing readers to the newly added documentation on data replication capabilities. The link to the TiCDC GitHub repository was also updated.
  • Merge Conflicts Present: Due to the automated cherry-pick process, both ticdc/ticdc-data-replication-capabilities.md and ticdc/ticdc-overview.md contain merge conflict markers (<<<<<<<, =======, >>>>>>>). These conflicts need to be manually resolved before the PR can be merged.

Changelog

  • ticdc/ticdc-data-replication-capabilities.md
    • Adds content describing supported DDL and DML statements, including handling of index operations and foreign key constraints.
    • Adds content listing unsupported data changes, such as temporary tables and DQL/DCL statements.
    • Includes merge conflict markers around the description of supported statements (lines 35-39 in the right-hand side of the diff).
    • Includes merge conflict markers around the 'Limitations' heading (lines 49-53 in the right-hand side of the diff).
  • ticdc/ticdc-overview.md
    • Updates the link to the TiCDC GitHub repository from tree/master to tree/release-8.5 (lines 10-13 in the right-hand side of the diff).
    • Adds a link to the new TiCDC Data Replication Capabilities document (lines 10 and 12 in the right-hand side of the diff).
    • Includes merge conflict markers around the updated link and the reference to the new document (lines 9-13 in the right-hand side of the diff).
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist is currently in preview and may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments to provide feedback.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request aims to update documentation for TiCDC data replication capabilities. However, the current changes have introduced merge conflict markers into the Markdown files (ticdc/ticdc-data-replication-capabilities.md and ticdc/ticdc-overview.md). These conflicts must be resolved before the PR can be merged, as they prevent the documents from rendering correctly and make the content unreadable.

Once the conflicts are addressed, the intended changes appear to be minor textual adjustments. Please resolve the conflicts, ensuring the correct content is chosen for each conflicting section.

Summary of Findings

  • Merge Conflict Markers: Critical merge conflict markers are present in ticdc/ticdc-data-replication-capabilities.md and ticdc/ticdc-overview.md. These must be resolved by removing the markers and choosing the correct version of the conflicting content.
  • Punctuation and Spacing: A conflict in ticdc/ticdc-data-replication-capabilities.md highlighted a missing space before a parenthesis. The suggested resolution improves readability and adheres to standard punctuation.
  • Invisible Characters: A heading in ticdc/ticdc-data-replication-capabilities.md contained a trailing zero-width space within a conflict. This has been addressed in the suggested resolution.
  • URL Inconsistency in Merge Conflict: A merge conflict in ticdc/ticdc-overview.md involves two different GitHub URLs. The author needs to select the appropriate URL for the intended branches.

Merge Readiness

This pull request cannot be merged in its current state due to the presence of critical merge conflict markers in the documentation files. These markers prevent the documents from rendering correctly and make the content ambiguous. The author must resolve these conflicts first.

Once the conflicts are resolved, the intended changes appear to be minor. However, due to the critical nature of the existing issues, I recommend that these changes be made before the PR is considered for merging. As a reviewer, I am not authorized to approve pull requests, but addressing these conflicts is essential for the PR's viability.

Comment on lines 35 to 39
<<<<<<< HEAD
- DDL and DML statements(excluding system tables).
=======
- DDL and DML statements (excluding system tables).
>>>>>>> 4687444356 (ticdc: add new doc for TiCDC data replication capabilities (#20967) (#21019))

Choose a reason for hiding this comment

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

critical

There are merge conflict markers (<<<<<<< HEAD, =======, >>>>>>>) in this section. These need to be removed.

Between the two conflicting versions:

  1. DDL and DML statements(excluding system tables).
  2. DDL and DML statements (excluding system tables).

The second version, which includes a space before the opening parenthesis (excluding system tables), is preferred for better readability and standard punctuation.1

Please resolve the conflict by removing the markers and using the corrected line.

Style Guide References

Suggested change
<<<<<<< HEAD
- DDL and DML statements(excluding system tables).
=======
- DDL and DML statements (excluding system tables).
>>>>>>> 4687444356 (ticdc: add new doc for TiCDC data replication capabilities (#20967) (#21019))
- DDL and DML statements (excluding system tables).

Footnotes

  1. Style guide mandates correcting punctuation mistakes. Adding a space before an opening parenthesis when it follows a word improves readability and is standard practice. (link)

Comment on lines 49 to 53
<<<<<<< HEAD
## Limitations​
=======
## Limitations
>>>>>>> 4687444356 (ticdc: add new doc for TiCDC data replication capabilities (#20967) (#21019))

Choose a reason for hiding this comment

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

critical

This section contains merge conflict markers (<<<<<<< HEAD, =======, >>>>>>>). These must be resolved.

One of the conflicting lines for the heading is ## Limitations​ which appears to have a zero-width space character at the end. The other version is ## Limitations.
The version without the trailing zero-width space (## Limitations) is cleaner and preferred to avoid potential rendering or processing issues.1

Please remove the conflict markers and the zero-width space.

Style Guide References

Suggested change
<<<<<<< HEAD
## Limitations​
=======
## Limitations
>>>>>>> 4687444356 (ticdc: add new doc for TiCDC data replication capabilities (#20967) (#21019))
## Limitations

Footnotes

  1. Style guide mandates correcting mistakes. Zero-width spaces can be considered mistakes as they can cause unexpected behavior and affect readability or machine processing. (link)

Comment on lines 9 to 13
<<<<<<< HEAD
[TiCDC](https://github.com/pingcap/tiflow/tree/master/cdc) is a tool used to replicate incremental data from TiDB. Specifically, TiCDC pulls TiKV change logs, sorts captured data, and exports row-based incremental data to downstream databases. For detailed data replication capabilities, see [TiCDC Data Replication Capabilities](/ticdc/ticdc-data-replication-capabilities.md).
=======
[TiCDC](https://github.com/pingcap/tiflow/tree/release-8.5/cdc) is a tool used to replicate incremental data from TiDB. Specifically, TiCDC pulls TiKV change logs, sorts captured data, and exports row-based incremental data to downstream databases. For detailed data replication capabilities, see [TiCDC Data Replication Capabilities](/ticdc/ticdc-data-replication-capabilities.md).
>>>>>>> 4687444356 (ticdc: add new doc for TiCDC data replication capabilities (#20967) (#21019))

Choose a reason for hiding this comment

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

critical

Merge conflict markers (<<<<<<< HEAD, =======, >>>>>>>) are present here, indicating a conflict in the URL for the TiCDC GitHub link.

The conflicting links are:

  1. https://github.com/pingcap/tiflow/tree/master/cdc
  2. https://github.com/pingcap/tiflow/tree/release-8.5/cdc

These markers must be removed. For documentation that applies to multiple versions including master, linking to the master branch (https://github.com/pingcap/tiflow/tree/master/cdc) is often preferred as it points to the latest development. However, since this is a cherry-pick and targets multiple versions including v8.5, please confirm the correct link to use. If this file instance is for the master branch, the master link is suggested. If different links are needed for different branches, this should be handled by the branching/cherry-pick process rather than having conflicts in the file.

Assuming the master link is appropriate for the primary target of this PR:

Suggested change
<<<<<<< HEAD
[TiCDC](https://github.com/pingcap/tiflow/tree/master/cdc) is a tool used to replicate incremental data from TiDB. Specifically, TiCDC pulls TiKV change logs, sorts captured data, and exports row-based incremental data to downstream databases. For detailed data replication capabilities, see [TiCDC Data Replication Capabilities](/ticdc/ticdc-data-replication-capabilities.md).
=======
[TiCDC](https://github.com/pingcap/tiflow/tree/release-8.5/cdc) is a tool used to replicate incremental data from TiDB. Specifically, TiCDC pulls TiKV change logs, sorts captured data, and exports row-based incremental data to downstream databases. For detailed data replication capabilities, see [TiCDC Data Replication Capabilities](/ticdc/ticdc-data-replication-capabilities.md).
>>>>>>> 4687444356 (ticdc: add new doc for TiCDC data replication capabilities (#20967) (#21019))
[TiCDC](https://github.com/pingcap/tiflow/tree/master/cdc) is a tool used to replicate incremental data from TiDB. Specifically, TiCDC pulls TiKV change logs, sorts captured data, and exports row-based incremental data to downstream databases. For detailed data replication capabilities, see [TiCDC Data Replication Capabilities](/ticdc/ticdc-data-replication-capabilities.md).

Copy link

ti-chi-bot bot commented May 23, 2025

@gemini-code-assist[bot]: adding LGTM is restricted to approvers and reviewers in OWNERS files.

In response to this:

Code Review

This pull request aims to update documentation for TiCDC data replication capabilities. However, the current changes have introduced merge conflict markers into the Markdown files (ticdc/ticdc-data-replication-capabilities.md and ticdc/ticdc-overview.md). These conflicts must be resolved before the PR can be merged, as they prevent the documents from rendering correctly and make the content unreadable.

Once the conflicts are addressed, the intended changes appear to be minor textual adjustments. Please resolve the conflicts, ensuring the correct content is chosen for each conflicting section.

Summary of Findings

  • Merge Conflict Markers: Critical merge conflict markers are present in ticdc/ticdc-data-replication-capabilities.md and ticdc/ticdc-overview.md. These must be resolved by removing the markers and choosing the correct version of the conflicting content.
  • Punctuation and Spacing: A conflict in ticdc/ticdc-data-replication-capabilities.md highlighted a missing space before a parenthesis. The suggested resolution improves readability and adheres to standard punctuation.
  • Invisible Characters: A heading in ticdc/ticdc-data-replication-capabilities.md contained a trailing zero-width space within a conflict. This has been addressed in the suggested resolution.
  • URL Inconsistency in Merge Conflict: A merge conflict in ticdc/ticdc-overview.md involves two different GitHub URLs. The author needs to select the appropriate URL for the intended branches.

Merge Readiness

This pull request cannot be merged in its current state due to the presence of critical merge conflict markers in the documentation files. These markers prevent the documents from rendering correctly and make the content ambiguous. The author must resolve these conflicts first.

Once the conflicts are resolved, the intended changes appear to be minor. However, due to the critical nature of the existing issues, I recommend that these changes be made before the PR is considered for merging. As a reviewer, I am not authorized to approve pull requests, but addressing these conflicts is essential for the PR's viability.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@ti-chi-bot ti-chi-bot bot added size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. and removed size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels May 23, 2025
Copy link
Member

@lilin90 lilin90 left a comment

Choose a reason for hiding this comment

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

/approve

Copy link

ti-chi-bot bot commented May 23, 2025

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: lilin90

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@ti-chi-bot ti-chi-bot bot added the approved label May 23, 2025
@lilin90
Copy link
Member

lilin90 commented May 23, 2025

/unhold

@ti-chi-bot ti-chi-bot bot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label May 23, 2025
@ti-chi-bot ti-chi-bot bot merged commit 94a947a into pingcap:master May 23, 2025
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved area/ticdc Indicates that the Issue or PR belongs to the area of TiCDC. lgtm needs-1-more-lgtm Indicates a PR needs 1 more LGTM. ONCALL Relates to documentation oncall. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. type/cherry-pick-for-master This PR is cherry-picked to master from a source PR. type/cherry-pick-for-release-8.5 This PR is cherry-picked to release-8.5 from a source PR. type/enhancement The issue or PR belongs to an enhancement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants