Merge pull request #4160 from ceph/wip-rocksdb

update rocksdb
This commit is contained in:
Sage Weil 2015-03-30 10:57:07 -07:00
commit a05871a185
6 changed files with 356 additions and 376 deletions

View File

@ -2,371 +2,346 @@ if WITH_SLIBROCKSDB
SUBDIRS += rocksdb
else
EXTRA_DIST += \
rocksdb/.arcconfig \
rocksdb/.clang-format \
rocksdb/.gitignore \
rocksdb/.gitignore \
rocksdb/CONTRIBUTING.md \
rocksdb/HISTORY.md \
rocksdb/INSTALL.md \
rocksdb/LICENSE \
rocksdb/Makefile.am \
rocksdb/PATENTS \
rocksdb/README \
rocksdb/README.md \
rocksdb/ROCKSDB_LITE.md \
rocksdb/build_tools/build_detect_platform \
rocksdb/build_tools/build_detect_version \
rocksdb/build_tools/fbcode.clang31.sh \
rocksdb/build_tools/fbcode.gcc471.sh \
rocksdb/build_tools/fbcode.gcc481.sh \
rocksdb/build_tools/format-diff.sh \
rocksdb/build_tools/mac-install-gflags.sh \
rocksdb/build_tools/make_new_version.sh \
rocksdb/build_tools/regression_build_test.sh \
rocksdb/build_tools/valgrind_test.sh \
rocksdb/configure.ac \
rocksdb/coverage/coverage_test.sh \
rocksdb/coverage/parse_gcov_output.py \
rocksdb/db/builder.cc \
rocksdb/db/builder.h \
rocksdb/db/c.cc \
rocksdb/db/c_test.c \
rocksdb/db/column_family.cc \
rocksdb/db/column_family.h \
rocksdb/db/column_family_test.cc \
rocksdb/db/compaction.cc \
rocksdb/db/compaction.h \
rocksdb/db/compaction_picker.cc \
rocksdb/db/compaction_picker.h \
rocksdb/db/corruption_test.cc \
rocksdb/db/db_bench.cc \
rocksdb/db/db_filesnapshot.cc \
rocksdb/db/db_impl.cc \
rocksdb/db/db_impl.h \
rocksdb/db/db_impl_debug.cc \
rocksdb/db/db_impl_readonly.cc \
rocksdb/db/db_impl_readonly.h \
rocksdb/db/db_iter.cc \
rocksdb/db/db_iter.h \
rocksdb/db/db_stats_logger.cc \
rocksdb/db/db_test.cc \
rocksdb/db/dbformat.cc \
rocksdb/db/dbformat.h \
rocksdb/db/dbformat_test.cc \
rocksdb/db/deletefile_test.cc \
rocksdb/db/file_indexer.cc \
rocksdb/db/file_indexer.h \
rocksdb/db/file_indexer_test.cc \
rocksdb/db/filename.cc \
rocksdb/db/filename.h \
rocksdb/db/filename_test.cc \
rocksdb/db/internal_stats.cc \
rocksdb/db/internal_stats.h \
rocksdb/db/log_and_apply_bench.cc \
rocksdb/db/log_format.h \
rocksdb/db/log_reader.cc \
rocksdb/db/log_reader.h \
rocksdb/db/log_test.cc \
rocksdb/db/log_writer.cc \
rocksdb/db/log_writer.h \
rocksdb/db/memtable.cc \
rocksdb/db/memtable.h \
rocksdb/db/memtable_list.cc \
rocksdb/db/memtable_list.h \
rocksdb/db/merge_context.h \
rocksdb/db/merge_helper.cc \
rocksdb/db/merge_helper.h \
rocksdb/db/merge_operator.cc \
rocksdb/db/merge_test.cc \
rocksdb/db/perf_context_test.cc \
rocksdb/db/plain_table_db_test.cc \
rocksdb/db/prefix_test.cc \
rocksdb/db/repair.cc \
rocksdb/db/simple_table_db_test.cc \
rocksdb/db/skiplist.h \
rocksdb/db/skiplist_test.cc \
rocksdb/db/snapshot.h \
rocksdb/db/table_cache.cc \
rocksdb/db/table_cache.h \
rocksdb/db/table_properties_collector.cc \
rocksdb/db/table_properties_collector.h \
rocksdb/db/table_properties_collector_test.cc \
rocksdb/db/tailing_iter.cc \
rocksdb/db/tailing_iter.h \
rocksdb/db/transaction_log_impl.cc \
rocksdb/db/transaction_log_impl.h \
rocksdb/db/version_edit.cc \
rocksdb/db/version_edit.h \
rocksdb/db/version_edit_test.cc \
rocksdb/db/version_set.cc \
rocksdb/db/version_set.h \
rocksdb/db/version_set_test.cc \
rocksdb/db/write_batch.cc \
rocksdb/db/write_batch_internal.h \
rocksdb/db/write_batch_test.cc \
rocksdb/doc/doc.css \
rocksdb/doc/index.html \
rocksdb/doc/log_format.txt \
rocksdb/doc/rockslogo.jpg \
rocksdb/doc/rockslogo.png \
rocksdb/hdfs/README \
rocksdb/hdfs/env_hdfs.h \
rocksdb/hdfs/hdfs.h \
rocksdb/hdfs/libhdfs.a \
rocksdb/helpers/memenv/memenv.cc \
rocksdb/helpers/memenv/memenv_test.cc \
rocksdb/include/rocksdb/c.h \
rocksdb/include/rocksdb/cache.h \
rocksdb/include/rocksdb/compaction_filter.h \
rocksdb/include/rocksdb/comparator.h \
rocksdb/include/rocksdb/db.h \
rocksdb/include/rocksdb/env.h \
rocksdb/include/rocksdb/filter_policy.h \
rocksdb/include/rocksdb/flush_block_policy.h \
rocksdb/include/rocksdb/iterator.h \
rocksdb/include/rocksdb/ldb_tool.h \
rocksdb/include/rocksdb/memtablerep.h \
rocksdb/include/rocksdb/merge_operator.h \
rocksdb/include/rocksdb/options.h \
rocksdb/include/rocksdb/perf_context.h \
rocksdb/include/rocksdb/slice.h \
rocksdb/include/rocksdb/slice_transform.h \
rocksdb/include/rocksdb/statistics.h \
rocksdb/include/rocksdb/status.h \
rocksdb/include/rocksdb/table.h \
rocksdb/include/rocksdb/table_properties.h \
rocksdb/include/rocksdb/transaction_log.h \
rocksdb/include/rocksdb/types.h \
rocksdb/include/rocksdb/universal_compaction.h \
rocksdb/include/rocksdb/version.h \
rocksdb/include/rocksdb/write_batch.h \
rocksdb/include/utilities/backupable_db.h \
rocksdb/include/utilities/db_ttl.h \
rocksdb/include/utilities/geo_db.h \
rocksdb/include/utilities/stackable_db.h \
rocksdb/include/utilities/utility_db.h \
rocksdb/java/Makefile \
rocksdb/java/RocksDBSample.java \
rocksdb/java/jdb_bench.sh \
rocksdb/java/org/rocksdb/BackupableDB.java \
rocksdb/java/org/rocksdb/BackupableDBOptions.java \
rocksdb/java/org/rocksdb/BloomFilter.java \
rocksdb/java/org/rocksdb/Filter.java \
rocksdb/java/org/rocksdb/HashLinkedListMemTableConfig.java \
rocksdb/java/org/rocksdb/HashSkipListMemTableConfig.java \
rocksdb/java/org/rocksdb/HistogramData.java \
rocksdb/java/org/rocksdb/HistogramType.java \
rocksdb/java/org/rocksdb/Iterator.java \
rocksdb/java/org/rocksdb/MemTableConfig.java \
rocksdb/java/org/rocksdb/Options.java \
rocksdb/java/org/rocksdb/PlainTableConfig.java \
rocksdb/java/org/rocksdb/ReadOptions.java \
rocksdb/java/org/rocksdb/RocksDB.java \
rocksdb/java/org/rocksdb/RocksDBException.java \
rocksdb/java/org/rocksdb/RocksObject.java \
rocksdb/java/org/rocksdb/SkipListMemTableConfig.java \
rocksdb/java/org/rocksdb/Statistics.java \
rocksdb/java/org/rocksdb/TableFormatConfig.java \
rocksdb/java/org/rocksdb/TickerType.java \
rocksdb/java/org/rocksdb/VectorMemTableConfig.java \
rocksdb/java/org/rocksdb/WriteBatch.java \
rocksdb/java/org/rocksdb/WriteBatchTest.java \
rocksdb/java/org/rocksdb/WriteOptions.java \
rocksdb/java/org/rocksdb/benchmark/DbBenchmark.java \
rocksdb/java/org/rocksdb/test/BackupableDBTest.java \
rocksdb/java/org/rocksdb/test/OptionsTest.java \
rocksdb/java/org/rocksdb/test/ReadOptionsTest.java \
rocksdb/java/org/rocksdb/util/Environment.java \
rocksdb/java/org/rocksdb/util/SizeUnit.java \
rocksdb/java/rocksjni/backupablejni.cc \
rocksdb/java/rocksjni/filter.cc \
rocksdb/java/rocksjni/iterator.cc \
rocksdb/java/rocksjni/memtablejni.cc \
rocksdb/java/rocksjni/options.cc \
rocksdb/java/rocksjni/portal.h \
rocksdb/java/rocksjni/rocksjni.cc \
rocksdb/java/rocksjni/statistics.cc \
rocksdb/java/rocksjni/table.cc \
rocksdb/java/rocksjni/write_batch.cc \
rocksdb/linters/__phutil_library_init__.php \
rocksdb/linters/__phutil_library_map__.php \
rocksdb/linters/cpp_linter/ArcanistCpplintLinter.php \
rocksdb/linters/cpp_linter/FbcodeCppLinter.php \
rocksdb/linters/cpp_linter/PfffCppLinter.php \
rocksdb/linters/cpp_linter/cpplint.py \
rocksdb/linters/lint_engine/FacebookFbcodeLintEngine.php \
rocksdb/m4/libtool.m4 \
rocksdb/m4/ltoptions.m4 \
rocksdb/m4/ltsugar.m4 \
rocksdb/m4/ltversion.m4 \
rocksdb/m4/lt~obsolete.m4 \
rocksdb/port/README \
rocksdb/port/atomic_pointer.h \
rocksdb/port/likely.h \
rocksdb/port/port.h \
rocksdb/port/port_example.h \
rocksdb/port/port_posix.cc \
rocksdb/port/port_posix.h \
rocksdb/port/stack_trace.cc \
rocksdb/port/stack_trace.h \
rocksdb/port/win/stdint.h \
rocksdb/table/block.cc \
rocksdb/table/block.h \
rocksdb/table/block_based_table_builder.cc \
rocksdb/table/block_based_table_builder.h \
rocksdb/table/block_based_table_factory.cc \
rocksdb/table/block_based_table_factory.h \
rocksdb/table/block_based_table_reader.cc \
rocksdb/table/block_based_table_reader.h \
rocksdb/table/block_builder.cc \
rocksdb/table/block_builder.h \
rocksdb/table/block_hash_index.cc \
rocksdb/table/block_hash_index.h \
rocksdb/table/block_hash_index_test.cc \
rocksdb/table/block_test.cc \
rocksdb/table/filter_block.cc \
rocksdb/table/filter_block.h \
rocksdb/table/filter_block_test.cc \
rocksdb/table/flush_block_policy.cc \
rocksdb/table/format.cc \
rocksdb/table/format.h \
rocksdb/table/iter_heap.h \
rocksdb/table/iterator.cc \
rocksdb/table/iterator_wrapper.h \
rocksdb/table/merger.cc \
rocksdb/table/merger.h \
rocksdb/table/meta_blocks.cc \
rocksdb/table/meta_blocks.h \
rocksdb/table/plain_table_builder.cc \
rocksdb/table/plain_table_builder.h \
rocksdb/table/plain_table_factory.cc \
rocksdb/table/plain_table_factory.h \
rocksdb/table/plain_table_reader.cc \
rocksdb/table/plain_table_reader.h \
rocksdb/table/table_builder.h \
rocksdb/table/table_properties.cc \
rocksdb/table/table_reader.h \
rocksdb/table/table_reader_bench.cc \
rocksdb/table/table_test.cc \
rocksdb/table/two_level_iterator.cc \
rocksdb/table/two_level_iterator.h \
rocksdb/tools/auto_sanity_test.sh \
rocksdb/tools/blob_store_bench.cc \
rocksdb/tools/db_crashtest.py \
rocksdb/tools/db_crashtest2.py \
rocksdb/tools/db_repl_stress.cc \
rocksdb/tools/db_sanity_test.cc \
rocksdb/tools/db_stress.cc \
rocksdb/tools/ldb.cc \
rocksdb/tools/ldb_test.py \
rocksdb/tools/reduce_levels_test.cc \
rocksdb/tools/sst_dump.cc \
rocksdb/util/arena.cc \
rocksdb/util/arena.h \
rocksdb/util/arena_test.cc \
rocksdb/util/auto_roll_logger.cc \
rocksdb/util/auto_roll_logger.h \
rocksdb/util/auto_roll_logger_test.cc \
rocksdb/util/autovector.h \
rocksdb/util/autovector_test.cc \
rocksdb/util/benchharness.cc \
rocksdb/util/benchharness.h \
rocksdb/util/benchharness_test.cc \
rocksdb/util/blob_store.cc \
rocksdb/util/blob_store.h \
rocksdb/util/blob_store_test.cc \
rocksdb/util/bloom.cc \
rocksdb/util/bloom_test.cc \
rocksdb/util/build_version.h \
rocksdb/util/cache.cc \
rocksdb/util/cache_test.cc \
rocksdb/util/coding.cc \
rocksdb/util/coding.h \
rocksdb/util/coding_test.cc \
rocksdb/util/comparator.cc \
rocksdb/util/crc32c.cc \
rocksdb/util/crc32c.h \
rocksdb/util/crc32c_test.cc \
rocksdb/util/dynamic_bloom.cc \
rocksdb/util/dynamic_bloom.h \
rocksdb/util/dynamic_bloom_test.cc \
rocksdb/util/env.cc \
rocksdb/util/env_hdfs.cc \
rocksdb/util/env_posix.cc \
rocksdb/util/env_test.cc \
rocksdb/util/filelock_test.cc \
rocksdb/util/filter_policy.cc \
rocksdb/util/hash.cc \
rocksdb/util/hash.h \
rocksdb/util/hash_cuckoo_rep.cc \
rocksdb/util/hash_cuckoo_rep.h \
rocksdb/util/hash_linklist_rep.cc \
rocksdb/util/hash_linklist_rep.h \
rocksdb/util/hash_skiplist_rep.cc \
rocksdb/util/hash_skiplist_rep.h \
rocksdb/util/histogram.cc \
rocksdb/util/histogram.h \
rocksdb/util/histogram_test.cc \
rocksdb/util/ldb_cmd.cc \
rocksdb/util/ldb_cmd.h \
rocksdb/util/ldb_cmd_execute_result.h \
rocksdb/util/ldb_tool.cc \
rocksdb/util/log_buffer.cc \
rocksdb/util/log_buffer.h \
rocksdb/util/log_write_bench.cc \
rocksdb/util/logging.cc \
rocksdb/util/logging.h \
rocksdb/util/manual_compaction_test.cc \
rocksdb/util/murmurhash.cc \
rocksdb/util/murmurhash.h \
rocksdb/util/mutexlock.h \
rocksdb/util/options.cc \
rocksdb/util/perf_context.cc \
rocksdb/util/perf_context_imp.h \
rocksdb/util/posix_logger.h \
rocksdb/util/random.h \
rocksdb/util/signal_test.cc \
rocksdb/util/skiplistrep.cc \
rocksdb/util/slice.cc \
rocksdb/util/statistics.cc \
rocksdb/util/statistics.h \
rocksdb/util/stats_logger.h \
rocksdb/util/status.cc \
rocksdb/util/stl_wrappers.h \
rocksdb/util/stop_watch.h \
rocksdb/util/string_util.cc \
rocksdb/util/string_util.h \
rocksdb/util/sync_point.cc \
rocksdb/util/sync_point.h \
rocksdb/util/testharness.cc \
rocksdb/util/testharness.h \
rocksdb/util/testutil.cc \
rocksdb/util/testutil.h \
rocksdb/util/thread_local.cc \
rocksdb/util/thread_local.h \
rocksdb/util/thread_local_test.cc \
rocksdb/util/vectorrep.cc \
rocksdb/util/xxhash.cc \
rocksdb/util/xxhash.h \
rocksdb/utilities/backupable/backupable_db.cc \
rocksdb/utilities/backupable/backupable_db_test.cc \
rocksdb/utilities/geodb/geodb_impl.cc \
rocksdb/utilities/geodb/geodb_impl.h \
rocksdb/utilities/geodb/geodb_test.cc \
rocksdb/utilities/merge_operators.h \
rocksdb/utilities/merge_operators/put.cc \
rocksdb/utilities/merge_operators/string_append/stringappend.cc \
rocksdb/utilities/merge_operators/string_append/stringappend.h \
rocksdb/utilities/merge_operators/string_append/stringappend2.cc \
rocksdb/utilities/merge_operators/string_append/stringappend2.h \
rocksdb/utilities/merge_operators/string_append/stringappend_test.cc \
rocksdb/utilities/merge_operators/uint64add.cc \
rocksdb/utilities/redis/README \
rocksdb/utilities/redis/redis_list_exception.h \
rocksdb/utilities/redis/redis_list_iterator.h \
rocksdb/utilities/redis/redis_lists.cc \
rocksdb/utilities/redis/redis_lists.h \
rocksdb/utilities/redis/redis_lists_test.cc \
rocksdb/utilities/ttl/db_ttl_impl.cc \
rocksdb/utilities/ttl/db_ttl_impl.h \
rocksdb/utilities/ttl/ttl_test.cc
rocksdb/Makefile.am \
rocksdb/db/builder.cc \
rocksdb/db/builder.h \
rocksdb/db/c.cc \
rocksdb/db/column_family.cc \
rocksdb/db/column_family.h \
rocksdb/db/compaction.cc \
rocksdb/db/compaction.h \
rocksdb/db/compaction_job.cc \
rocksdb/db/compaction_job.h \
rocksdb/db/compaction_picker.cc \
rocksdb/db/compaction_picker.h \
rocksdb/db/db_filesnapshot.cc \
rocksdb/db/dbformat.cc \
rocksdb/db/dbformat.h \
rocksdb/db/db_impl.cc \
rocksdb/db/db_impl_debug.cc \
rocksdb/db/db_impl.h \
rocksdb/db/db_impl_readonly.cc \
rocksdb/db/db_impl_readonly.h \
rocksdb/db/db_iter.cc \
rocksdb/db/db_iter.h \
rocksdb/db/file_indexer.cc \
rocksdb/db/file_indexer.h \
rocksdb/db/filename.cc \
rocksdb/db/filename.h \
rocksdb/db/flush_job.cc \
rocksdb/db/flush_job.h \
rocksdb/db/flush_scheduler.cc \
rocksdb/db/flush_scheduler.h \
rocksdb/db/forward_iterator.cc \
rocksdb/db/forward_iterator.h \
rocksdb/db/internal_stats.cc \
rocksdb/db/internal_stats.h \
rocksdb/db/job_context.h \
rocksdb/db/log_format.h \
rocksdb/db/log_reader.cc \
rocksdb/db/log_reader.h \
rocksdb/db/log_writer.cc \
rocksdb/db/log_writer.h \
rocksdb/db/managed_iterator.cc \
rocksdb/db/managed_iterator.h \
rocksdb/db/memtable_allocator.cc \
rocksdb/db/memtable_allocator.h \
rocksdb/db/memtable.cc \
rocksdb/db/memtable.h \
rocksdb/db/memtable_list.cc \
rocksdb/db/memtable_list.h \
rocksdb/db/merge_context.h \
rocksdb/db/merge_helper.cc \
rocksdb/db/merge_helper.h \
rocksdb/db/merge_operator.cc \
rocksdb/db/repair.cc \
rocksdb/db/skiplist.h \
rocksdb/db/slice.cc \
rocksdb/db/snapshot.h \
rocksdb/db/table_cache.cc \
rocksdb/db/table_cache.h \
rocksdb/db/table_properties_collector.cc \
rocksdb/db/table_properties_collector.h \
rocksdb/db/transaction_log_impl.cc \
rocksdb/db/transaction_log_impl.h \
rocksdb/db/version_builder.cc \
rocksdb/db/version_builder.h \
rocksdb/db/version_edit.cc \
rocksdb/db/version_edit.h \
rocksdb/db/version_set.cc \
rocksdb/db/version_set.h \
rocksdb/db/wal_manager.cc \
rocksdb/db/wal_manager.h \
rocksdb/db/write_batch_base.cc \
rocksdb/db/write_batch.cc \
rocksdb/db/write_batch_internal.h \
rocksdb/db/writebuffer.h \
rocksdb/db/write_controller.cc \
rocksdb/db/write_controller.h \
rocksdb/db/write_thread.cc \
rocksdb/db/write_thread.h \
rocksdb/hdfs/README \
rocksdb/hdfs/env_hdfs.h \
rocksdb/hdfs/setup.sh \
rocksdb/include/rocksdb/cache.h \
rocksdb/include/rocksdb/c.h \
rocksdb/include/rocksdb/compaction_filter.h \
rocksdb/include/rocksdb/comparator.h \
rocksdb/include/rocksdb/db.h \
rocksdb/include/rocksdb/env.h \
rocksdb/include/rocksdb/filter_policy.h \
rocksdb/include/rocksdb/flush_block_policy.h \
rocksdb/include/rocksdb/immutable_options.h \
rocksdb/include/rocksdb/iostats_context.h \
rocksdb/include/rocksdb/iterator.h \
rocksdb/include/rocksdb/ldb_tool.h \
rocksdb/include/rocksdb/listener.h \
rocksdb/include/rocksdb/memtablerep.h \
rocksdb/include/rocksdb/merge_operator.h \
rocksdb/include/rocksdb/metadata.h \
rocksdb/include/rocksdb/options.h \
rocksdb/include/rocksdb/perf_context.h \
rocksdb/include/rocksdb/rate_limiter.h \
rocksdb/include/rocksdb/slice.h \
rocksdb/include/rocksdb/slice_transform.h \
rocksdb/include/rocksdb/sst_dump_tool.h \
rocksdb/include/rocksdb/statistics.h \
rocksdb/include/rocksdb/status.h \
rocksdb/include/rocksdb/table.h \
rocksdb/include/rocksdb/table_properties.h \
rocksdb/include/rocksdb/thread_status.h \
rocksdb/include/rocksdb/transaction_log.h \
rocksdb/include/rocksdb/types.h \
rocksdb/include/rocksdb/universal_compaction.h \
rocksdb/include/rocksdb/utilities/backupable_db.h \
rocksdb/include/rocksdb/utilities/checkpoint.h \
rocksdb/include/rocksdb/utilities/convenience.h \
rocksdb/include/rocksdb/utilities/db_ttl.h \
rocksdb/include/rocksdb/utilities/document_db.h \
rocksdb/include/rocksdb/utilities/geo_db.h \
rocksdb/include/rocksdb/utilities/json_document.h \
rocksdb/include/rocksdb/utilities/leveldb_options.h \
rocksdb/include/rocksdb/utilities/spatial_db.h \
rocksdb/include/rocksdb/utilities/stackable_db.h \
rocksdb/include/rocksdb/utilities/utility_db.h \
rocksdb/include/rocksdb/utilities/write_batch_with_index.h \
rocksdb/include/rocksdb/version.h \
rocksdb/include/rocksdb/write_batch_base.h \
rocksdb/include/rocksdb/write_batch.h \
rocksdb/include/utilities/backupable_db.h \
rocksdb/include/utilities/db_ttl.h \
rocksdb/include/utilities/geo_db.h \
rocksdb/include/utilities/stackable_db.h \
rocksdb/include/utilities/utility_db.h \
rocksdb/m4/libtool.m4 \
rocksdb/m4/lt~obsolete.m4 \
rocksdb/m4/ltoptions.m4 \
rocksdb/m4/ltsugar.m4 \
rocksdb/m4/ltversion.m4 \
rocksdb/port/likely.h \
rocksdb/port/port.h \
rocksdb/port/port_posix.cc \
rocksdb/port/port_posix.h \
rocksdb/port/stack_trace.cc \
rocksdb/port/stack_trace.h \
rocksdb/table/adaptive_table_factory.cc \
rocksdb/table/adaptive_table_factory.h \
rocksdb/table/block_based_filter_block.cc \
rocksdb/table/block_based_filter_block.h \
rocksdb/table/block_based_table_builder.cc \
rocksdb/table/block_based_table_builder.h \
rocksdb/table/block_based_table_factory.cc \
rocksdb/table/block_based_table_factory.h \
rocksdb/table/block_based_table_reader.cc \
rocksdb/table/block_based_table_reader.h \
rocksdb/table/block_builder.cc \
rocksdb/table/block_builder.h \
rocksdb/table/block.cc \
rocksdb/table/block.h \
rocksdb/table/block_hash_index.cc \
rocksdb/table/block_hash_index.h \
rocksdb/table/block_prefix_index.cc \
rocksdb/table/block_prefix_index.h \
rocksdb/table/bloom_block.cc \
rocksdb/table/bloom_block.h \
rocksdb/table/cuckoo_table_builder.cc \
rocksdb/table/cuckoo_table_builder.h \
rocksdb/table/cuckoo_table_factory.cc \
rocksdb/table/cuckoo_table_factory.h \
rocksdb/table/cuckoo_table_reader.cc \
rocksdb/table/cuckoo_table_reader.h \
rocksdb/table/filter_block.h \
rocksdb/table/flush_block_policy.cc \
rocksdb/table/format.cc \
rocksdb/table/format.h \
rocksdb/table/full_filter_block.cc \
rocksdb/table/full_filter_block.h \
rocksdb/table/get_context.cc \
rocksdb/table/get_context.h \
rocksdb/table/iterator.cc \
rocksdb/table/iterator_wrapper.h \
rocksdb/table/iter_heap.h \
rocksdb/table/merger.cc \
rocksdb/table/merger.h \
rocksdb/table/meta_blocks.cc \
rocksdb/table/meta_blocks.h \
rocksdb/table/mock_table.h \
rocksdb/table/plain_table_builder.cc \
rocksdb/table/plain_table_builder.h \
rocksdb/table/plain_table_factory.cc \
rocksdb/table/plain_table_factory.h \
rocksdb/table/plain_table_index.cc \
rocksdb/table/plain_table_index.h \
rocksdb/table/plain_table_key_coding.cc \
rocksdb/table/plain_table_key_coding.h \
rocksdb/table/plain_table_reader.cc \
rocksdb/table/plain_table_reader.h \
rocksdb/table/table_builder.h \
rocksdb/table/table_properties.cc \
rocksdb/table/table_properties_internal.h \
rocksdb/table/table_reader.h \
rocksdb/table/two_level_iterator.cc \
rocksdb/table/two_level_iterator.h \
rocksdb/third-party/gtest-1.7.0/fused-src/gtest/gtest.h \
rocksdb/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc \
rocksdb/third-party/fbson/FbsonDocument.h \
rocksdb/third-party/fbson/FbsonJsonParser.h \
rocksdb/third-party/fbson/FbsonStream.h \
rocksdb/third-party/fbson/FbsonUtil.h \
rocksdb/third-party/fbson/FbsonWriter.h \
rocksdb/util/allocator.h \
rocksdb/util/arena.cc \
rocksdb/util/arena.h \
rocksdb/util/auto_roll_logger.cc \
rocksdb/util/auto_roll_logger.h \
rocksdb/util/autovector.h \
rocksdb/util/benchharness.h \
rocksdb/util/bloom.cc \
rocksdb/util/build_version.h \
rocksdb/util/cache.cc \
rocksdb/util/coding.cc \
rocksdb/util/coding.h \
rocksdb/util/comparator.cc \
rocksdb/util/compression.h \
rocksdb/util/crc32c.cc \
rocksdb/util/crc32c.h \
rocksdb/util/db_info_dumper.cc \
rocksdb/util/db_info_dumper.h \
rocksdb/util/dynamic_bloom.cc \
rocksdb/util/dynamic_bloom.h \
rocksdb/util/env.cc \
rocksdb/util/env_hdfs.cc \
rocksdb/util/env_posix.cc \
rocksdb/util/event_logger.cc \
rocksdb/util/event_logger.h \
rocksdb/util/file_util.cc \
rocksdb/util/file_util.h \
rocksdb/util/filter_policy.cc \
rocksdb/util/hash.cc \
rocksdb/util/hash_cuckoo_rep.cc \
rocksdb/util/hash_cuckoo_rep.h \
rocksdb/util/hash.h \
rocksdb/util/hash_linklist_rep.cc \
rocksdb/util/hash_linklist_rep.h \
rocksdb/util/hash_skiplist_rep.cc \
rocksdb/util/hash_skiplist_rep.h \
rocksdb/util/histogram.cc \
rocksdb/util/histogram.h \
rocksdb/util/instrumented_mutex.cc \
rocksdb/util/instrumented_mutex.h \
rocksdb/util/iostats_context.cc \
rocksdb/util/iostats_context_imp.h \
rocksdb/utilities/backupable/backupable_db.cc \
rocksdb/utilities/checkpoint/checkpoint.cc \
rocksdb/utilities/compacted_db/compacted_db_impl.cc \
rocksdb/utilities/compacted_db/compacted_db_impl.h \
rocksdb/utilities/convenience/convenience.cc \
rocksdb/utilities/document/document_db.cc \
rocksdb/utilities/document/json_document_builder.cc \
rocksdb/utilities/document/json_document.cc \
rocksdb/utilities/geodb/geodb_impl.cc \
rocksdb/utilities/geodb/geodb_impl.h \
rocksdb/utilities/leveldb_options/leveldb_options.cc \
rocksdb/utilities/merge_operators/put.cc \
rocksdb/utilities/merge_operators/string_append/stringappend2.cc \
rocksdb/utilities/merge_operators/string_append/stringappend2.h \
rocksdb/utilities/merge_operators/string_append/stringappend.cc \
rocksdb/utilities/merge_operators/string_append/stringappend.h \
rocksdb/utilities/merge_operators/uint64add.cc \
rocksdb/utilities/merge_operators.h \
rocksdb/utilities/redis/redis_list_exception.h \
rocksdb/utilities/redis/redis_list_iterator.h \
rocksdb/utilities/redis/redis_lists.cc \
rocksdb/utilities/redis/redis_lists.h \
rocksdb/utilities/spatialdb/spatial_db.cc \
rocksdb/utilities/spatialdb/utils.h \
rocksdb/utilities/ttl/db_ttl_impl.cc \
rocksdb/utilities/ttl/db_ttl_impl.h \
rocksdb/utilities/write_batch_with_index/write_batch_with_index.cc \
rocksdb/util/ldb_cmd.cc \
rocksdb/util/ldb_cmd_execute_result.h \
rocksdb/util/ldb_cmd.h \
rocksdb/util/ldb_tool.cc \
rocksdb/util/log_buffer.cc \
rocksdb/util/log_buffer.h \
rocksdb/util/logging.cc \
rocksdb/util/logging.h \
rocksdb/util/memenv.cc \
rocksdb/util/mock_env.h \
rocksdb/util/murmurhash.cc \
rocksdb/util/murmurhash.h \
rocksdb/util/mutable_cf_options.cc \
rocksdb/util/mutable_cf_options.h \
rocksdb/util/mutexlock.h \
rocksdb/util/options_builder.cc \
rocksdb/util/options.cc \
rocksdb/util/options_helper.cc \
rocksdb/util/options_helper.h \
rocksdb/util/perf_context.cc \
rocksdb/util/perf_context_imp.h \
rocksdb/util/posix_logger.h \
rocksdb/util/random.h \
rocksdb/util/rate_limiter.cc \
rocksdb/util/rate_limiter.h \
rocksdb/util/scoped_arena_iterator.h \
rocksdb/util/skiplistrep.cc \
rocksdb/util/slice.cc \
rocksdb/util/sst_dump_tool.cc \
rocksdb/util/sst_dump_tool_imp.h \
rocksdb/util/statistics.cc \
rocksdb/util/statistics.h \
rocksdb/util/status.cc \
rocksdb/util/stl_wrappers.h \
rocksdb/util/stop_watch.h \
rocksdb/util/string_util.cc \
rocksdb/util/string_util.h \
rocksdb/util/sync_point.cc \
rocksdb/util/sync_point.h \
rocksdb/util/testharness.h \
rocksdb/util/testutil.h \
rocksdb/util/thread_local.cc \
rocksdb/util/thread_local.h \
rocksdb/util/thread_operation.h \
rocksdb/util/thread_status_impl.cc \
rocksdb/util/thread_status_updater.cc \
rocksdb/util/thread_status_updater_debug.cc \
rocksdb/util/thread_status_updater.h \
rocksdb/util/thread_status_util.cc \
rocksdb/util/thread_status_util_debug.cc \
rocksdb/util/thread_status_util.h \
rocksdb/util/vectorrep.cc \
rocksdb/util/xfunc.cc \
rocksdb/util/xfunc.h \
rocksdb/util/xxhash.cc \
rocksdb/util/xxhash.h
endif # WITH_SLIBROCKSDB

