From 483eb2f56657e8e7f419ab1a4fab8dce9ade8609 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 27 Apr 2024 20:24:20 +0200 Subject: Adding upstream version 14.2.21. Signed-off-by: Daniel Baumann --- src/rocksdb/ROCKSDB_LITE.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 src/rocksdb/ROCKSDB_LITE.md (limited to 'src/rocksdb/ROCKSDB_LITE.md') diff --git a/src/rocksdb/ROCKSDB_LITE.md b/src/rocksdb/ROCKSDB_LITE.md new file mode 100644 index 00000000..8991b950 --- /dev/null +++ b/src/rocksdb/ROCKSDB_LITE.md @@ -0,0 +1,21 @@ +# RocksDBLite + +RocksDBLite is a project focused on mobile use cases, which don't need a lot of fancy things we've built for server workloads and they are very sensitive to binary size. For that reason, we added a compile flag ROCKSDB_LITE that comments out a lot of the nonessential code and keeps the binary lean. + +Some examples of the features disabled by ROCKSDB_LITE: +* compiled-in support for LDB tool +* No backupable DB +* No support for replication (which we provide in form of TransactionalIterator) +* No advanced monitoring tools +* No special-purpose memtables that are highly optimized for specific use cases +* No Transactions + +When adding a new big feature to RocksDB, please add ROCKSDB_LITE compile guard if: +* Nobody from mobile really needs your feature, +* Your feature is adding a lot of weight to the binary. + +Don't add ROCKSDB_LITE compile guard if: +* It would introduce a lot of code complexity. Compile guards make code harder to read. It's a trade-off. +* Your feature is not adding a lot of weight. + +If unsure, ask. :) -- cgit v1.2.3