rocksdb/db
sdong 2d3468c293 MemTableIterator not to reference Memtable
Summary: In one of the perf, I shows 10%-25% CPU costs of MemTableIterator.Seek(), when doing dynamic prefix seek, are spent on checking whether we need to do bloom filter check or finding out the prefix extractor. Seems that  more level of pointer checking makes CPU cache miss more likely. This patch makes things slightly simpler by copying pointer of bloom of prefix extractor into the iterator.

Test Plan: make all check

Reviewers: haobo, ljin

Reviewed By: ljin

CC: igor, dhruba, yhchiang, leveldb

Differential Revision: https://reviews.facebook.net/D17247
2014-03-28 16:46:25 -07:00
..
builder.cc Enhance partial merge to support multiple arguments 2014-03-24 17:57:13 -07:00
builder.h [Performance Branch] PlainTable to encode rows with seqID 0, value type using 1 internal byte. 2014-02-03 12:19:30 -08:00
c_test.c Enhance partial merge to support multiple arguments 2014-03-24 17:57:13 -07:00
c.cc Enhance partial merge to support multiple arguments 2014-03-24 17:57:13 -07:00
compaction_picker.cc ComputeCompactionScore in CompactionPicker 2014-03-19 16:52:26 -07:00
compaction_picker.h Buffer info logs when picking compactions and write them out after releasing the mutex 2014-03-05 15:36:32 -08:00
compaction.cc Don't compact with zero input files 2014-03-19 16:01:25 -07:00
compaction.h CompactionContext to include is_manual_compaction 2014-02-12 12:24:18 -08:00
corruption_test.cc Some small cleaning up to make some compiling environment happy 2014-03-26 18:11:41 -07:00
db_bench.cc cache friendly blocked bloomfilter 2014-03-28 09:21:20 -07:00
db_filesnapshot.cc Move functions from VersionSet to Version 2014-01-15 16:18:04 -08:00
db_impl_readonly.cc Sanity check on Open 2014-03-20 14:18:29 -07:00
db_impl_readonly.h CompactRange() to return status 2014-01-23 16:41:46 -08:00
db_impl.cc [RocksDB] Add db property "rocksdb.cur-size-active-mem-table" 2014-03-27 15:14:04 -07:00
db_impl.h [RocksDB] Add db property "rocksdb.cur-size-active-mem-table" 2014-03-27 15:14:04 -07:00
db_iter.cc Enhance partial merge to support multiple arguments 2014-03-24 17:57:13 -07:00
db_iter.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
db_stats_logger.cc Move functions from VersionSet to Version 2014-01-15 16:18:04 -08:00
db_test.cc [RocksDB] Add db property "rocksdb.cur-size-active-mem-table" 2014-03-27 15:14:04 -07:00
dbformat_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
dbformat.cc [Performance Branch] PlainTable to encode rows with seqID 0, value type using 1 internal byte. 2014-02-03 12:19:30 -08:00
dbformat.h [Performance Branch] PlainTable to encode rows with seqID 0, value type using 1 internal byte. 2014-02-03 12:19:30 -08:00
deletefile_test.cc Start DeleteFileTest with clean plate 2013-11-15 16:30:23 -08:00
filename_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
filename.cc Unify DeleteFile and DeleteWalFiles 2013-10-25 08:32:14 -07:00
filename.h Unify DeleteFile and DeleteWalFiles 2013-10-25 08:32:14 -07:00
internal_stats.cc [RocksDB] Add db property "rocksdb.cur-size-active-mem-table" 2014-03-27 15:14:04 -07:00
internal_stats.h [RocksDB] Add db property "rocksdb.cur-size-active-mem-table" 2014-03-27 15:14:04 -07:00
log_format.h Some minor refactoring on the code 2014-01-02 16:32:31 -08:00
log_reader.cc Make Log::Reader more robust 2014-02-28 13:19:47 -08:00
log_reader.h Fix UnmarkEOF for partial blocks 2014-01-27 14:49:10 -08:00
log_test.cc Make it compile on Debian/GCC 4.7 2014-03-14 22:44:35 +00:00
log_writer.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
log_writer.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
memtable_list.cc Several easy-to-add properties related to compaction and flushes 2014-03-18 14:00:09 -07:00
memtable_list.h Several easy-to-add properties related to compaction and flushes 2014-03-18 14:00:09 -07:00
memtable.cc MemTableIterator not to reference Memtable 2014-03-28 16:46:25 -07:00
memtable.h A heuristic way to check if a memtable is full 2014-03-12 16:40:14 -07:00
merge_context.h Enhance partial merge to support multiple arguments 2014-03-24 17:57:13 -07:00
merge_helper.cc Fix the bug in MergeUtil which causes mixing values of different keys. 2014-03-27 16:15:25 -07:00
merge_helper.h [rocksdb] new CompactionFilterV2 API 2014-03-24 20:47:53 -07:00
merge_operator.cc Some small cleaning up to make some compiling environment happy 2014-03-26 18:11:41 -07:00
merge_test.cc Enhance partial merge to support multiple arguments 2014-03-24 17:57:13 -07:00
perf_context_test.cc Missing includes 2014-03-14 13:02:20 -07:00
plain_table_db_test.cc Consolidate SliceTransform object ownership 2014-03-10 12:56:46 -07:00
prefix_filter_iterator.h Moving Some includes from options.h to forward declaration 2014-01-24 17:16:22 -08:00
prefix_test.cc Fix HashSkipList and HashLinkedList SIGSEGV 2014-03-14 10:02:04 -07:00
repair.cc Optimize fallocation 2014-03-17 21:52:14 -07:00
simple_table_db_test.cc Make table properties shareable 2014-02-07 19:26:49 -08:00
skiplist_test.cc Clean up arena API 2014-01-30 22:10:10 -08:00
skiplist.h Consolidate SliceTransform object ownership 2014-03-10 12:56:46 -07:00
snapshot.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
table_cache.cc When Options.max_num_files=-1, non level0 files also by pass table cache 2014-03-25 18:40:52 -07:00
table_cache.h When Options.max_num_files=-1, non level0 files also by pass table cache 2014-03-25 18:40:52 -07:00
table_properties_collector_test.cc Fix problem 3 for issue #80 2014-02-11 17:52:18 -08:00
table_properties_collector.cc Extract metaindex block from block-based table 2013-12-05 16:34:16 -08:00
table_properties_collector.h Extract metaindex block from block-based table 2013-12-05 16:34:16 -08:00
tailing_iter.cc Consolidate SliceTransform object ownership 2014-03-10 12:56:46 -07:00
tailing_iter.h Tailing iterator 2014-01-23 16:26:08 -08:00
transaction_log_impl.cc Revert "Fix bad merge of D16791 and D16767" 2014-03-12 09:37:43 -07:00
transaction_log_impl.h Revert "Fix bad merge of D16791 and D16767" 2014-03-12 09:37:43 -07:00
version_edit_test.cc Remove compaction pointers 2014-01-16 14:06:53 -08:00
version_edit.cc disable the log_number check in Recover() 2014-03-18 12:46:29 -07:00
version_edit.h disable the log_number check in Recover() 2014-03-18 12:46:29 -07:00
version_set_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
version_set.cc Fix no return warning in FileComparator 2014-03-26 14:46:07 -07:00
version_set.h ComputeCompactionScore in CompactionPicker 2014-03-19 16:52:26 -07:00
write_batch_internal.h In-place updates for equal keys and similar sized values 2013-10-31 11:27:12 -07:00
write_batch_test.cc [Performance Branch] PlainTable to encode rows with seqID 0, value type using 1 internal byte. 2014-02-03 12:19:30 -08:00
write_batch.cc Merge branch 'master' into performance 2014-01-23 16:32:49 -08:00