influxdata / influxdata/influxdb

"storage-compact-throughput-burst" cannot be set lower than default of 48mb

Open
#21,443 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
31.7k
Forks
3.7k
Avg merge
13h 37m
Merged PRs (30d)
8

Description

Our system is experiencing high load during the compaction process due to IO load. We've identified that the culprit is the background compaction process, whics run often due to our data often being written back into the past. We've lowered the max amount of concurrent compactions, but would still be able to set the throughput of the compaction process.

Since v2 CompactThroughput is no longer configurable and it defaults to 48mb. storage-compact-throughput-burst is overridden by the default of CompactThroughput during startup if set to lower than the 48mb.

So in effect, users aren't able limit compaction disk write bursts to lower than 48mb.

https://github.com/influxdata/influxdb/blob/540bb66e1381a48a6d1ede4fc3e49c75a7d9f4af/tsdb/store.go#L264-L278

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in tsdb/store.go around lines 264-278, as linked in the issue, and trace how storage-compact-throughput-burst is handled during startup. Confirm the behavior with a value below 48mb; done means the configured lower throughput is preserved rather than overridden by the default CompactThroughput.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
databases, performance
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.