dev doc: update the example of paginate results (#21107)#21111
Conversation
fix or quoted
There was a problem hiding this comment.
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! Gemini here, providing a summary of this pull request to help everyone get up to speed quickly.
This pull request, authored by ti-chi-bot, aims to update the developer documentation regarding paginating results. Specifically, it modifies a SQL query example within the dev-guide-paginate-results.md file. The change appears to be a fix to the example SQL, making it more robust by correctly handling the edge case where the start and end keys for the pagination range might be the same.
Highlights
- Documentation Update: The primary focus of this PR is an update to the developer guide on paginating results.
- SQL Example Correction: The pull request modifies a SQL query example used in the documentation to demonstrate pagination. The updated query includes logic to correctly handle scenarios where the start and end keys of the pagination range are identical.
Changelog
- develop/dev-guide-paginate-results.md
- Updated the SQL query example for paginating results.
- Added conditional logic to the example query to handle the case where the start and end keys are the same.
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
-
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. ↩
There was a problem hiding this comment.
Code Review
This PR improves the SQL query for selecting paginated results, making it more robust for edge cases. This is a positive change. The PR also correctly adds a newline at the end of the file.
However, a critical follow-up change is needed: the corresponding DELETE statement example in the same documentation section must also be updated with this new WHERE clause logic. Without this, there's a significant risk of users deleting incorrect data. Please see the detailed comment on the SELECT query.
Summary of Findings
- Inconsistent WHERE clause between SELECT and DELETE examples: The PR updates the
SELECTquery for paginating and previewing data to be deleted, making it more robust. However, the correspondingDELETEstatement example in the documentation (not part of this diff) must also be updated with the sameWHEREclause logic. If not, users might preview data with the new logic but delete data with an older, potentially flawed logic, leading to a risk of deleting more data than intended, especially in edge cases (e.g., whenstart_book_id = end_book_id). This is a critical issue that could lead to data loss. - SQL Query Improvement: The updated
SELECTquery itself is an improvement as it correctly handles edge cases for pagination, specifically when the pagination range is within the same primary key component (book_id).
Merge Readiness
While the SQL update for the SELECT statement is an improvement, this PR should not be merged until the corresponding DELETE statement example in the documentation is also updated to use the same corrected logic. Failing to do so introduces a critical risk of users unintentionally deleting more data than previewed, potentially leading to data loss.
I am unable to approve the pull request in its current state. It is strongly recommended that the DELETE example be corrected before merging.
|
@gemini-code-assist[bot]: adding LGTM is restricted to approvers and reviewers in OWNERS files. DetailsIn response to this:
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. |
|
/approve |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: hfxsd The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
This is an automated cherry-pick of #21107
fix sql
First-time contributors' checklist
What is changed, added or deleted? (Required)
fix sql
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.
What is the related PR or file link(s)?
Do your changes match any of the following descriptions?