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

Delay write rate based on current CF state #281

Merged

Conversation

Yuval-Ariel
Copy link
Contributor

@Yuval-Ariel Yuval-Ariel commented Dec 4, 2022

closes #276

@Yuval-Ariel Yuval-Ariel self-assigned this Dec 4, 2022
@Yuval-Ariel Yuval-Ariel linked an issue Dec 4, 2022 that may be closed by this pull request
@Yuval-Ariel Yuval-Ariel requested review from udi-speedb and removed request for hilikspdb December 4, 2022 17:16
@udi-speedb
Copy link
Contributor

Only skimmed through changes. First thoughts that came to my mind:

  • I see that the dynamic delay is by default true. Did all existing unit tests pass?
  • I see no new unit tests to test the specifics of the new mechanism or the ability to change the configured value dynamically via SetDBOptions().

@Yuval-Ariel
Copy link
Contributor Author

fixed a few unit tests - in recent commit. and plan to add new ones shortly

@Yuval-Ariel Yuval-Ariel force-pushed the 276-delayed-write-calculate-delay-based-on-current-state branch from 34b8523 to a8cc4bb Compare December 6, 2022 06:46
@Yuval-Ariel Yuval-Ariel force-pushed the 276-delayed-write-calculate-delay-based-on-current-state branch from 51ccf9f to 5c41a06 Compare December 14, 2022 12:45
@Yuval-Ariel Yuval-Ariel changed the base branch from yuval/rebase-7.7.3 to main December 14, 2022 13:05
@Yuval-Ariel Yuval-Ariel force-pushed the 276-delayed-write-calculate-delay-based-on-current-state branch from 5c41a06 to ffe9b9c Compare December 14, 2022 13:06
db/column_family.cc Outdated Show resolved Hide resolved
db/column_family.cc Show resolved Hide resolved
options/db_options.cc Show resolved Hide resolved
db/write_controller_test.cc Show resolved Hide resolved
tools/db_bench_tool.cc Outdated Show resolved Hide resolved
db/column_family_test.cc Outdated Show resolved Hide resolved
db/column_family_test.cc Show resolved Hide resolved
db/column_family_test.cc Show resolved Hide resolved
db/column_family_test.cc Outdated Show resolved Hide resolved
db/column_family_test.cc Show resolved Hide resolved
@Yuval-Ariel Yuval-Ariel force-pushed the 276-delayed-write-calculate-delay-based-on-current-state branch from ef4bb49 to 4998b24 Compare December 19, 2022 11:08
@udi-speedb udi-speedb self-requested a review December 19, 2022 12:23
@udi-speedb
Copy link
Contributor

@Yuval-Ariel I have approved.
Please rebase on latest origin/main and squash the commits into one.
Thanks

Calculate the delayed write rate based on the current state of the CF
based on the value of delayed_write_rate that the user initially set.
The calculation reduces speed linearly with regards to how much
the CF has exceeded the slowdown conditions (L0 files and pending bytes).
The slowdown for writing to the last memtable (when theres more than 3)
is 10 fold
@Yuval-Ariel Yuval-Ariel force-pushed the 276-delayed-write-calculate-delay-based-on-current-state branch from a6c3d6a to b4b5c1f Compare December 19, 2022 20:18
@Yuval-Ariel Yuval-Ariel merged commit f1846de into main Dec 20, 2022
@Yuval-Ariel Yuval-Ariel deleted the 276-delayed-write-calculate-delay-based-on-current-state branch February 16, 2023 14:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Delayed Write: calculate delay based on current state
2 participants