RocksDBLite

Summary:
Introducing RocksDBLite! Removes all the non-essential features and reduces the binary size. This effort should help our adoption on mobile.

Binary size when compiling for IOS (`TARGET_OS=IOS m static_lib`) is down to 9MB from 15MB (without stripping)

Test Plan: compiles :)

Reviewers: dhruba, haobo, ljin, sdong, yhchiang

Reviewed By: yhchiang

CC: leveldb

Differential Revision: https://reviews.facebook.net/D17835
This commit is contained in:
Igor Canadi
2014-04-15 13:39:26 -07:00
parent 23c8f89b57
commit 588bca2020
51 changed files with 507 additions and 348 deletions

View File

@@ -2,6 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. See the AUTHORS file for names of contributors.
#ifndef ROCKSDB_LITE
#include "table/plain_table_builder.h"
#include <assert.h>
@@ -205,3 +206,4 @@ uint64_t PlainTableBuilder::FileSize() const {
}
} // namespace rocksdb
#endif // ROCKSDB_LITE

View File

@@ -5,6 +5,7 @@
// IndexedTable is a simple table format for UNIT TEST ONLY. It is not built
// as production quality.
#ifndef ROCKSDB_LITE
#pragma once
#include <stdint.h>
#include "rocksdb/options.h"
@@ -80,3 +81,4 @@ private:
} // namespace rocksdb
#endif // ROCKSDB_LITE

View File

@@ -2,6 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. See the AUTHORS file for names of contributors.
#ifndef ROCKSDB_LITE
#include "table/plain_table_factory.h"
#include <memory>
@@ -46,3 +47,4 @@ extern TableFactory* NewTotalOrderPlainTableFactory(uint32_t user_key_len,
}
} // namespace rocksdb
#endif // ROCKSDB_LITE

View File

@@ -2,6 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. See the AUTHORS file for names of contributors.
#ifndef ROCKSDB_LITE
#pragma once
#include <memory>
#include <stdint.h>
@@ -83,3 +84,4 @@ class PlainTableFactory : public TableFactory {
};
} // namespace rocksdb
#endif // ROCKSDB_LITE

View File

@@ -2,6 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. See the AUTHORS file for names of contributors.
#ifndef ROCKSDB_LITE
#include "table/plain_table_reader.h"
#include <string>
@@ -745,3 +746,4 @@ Status PlainTableIterator::status() const {
}
} // namespace rocksdb
#endif // ROCKSDB_LITE

View File

@@ -2,6 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. See the AUTHORS file for names of contributors.
#ifndef ROCKSDB_LITE
#pragma once
#include <unordered_map>
#include <memory>
@@ -255,3 +256,4 @@ class PlainTableReader: public TableReader {
void operator=(const TableReader&) = delete;
};
} // namespace rocksdb
#endif // ROCKSDB_LITE