Go to file
Andrew Hutchings ce529a4ce1 Fix FreeBSD building (#10575)
Summary:
FreeBSD doesn't have `JEMALLOC_USABLE_SIZE_CONST` so we need to define
it.

This fixes MariaDB MDEV-20248.

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

Reviewed By: jay-zhuang

Differential Revision: D39057665

Pulled By: ajkr

fbshipit-source-id: 3874779d12a1dd5036324947f6372e6ad57a7b08
2022-08-28 00:05:51 -07:00
.circleci CI benchmarks refine configuration (#10514) 2022-08-25 09:47:03 -07:00
.github/workflows Use released clang-format instead of the one from dev branch (#9646) 2022-03-01 10:51:38 -08:00
buckifier Use optimized folly DistributedMutex in LRUCache when available (#10179) 2022-06-17 13:08:45 -07:00
build_tools Migrate to docker for CI run (#10496) 2022-08-10 17:34:38 -07:00
cache Add a blob-specific cache priority (#10461) 2022-08-12 17:59:06 -07:00
cmake gcc-11 and cmake related cleanup (#9286) 2021-12-17 17:04:35 -08:00
coverage Fix commit_prereq and other targets (#9797) 2022-04-04 09:58:18 -07:00
db Improve the accounting of memory used by cached blobs (#10583) 2022-08-26 15:53:08 -07:00
db_stress_tool Add Iterator test against expected state to stress test (#10538) 2022-08-24 14:59:50 -07:00
docs Make header more natural. (#10580) 2022-08-26 20:48:18 -07:00
env Migrate to docker for CI run (#10496) 2022-08-10 17:34:38 -07:00
examples Add a simple example of backup and restore (#10054) 2022-06-03 23:25:31 -07:00
file WritableFileWriter to allow operation after failure when SyncWithoutFlush() is involved (#10555) 2022-08-24 07:30:52 -07:00
fuzz Add some missing headers (#10519) 2022-08-11 12:45:50 -07:00
include/rocksdb Add get_name, get_id for column family handle in C API (#10499) 2022-08-24 13:49:02 -07:00
java Support CompactionPri::kRoundRobin in RocksJava (#10572) 2022-08-25 13:32:03 -07:00
logging Fix build error with NIOSTATS_CONTEXT (#10506) 2022-08-23 15:00:14 -07:00
memory Add a blob-specific cache priority (#10461) 2022-08-12 17:59:06 -07:00
memtable Migrate to docker for CI run (#10496) 2022-08-10 17:34:38 -07:00
microbench Avoid allocations/copies for large `GetMergeOperands()` results (#10458) 2022-08-04 00:42:13 -07:00
monitoring Fix periodic_task unable to re-register the same task type (#10379) 2022-08-25 18:52:37 -07:00
options MultiGet async IO across multiple levels (#10535) 2022-08-19 16:52:52 -07:00
plugin Add initial CMake support to plugin (#9214) 2021-11-30 17:16:53 -08:00
port Fix FreeBSD building (#10575) 2022-08-28 00:05:51 -07:00
table MultiGet async IO across multiple levels (#10535) 2022-08-19 16:52:52 -07:00
test_util Add seqno to time mapping (#10338) 2022-07-14 21:49:34 -07:00
third-party Meta-internal folly integration with F14FastMap (#9546) 2022-04-13 07:34:01 -07:00
tools fix trace_analyzer_tool args column position (#10576) 2022-08-26 08:44:52 -07:00
trace_replay Use std::numeric_limits<> (#9954) 2022-05-05 13:08:21 -07:00
util Fix periodic_task unable to re-register the same task type (#10379) 2022-08-25 18:52:37 -07:00
utilities Add missing synchronization in TestFSWritableFile (#10544) 2022-08-22 15:50:22 -07:00
.clang-format
.gitignore Snapshots with user-specified timestamps (#9879) 2022-06-10 16:07:03 -07:00
.lgtm.yml
.watchmanconfig
AUTHORS
CMakeLists.txt Fix periodic_task unable to re-register the same task type (#10379) 2022-08-25 18:52:37 -07:00
CODE_OF_CONDUCT.md
CONTRIBUTING.md
COPYING
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 Fix periodic_task unable to re-register the same task type (#10379) 2022-08-25 18:52:37 -07:00
INSTALL.md Update supported VS versions in INSTALL.md (#9823) 2022-04-13 13:03:40 -07:00
LANGUAGE-BINDINGS.md Add grocksdb in Go language bindings (#10498) 2022-08-23 15:02:10 -07:00
LICENSE.Apache
LICENSE.leveldb
Makefile Fix periodic_task unable to re-register the same task type (#10379) 2022-08-25 18:52:37 -07: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_LITE.md Fix remaining uses of "backupable" (#9792) 2022-04-05 09:52:33 -07:00
TARGETS Fix periodic_task unable to re-register the same task type (#10379) 2022-08-25 18:52:37 -07:00
USERS.md Add Solana's RocksDB use case in USERS.md (#9558) 2022-02-16 09:23:01 -08:00
Vagrantfile
WINDOWS_PORT.md Update branch name in WINDOWS_PORT.md (#8745) 2021-09-01 19:26:39 -07:00
common.mk Clean up variables for temporary directory (#9961) 2022-05-06 16:38:06 -07:00
crash_test.mk Tiered storage stress test (#10493) 2022-08-08 13:08:35 -07:00
issue_template.md
rocksdb.pc.in build: fix pkg-config file generation (#9953) 2022-05-30 12:46:40 -07:00
src.mk Fix periodic_task unable to re-register the same task type (#10379) 2022-08-25 18:52:37 -07:00
thirdparty.inc

README.md

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.