facebook / facebook/rocksdb

support `allow_ingest_behind` with level compaction

Open
#6,493 0 comments 0 reactions 1 assignee Claimed by @cbi42 View on GitHub
bug
Dominant language
C++
Stars
32.1k
Forks
6.9k
Avg merge
32m
Merged PRs (30d)
1

Description

> Note: Please use Issues only for bug reports. For questions, discussions, feature requests, etc. post to dev group: https://groups.google.com/forum/#!forum/rocksdb or https://www.facebook.com/groups/rocksdb.dev

### Expected behavior

When `allow_ingest_behind` is set, automatic level compactions should not write output files to the bottom level (`ColumnFamilyOptions::num_levels - 1`). That way, a sorted run of files can be ingested behind without conflict.

### Actual behavior

Files are written to the bottom level by level compaction, which can cause overlap even for ingest-behind of non-overlapping files: `Invalid argument: Can't ingest_behind file as it doesn't fit at the bottommost level!`

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.