Skip to content

tikv: recorrect the settings of some configs and supplement missing annotations for several configs. (#20871) #20898

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

Conversation

ti-chi-bot
Copy link
Member

This is an automated cherry-pick of #20871

First-time contributors' checklist

What is changed, added or deleted? (Required)

As the title mentioned, this PR is used to recorrect the settings for some configurations in TiKV.

Meanwhile, for some newly introduced configurations, it supplements annotations for them.

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 (in Chinese).

  • 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

Signed-off-by: ti-chi-bot <ti-community-prow-bot@tidb.io>
@ti-chi-bot ti-chi-bot added area/engine Indicates that the Issue or PR belongs to the area of TP storage or Cloud storage. 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-release-8.4 labels Apr 30, 2025
@ti-chi-bot
Copy link
Member Author

@qiancai 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 removed the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Apr 30, 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

This pull request focuses on updating and correcting configurations in TiKV, as well as adding missing annotations for newly introduced configurations. The changes primarily affect the releases directory, specifically the release notes for versions 7.6.0, 8.0.0, 8.1.0, and 8.1.2, and the tikv-configuration-file.md file. These updates include renaming configuration items, modifying default values, adding new configuration options, and deprecating old ones. The goal is to improve the accuracy and clarity of the configuration settings and documentation for TiKV.

Highlights

  • Configuration Updates: Several TiKV configuration parameters have been updated, including renaming raftstore.report-min-resolved-ts-interval to raftstore.pd-report-min-resolved-ts-interval and modifying default values for parameters like blob-file-compression and rocksdb.defaultcf.titan.min-blob-size.
  • New Configuration Options: New configuration options have been added to TiKV, such as cdc.incremental-scan-concurrency-limit, raftstore.periodic-full-compact-start-times, raftstore.periodic-full-compact-start-max-cpu, storage.block-cache.low-pri-pool-ratio, and server.snap-min-ingest-size, providing more control over TiKV's behavior.
  • Documentation Updates: The release notes for TiDB versions 7.6.0, 8.0.0, 8.1.0 and 8.1.2 have been updated to reflect the configuration changes, including modifications, additions, and deprecations. The tikv-configuration-file.md file has also been updated to include detailed information about the new and modified configuration options.

Changelog

Click here to see the changelog
  • releases/release-7.6.0.md
    • Renamed raftstore.report-min-resolved-ts-interval to raftstore.pd-report-min-resolved-ts-interval.
    • Modified the default compression algorithm for blob-file-compression to zstd.
    • Modified the default value for rocksdb.defaultcf.titan.min-blob-size to 32KB for new clusters.
    • Modified rocksdb.titan.enabled to default to true for new clusters.
    • Added cdc.incremental-scan-concurrency-limit configuration option.
    • Added gc.num-threads configuration option.
    • Added raftstore.periodic-full-compact-start-times configuration option.
    • Added raftstore.periodic-full-compact-start-max-cpu configuration option.
    • Added raftstore.pd-report-min-resolved-ts-interval configuration option.
    • Added zstd-dict-size configuration option.
  • releases/release-8.0.0.md
    • Modified log-backup.initial-scan-rate-limit to add a minimum value of 1MiB.
    • Modified raftstore.store-io-pool-size to change the default value from 0 to 1.
    • Modified rocksdb.defaultcf.titan.blob-cache-size to indicate it only takes effect when shared-blob-cache is set to false.
    • Modified rocksdb.titan.max-background-gc to change the default value from 4 to 1.
    • Modified security.encryption.master-key.vendor to add gcp as an available type.
    • Added storage.block-cache.low-pri-pool-ratio configuration option.
    • Added rocksdb.defaultcf.titan.shared-blob-cache configuration option.
    • Added security.encryption.master-key.gcp.credential-file-path configuration option.
    • Added schedule.enable-heartbeat-breakdown-metrics configuration option.
  • releases/release-8.1.0.md
    • Deprecated enable-telemetry.
    • Modified conflict.max-record-rows to be automatically assigned the value of conflict.threshold.
    • Modified conflict.threshold to change the default value from 9223372036854775807 to 10000.
    • Added memory.enable-thread-exclusive-arena configuration option.
    • Added security.client-allowed-user configuration option.
    • Added security.client-user-required configuration option.
    • Added security.mtls configuration option.
  • releases/release-8.1.2.md
    • Added compatibility changes section.
    • Added server.snap-min-ingest-size configuration option.
  • tikv-configuration-file.md
    • Added documentation for snap-min-ingest-size.
    • Added documentation for low-pri-pool-ratio.
    • Updated documentation for pd-report-min-resolved-ts-interval and removed documentation for report-min-resolved-ts-interval.
    • Updated documentation for max-background-gc.
    • Added documentation for incremental-scan-concurrency-limit.
    • Added documentation for enable-thread-exclusive-arena.
    • Added documentation for in-memory-engine related configurations.
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.

@ti-chi-bot ti-chi-bot bot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Apr 30, 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.

Code Review

This PR addresses configuration settings and annotations for TiKV and other components. The changes seem well-organized and follow a consistent format. However, some descriptions could be more precise, and a few entries might benefit from minor adjustments for clarity and consistency. The style guide is followed, and I have made suggestions accordingly.

Summary of Findings

  • Inaccurate description: The description for raftstore.report-min-resolved-ts-interval in releases/release-7.6.0.md could be improved for accuracy.
  • Inconsistent terminology: In tikv-configuration-file.md, the term 'Controls' is used inconsistently with other similar descriptions. Consider standardizing the wording.
  • Grammar and clarity: In tikv-configuration-file.md, the description for snap-min-ingest-size could be reworded for better clarity and flow.

Merge Readiness

The pull request is almost ready for merging. Addressing the comments, especially those concerning accuracy and consistency, would improve the overall quality of the documentation. After these points are clarified, the pull request should be in good shape for approval and merging. I am unable to approve this pull request, and recommend that others review and approve this code before merging.

@qiancai qiancai removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Apr 30, 2025
@ti-chi-bot ti-chi-bot bot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Apr 30, 2025
@qiancai
Copy link
Collaborator

qiancai commented Apr 30, 2025

/approve

Copy link

ti-chi-bot bot commented Apr 30, 2025

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: qiancai

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 Apr 30, 2025
@ti-chi-bot ti-chi-bot bot merged commit c09ab5a into pingcap:release-8.4 Apr 30, 2025
8 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved area/engine Indicates that the Issue or PR belongs to the area of TP storage or Cloud storage. 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-release-8.4
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants