Skip to content
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

repair: Introduce repair_partition_estimation_ratio config option #18634

Closed
wants to merge 1 commit into from

Conversation

asias
Copy link
Contributor

@asias asias commented May 13, 2024

In commit 642f9a1 (repair: Improve estimated_partitions to reduce memory usage), a 10% hard coded estimation ratio is used.

This patch introduces a new config option to specify the estimation ratio of partitions written by repair out of the total partitions.

It is set to 0.1 by default.

Fixes #18615

@asias asias requested a review from tgrabiec as a code owner May 13, 2024 05:36
@github-actions github-actions bot added area/repair P1 Urgent backport/5.2 Issues that should be backported to 5.2 branch once they'll be fixed backport/5.4 Issues that should be backported to 5.4 branch once they'll be fixed backport/6.0 labels May 13, 2024
db/config.cc Outdated
@@ -968,6 +968,8 @@ db::config::config(std::shared_ptr<db::extensions> exts)
, enable_repair_based_node_ops(this, "enable_repair_based_node_ops", liveness::LiveUpdate, value_status::Used, true, "Set true to use enable repair based node operations instead of streaming based.")
, allowed_repair_based_node_ops(this, "allowed_repair_based_node_ops", liveness::LiveUpdate, value_status::Used, "replace,removenode,rebuild,bootstrap,decommission", "A comma separated list of node operations which are allowed to enable repair based node operations. The operations can be bootstrap, replace, removenode, decommission and rebuild.")
, enable_compacting_data_for_streaming_and_repair(this, "enable_compacting_data_for_streaming_and_repair", liveness::LiveUpdate, value_status::Used, true, "Enable the compacting reader, which compacts the data for streaming and repair (load'n'stream included) before sending it to, or synchronizing it with peers. Can reduce the amount of data to be processed by removing dead data, but adds CPU overhead.")
, repair_partition_estimation_ratio(this, "repair_partition_estimation_ratio", liveness::LiveUpdate, value_status::Used, 0.1,
Copy link
Contributor

Choose a reason for hiding this comment

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

we should have the word count in the name, becuase currently it is unclear what quality of a partiiton we estimate here. I suggest: repair_partition_count_estimate_fraction.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Originally, I had a word number in the name which I dropped. The count looks good. Changed in v2.

In commit 642f9a1 (repair: Improve
estimated_partitions to reduce memory usage), a 10% hard coded
estimation ratio is used.

This patch introduces a new config option to specify the estimation
ratio of partitions written by repair out of the total partitions.

It is set to 0.1 by default.

Fixes scylladb#18615
@asias asias force-pushed the repair_bf_estimation_config branch from 025c380 to 340eae0 Compare May 13, 2024 05:54
@scylladb-promoter
Copy link
Contributor

🟢 CI State: SUCCESS

✅ - Build
✅ - Container Test
✅ - dtest
✅ - dtest with topology changes
✅ - Unit Tests

Build Details:

  • Duration: 6 hr 2 min
  • Builder: i-0707d19aeadfcdc76 (r5ad.8xlarge)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/repair backport/5.2 Issues that should be backported to 5.2 branch once they'll be fixed backport/5.4 Issues that should be backported to 5.4 branch once they'll be fixed backport/6.0 P1 Urgent promoted-to-master
Projects
None yet
Development

Successfully merging this pull request may close these issues.

repair: add control for repair percentage for partition count estimation
3 participants