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

feat: avoid blocking the write procedure because of compaction schedule #822

Merged
merged 2 commits into from
Apr 11, 2023

Conversation

ShiKaiWi
Copy link
Member

Which issue does this PR close?

Closes #

Rationale for this change

Currently, compaction will be scheduled after every flush, and the compaction schedule will block if the schedule channel is full, leading to the flushing is blocked and write stall.

What changes are included in this PR?

  • Make compaction schedule won't block, and it will fail fast if the schedule channel is full.

Are there any user-facing changes?

None.

How does this change test

Existing tests.

Copy link
Contributor

@chunshao90 chunshao90 left a comment

Choose a reason for hiding this comment

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

LGTM

@chunshao90 chunshao90 added this pull request to the merge queue Apr 11, 2023
Merged via the queue into apache:main with commit 60c3448 Apr 11, 2023
chunshao90 pushed a commit to chunshao90/ceresdb that referenced this pull request May 15, 2023
…le (apache#822)

* feat: avoid blocking the write procedure because of compaction schedule

* fix: clone the table name before consume it when scheduling
@ShiKaiWi ShiKaiWi deleted the feat-separate-flush-runtimes branch May 29, 2023 08:32
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.

3 participants