Find a file
akankshamahajan 68e4581c67 Return NotSupported in scan if IOUring not supported and enable IOUring in db_stress for async_io testing (#11197)
Summary:
- Return NotSupported in scan if IOUring not supported if async_io is enabled
- Enable IOUring in db_stress for async_io testing
- Disable async_io in circleci crash testing as circleci doesn't support IOUring

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

Test Plan: CircleCI jobs

Reviewed By: anand1976

Differential Revision: D43096313

Pulled By: akankshamahajan15

fbshipit-source-id: c2c53a87636950c0243038b9f5bd0d91608e4fda
2023-02-16 18:33:06 -08:00
.circleci Return NotSupported in scan if IOUring not supported and enable IOUring in db_stress for async_io testing (#11197) 2023-02-16 18:33:06 -08:00
.github/workflows ci: add GitHub token permissions for workflow (#10549) 2022-10-04 12:10:30 -07:00
buckifier Cleanup, improve, stress test LockWAL() (#11143) 2023-01-30 22:52:30 -08:00
build_tools Remove RocksDB LITE (#11147) 2023-01-27 13:14:19 -08:00
cache Customize CompressedSecondaryCache by block kind (#11204) 2023-02-16 17:22:27 -08:00
cmake gcc-11 and cmake related cleanup (#9286) 2021-12-17 17:04:35 -08:00
coverage Enable BLACK for internal_repo_rocksdb (#10710) 2022-09-20 17:47:52 -07:00
db Add a new MultiGetEntity API (#11222) 2023-02-15 09:34:17 -08:00
db_stress_tool Return NotSupported in scan if IOUring not supported and enable IOUring in db_stress for async_io testing (#11197) 2023-02-16 18:33:06 -08:00
docs Remove docs/Gemfile.lock and update github-pages version (#11173) 2023-02-14 12:17:23 -08:00
env Remove RocksDB LITE (#11147) 2023-01-27 13:14:19 -08:00
examples Remove RocksDB LITE (#11147) 2023-01-27 13:14:19 -08:00
file Return NotSupported in scan if IOUring not supported and enable IOUring in db_stress for async_io testing (#11197) 2023-02-16 18:33:06 -08:00
fuzz Add some missing headers (#10519) 2022-08-11 12:45:50 -07:00
include/rocksdb Customize CompressedSecondaryCache by block kind (#11204) 2023-02-16 17:22:27 -08:00
java Put Cache and CacheWrapper in new public header (#11192) 2023-02-09 12:12:02 -08:00
logging Remove RocksDB LITE (#11147) 2023-01-27 13:14:19 -08:00
memory Remove RocksDB LITE (#11147) 2023-01-27 13:14:19 -08:00
memtable Put Cache and CacheWrapper in new public header (#11192) 2023-02-09 12:12:02 -08:00
microbench Avoid allocations/copies for large GetMergeOperands() results (#10458) 2022-08-04 00:42:13 -07:00
monitoring Remove RocksDB LITE (#11147) 2023-01-27 13:14:19 -08:00
options Put Cache and CacheWrapper in new public header (#11192) 2023-02-09 12:12:02 -08:00
plugin Add initial CMake support to plugin (#9214) 2021-11-30 17:16:53 -08:00
port remove dependency on options.h for port_posix.h andport_win.h (#11214) 2023-02-13 02:21:38 -08:00
table Add a new MultiGetEntity API (#11222) 2023-02-15 09:34:17 -08:00
test_util Remove RocksDB LITE (#11147) 2023-01-27 13:14:19 -08:00
third-party Meta-internal folly integration with F14FastMap (#9546) 2022-04-13 07:34:01 -07:00
tools Fix regression script for async_io benchmarks (#11224) 2023-02-14 18:54:47 -08:00
trace_replay Fix error maybe-uninitialized #11100 (#11101) 2023-01-19 13:59:48 -08:00
util remove dependency on options.h for port_posix.h andport_win.h (#11214) 2023-02-13 02:21:38 -08:00
utilities Add a new MultiGetEntity API (#11222) 2023-02-15 09:34:17 -08:00
.clang-format
.gitignore Git ignore .clangd/ (#10817) 2022-10-17 08:33:58 -07:00
.lgtm.yml Create lgtm.yml for LGTM.com C/C++ analysis (#4058) 2018-06-26 12:43:04 -07:00
.watchmanconfig Added .watchmanconfig file to rocksdb repo (#5593) 2019-07-19 15:00:33 -07:00
AUTHORS
CMakeLists.txt Improve SmallEnumSet (#11178) 2023-02-08 20:14:57 -08:00
CODE_OF_CONDUCT.md Adopt Contributor Covenant 2019-08-29 23:21:01 -07:00
common.mk Clean up variables for temporary directory (#9961) 2022-05-06 16:38:06 -07:00
CONTRIBUTING.md Add Code of Conduct 2017-12-05 18:42:35 -08:00
COPYING
crash_test.mk Allow a custom DB cleanup command to be passed to db_crashtest.py (#10883) 2022-10-27 19:47:01 -07:00
DEFAULT_OPTIONS_HISTORY.md Add Options::DisableExtraChecks, clarify force_consistency_checks (#9363) 2022-01-18 17:31:03 -08:00
DUMP_FORMAT.md
HISTORY.md Return NotSupported in scan if IOUring not supported and enable IOUring in db_stress for async_io testing (#11197) 2023-02-16 18:33:06 -08:00
INSTALL.md Remove RocksDB LITE (#11147) 2023-01-27 13:14:19 -08:00
issue_template.md Add Google Group to Issue Template 2020-01-28 14:40:37 -08:00
LANGUAGE-BINDINGS.md Add grocksdb in Go language bindings (#10498) 2022-08-23 15:02:10 -07:00
LICENSE.Apache
LICENSE.leveldb
Makefile Revert to LIB_MODE=static for optimized builds (#11195) 2023-02-07 11:26:55 -08:00
PLUGINS.md Add pmem-rocksdb-plugin link in PLUGINs.md (#9934) 2022-05-12 22:02:28 -07:00
README.md Remove Travis CI (#10407) 2022-07-22 20:16:45 -07:00
rocksdb.pc.in build: fix pkg-config file generation (#9953) 2022-05-30 12:46:40 -07:00
src.mk Improve SmallEnumSet (#11178) 2023-02-08 20:14:57 -08:00
TARGETS Improve SmallEnumSet (#11178) 2023-02-08 20:14:57 -08:00
thirdparty.inc Fix build jemalloc api (#5470) 2019-06-24 17:40:32 -07:00
USERS.md Add Apache Spark as a user (#10993) 2022-11-28 09:42:42 -08:00
Vagrantfile Adding CentOS 7 Vagrantfile & build script 2018-02-26 15:27:17 -08:00
WINDOWS_PORT.md Update branch name in WINDOWS_PORT.md (#8745) 2021-09-01 19:26:39 -07:00

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

CircleCI 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/main/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.

Questions and discussions are welcome on the RocksDB Developers Public Facebook group and email list on Google Groups.

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.