View File

@ -702,7 +702,7 @@ OPTION(rocksdb_write_buffer_size, OPT_U64, 0) // rocksdb write buffer size
OPTION(rocksdb_target_file_size_base, OPT_U64, 0) // target file size for compaction
OPTION(rocksdb_cache_size, OPT_U64, 0) // rocksdb cache size
OPTION(rocksdb_block_size, OPT_U64, 0) // rocksdb block size
OPTION(rocksdb_bloom_size, OPT_INT, 0) // rocksdb bloom bits per entry
OPTION(rocksdb_bloom_bits_per_key, OPT_INT, 10) // rocksdb bloom bits per entry
OPTION(rocksdb_write_buffer_num, OPT_INT, 0) // rocksdb bloom bits per entry
OPTION(rocksdb_background_compactions, OPT_INT, 0) // number for background compaction jobs
OPTION(rocksdb_background_flushes, OPT_INT, 0) // number for background flush jobs

View File

@ -17,12 +17,14 @@ KeyValueDB *KeyValueDB::create(CephContext *cct, const string& type,
return new LevelDBStore(cct, dir);
}
#ifdef HAVE_KINETIC
if (type == "kinetic") {
if (type == "kinetic" &&
cct->check_experimental_feature_enabled("kinetic")) {
return new KineticStore(cct);
}
#endif
#ifdef HAVE_LIBROCKSDB
if (type == "rocksdb") {
if (type == "rocksdb" &&
cct->check_experimental_feature_enabled("rocksdb")) {
return new RocksDBStore(cct, dir);
}
#endif
@ -35,12 +37,14 @@ int KeyValueDB::test_init(const string& type, const string& dir)
return LevelDBStore::_test_init(dir);
}
#ifdef HAVE_KINETIC
if (type == "kinetic") {
if (type == "kinetic" &&
cct->check_experimental_feature_enabled("kinetic")) {
return KineticStore::_test_init(g_ceph_context);
}
#endif
#ifdef HAVE_LIBROCKSDB
if (type == "rocksdb"){
if (type == "rocksdb" &&
cct->check_experimental_feature_enabled("rocksdb")){
return RocksDBStore::_test_init(dir);
}
#endif

View File

@ -8,6 +8,7 @@
#include <errno.h>
#include "rocksdb/db.h"
#include "rocksdb/table.h"
#include "rocksdb/env.h"
#include "rocksdb/write_batch.h"
#include "rocksdb/slice.h"
@ -25,7 +26,7 @@ int RocksDBStore::init()
options.write_buffer_size = g_conf->rocksdb_write_buffer_size;
options.cache_size = g_conf->rocksdb_cache_size;
options.block_size = g_conf->rocksdb_block_size;
options.bloom_size = g_conf->rocksdb_bloom_size;
options.bloom_bits_per_key = g_conf->rocksdb_bloom_bits_per_key;
options.compression_type = g_conf->rocksdb_compression;
options.paranoid_checks = g_conf->rocksdb_paranoid;
options.max_open_files = g_conf->rocksdb_max_open_files;
@ -48,6 +49,7 @@ int RocksDBStore::init()
int RocksDBStore::do_open(ostream &out, bool create_if_missing)
{
rocksdb::Options ldoptions;
rocksdb::BlockBasedTableOptions table_options;
if (options.write_buffer_size)
ldoptions.write_buffer_size = options.write_buffer_size;
@ -62,15 +64,12 @@ int RocksDBStore::do_open(ostream &out, bool create_if_missing)
if (options.max_open_files)
ldoptions.max_open_files = options.max_open_files;
if (options.cache_size) {
ldoptions.block_cache = rocksdb::NewLRUCache(options.cache_size);
table_options.block_cache = rocksdb::NewLRUCache(options.cache_size);
}
if (options.block_size)
ldoptions.block_size = options.block_size;
if (options.bloom_size) {
const rocksdb::FilterPolicy *_filterpolicy =
rocksdb::NewBloomFilterPolicy(options.bloom_size);
ldoptions.filter_policy = _filterpolicy;
filterpolicy = _filterpolicy;
table_options.block_size = options.block_size;
if (options.bloom_bits_per_key) {
table_options.filter_policy.reset(rocksdb::NewBloomFilterPolicy(options.bloom_bits_per_key, true));
}
if (options.compression_type.length() == 0)
ldoptions.compression = rocksdb::kNoCompression;
@ -83,7 +82,7 @@ int RocksDBStore::do_open(ostream &out, bool create_if_missing)
else
ldoptions.compression = rocksdb::kNoCompression;
if (options.block_restart_interval)
ldoptions.block_restart_interval = options.block_restart_interval;
table_options.block_restart_interval = options.block_restart_interval;
ldoptions.error_if_exists = options.error_if_exists;
ldoptions.paranoid_checks = options.paranoid_checks;
@ -108,6 +107,8 @@ int RocksDBStore::do_open(ostream &out, bool create_if_missing)
if(options.wal_dir.length())
ldoptions.wal_dir = options.wal_dir;
//apply table_options
ldoptions.table_factory.reset(NewBlockBasedTableFactory(table_options));
//rocksdb::DB *_db;
rocksdb::Status status = rocksdb::DB::Open(ldoptions, path, &db);

View File

@ -117,7 +117,7 @@ public:
int max_open_files; /// maximum number of files RocksDB can open at once
uint64_t cache_size; /// size of extra decompressed cache to use
uint64_t block_size; /// user data per block
int bloom_size; /// number of bits per entry to put in a bloom filter
int bloom_bits_per_key; /// number of bits per entry to put in a bloom filter
string compression_type; /// whether to use libsnappy compression or not
// don't change these ones. No, seriously
@ -140,7 +140,7 @@ public:
max_open_files(0), //< 0 means default
cache_size(0), //< 0 means no cache (default)
block_size(0), //< 0 means default
bloom_size(0), //< 0 means no bloom filter (default)
bloom_bits_per_key(10), //< 10 is the default value which yields ~1% false positive rate.
compression_type("none"), //< set to false for no compression
block_restart_interval(0), //< 0 means default
error_if_exists(false), //< set to true if you want to check nonexistence

@ -1 +1 @@
Subproject commit 05da5930f3a130c4dea879a85a26f2c8ac7465c4
Subproject commit 6ca7befb55767784a447a5daddd09e387ec92bd3