Find a file
Jay Zhuang 6c86543590 Fix manual compaction max_compaction_bytes under-calculated issue (#8269)
Summary:
Fix a bug that for manual compaction, `max_compaction_bytes` is only
limit the SST files from input level, but not overlapped files on output
level.

Pull Request resolved: https://github.com/facebook/rocksdb/pull/8269

Test Plan: `make check`

Reviewed By: ajkr

Differential Revision: D28231044

Pulled By: jay-zhuang

fbshipit-source-id: 9d7d03004f30cc4b1b9819830141436907554b7c
2021-05-21 14:03:44 -07:00
.circleci Fix cmake failed to build db_bench (#8289) 2021-05-12 11:39:01 -07:00
.github/workflows
buckifier Allow cache_bench/db_bench to use a custom secondary cache (#8312) 2021-05-19 15:26:18 -07:00
build_tools Try to build with liburing by default. (#8322) 2021-05-21 10:21:53 -07:00
cache Use deleters to label cache entries and collect stats (#8297) 2021-05-19 16:51:13 -07:00
cmake
coverage
db Fix manual compaction max_compaction_bytes under-calculated issue (#8269) 2021-05-21 14:03:44 -07:00
db_stress_tool db_stress: wait for compaction to finish after open with failure injection (#8270) 2021-05-05 16:41:45 -07:00
docs Bump nokogiri from 1.11.1 to 1.11.4 in /docs (#8318) 2021-05-20 08:39:28 -07:00
env Fix test issue in new env_test tests (#8319) 2021-05-19 10:59:02 -07:00
examples
file Refactor kill point (#8241) 2021-05-05 15:50:29 -07:00
fuzz
hdfs
include/rocksdb Compare memtable insert and flush count (#8288) 2021-05-20 16:07:28 -07:00
java Make ImmutableOptions struct that inherits from ImmutableCFOptions and ImmutableDBOptions (#8262) 2021-05-05 14:00:17 -07:00
logging
memory
memtable Use deleters to label cache entries and collect stats (#8297) 2021-05-19 16:51:13 -07:00
monitoring Disable IOStatsContext/PerfContext if no thread local (#8117) 2021-04-13 07:56:59 -07:00
options Compare memtable insert and flush count (#8288) 2021-05-20 16:07:28 -07:00
plugin
port Use deleters to label cache entries and collect stats (#8297) 2021-05-19 16:51:13 -07:00
table Use deleters to label cache entries and collect stats (#8297) 2021-05-19 16:51:13 -07:00
test_util Refactor kill point (#8241) 2021-05-05 15:50:29 -07:00
third-party
tools Use deleters to label cache entries and collect stats (#8297) 2021-05-19 16:51:13 -07:00
trace_replay
util Add remote compaction public API (#8300) 2021-05-19 21:41:31 -07:00
utilities Use deleters to label cache entries and collect stats (#8297) 2021-05-19 16:51:13 -07:00
.clang-format
.gitignore
.lgtm.yml
.travis.yml Move arm build from travis to circleci (#8203) 2021-04-19 20:07:02 -07:00
.watchmanconfig
appveyor.yml
AUTHORS
CMakeLists.txt Try to build with liburing by default. (#8322) 2021-05-21 10:21:53 -07:00
CODE_OF_CONDUCT.md
CONTRIBUTING.md
COPYING
DEFAULT_OPTIONS_HISTORY.md
defs.bzl
DUMP_FORMAT.md
HISTORY.md Fix manual compaction max_compaction_bytes under-calculated issue (#8269) 2021-05-21 14:03:44 -07:00
INSTALL.md Update installation instructions (#8158) 2021-04-06 16:02:04 -07:00
issue_template.md
LANGUAGE-BINDINGS.md
LICENSE.Apache
LICENSE.leveldb
Makefile Add remote compaction public API (#8300) 2021-05-19 21:41:31 -07:00
PLUGINS.md Add ZenFS to plugin list (#8218) 2021-04-22 11:12:40 -07:00
README.md
ROCKSDB_LITE.md
src.mk Add remote compaction public API (#8300) 2021-05-19 21:41:31 -07:00
TARGETS Add remote compaction public API (#8300) 2021-05-19 21:41:31 -07:00
thirdparty.inc
USERS.md
Vagrantfile
WINDOWS_PORT.md

RocksDB: A Persistent Key-Value Store for Flash and RAM Storage

CircleCI Status TravisCI Status Appveyor Build status PPC64le Build Status

RocksDB is developed and maintained by Facebook Database Engineering Team. It is built on earlier work on LevelDB by Sanjay Ghemawat (sanjay@google.com) and Jeff Dean (jeff@google.com)

This code is a library that forms the core building block for a fast key-value server, especially suited for storing data on flash drives. It has a Log-Structured-Merge-Database (LSM) design with flexible tradeoffs between Write-Amplification-Factor (WAF), Read-Amplification-Factor (RAF) and Space-Amplification-Factor (SAF). It has multi-threaded compactions, making it especially suitable for storing multiple terabytes of data in a single database.

Start with example usage here: https://github.com/facebook/rocksdb/tree/master/examples

See the github wiki for more explanation.

The public interface is in include/. Callers should not include or rely on the details of any other header files in this package. Those internal APIs may be changed without warning.

Design discussions are conducted in https://www.facebook.com/groups/rocksdb.dev/ and https://rocksdb.slack.com/

License

RocksDB is dual-licensed under both the GPLv2 (found in the COPYING file in the root directory) and Apache 2.0 License (found in the LICENSE.Apache file in the root directory). You may select, at your option, one of the above-listed licenses.