rocksdb/table
Siying Dong 64b6452e0c Make InternalKeyComparator final and directly use it in merging iterator
Summary:
Merging iterator invokes InternalKeyComparator.Compare() frequently to heap merge. By making InternalKeyComparator final and merging iterator to directly use InternalKeyComparator rather than through Iterator interface, we can give compiler a choice to avoid one more virtual function call if possible. I ran readseq benchmark in memory-only use case to make sure the performance at least doesn't regress.

I have to disable the final key word in debug build, as a hack test class depends on overriding the class.
Closes https://github.com/facebook/rocksdb/pull/2860

Differential Revision: D5800461

Pulled By: siying

fbshipit-source-id: ab876f22a09bb5c560740911412336e0e25ccb53
2017-09-11 12:04:21 -07:00
..
adaptive_table_factory.cc Support prefetch last 512KB with direct I/O in block based file reader 2017-08-11 12:16:45 -07:00
adaptive_table_factory.h Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
block_based_filter_block_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
block_based_filter_block.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
block_based_filter_block.h Change RocksDB License 2017-07-15 16:11:23 -07:00
block_based_table_builder.cc support disabling checksum in block-based table 2017-08-23 19:40:47 -07:00
block_based_table_builder.h Change RocksDB License 2017-07-15 16:11:23 -07:00
block_based_table_factory.cc Replace dynamic_cast<> 2017-07-28 16:27:16 -07:00
block_based_table_factory.h Replace dynamic_cast<> 2017-07-28 16:27:16 -07:00
block_based_table_reader.cc fix clang bug in block-based table reader 2017-08-23 15:12:05 -07:00
block_based_table_reader.h Extend pin_l0 to filter partitions 2017-08-23 07:56:08 -07:00
block_builder.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
block_builder.h Change RocksDB License 2017-07-15 16:11:23 -07:00
block_prefix_index.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
block_prefix_index.h Change RocksDB License 2017-07-15 16:11:23 -07:00
block_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
block.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
block.h table/block.h: change memset 2017-07-17 10:41:56 -07:00
bloom_block.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
bloom_block.h Change RocksDB License 2017-07-15 16:11:23 -07:00
cleanable_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
cuckoo_table_builder_test.cc allow nullptr Slice only as sentinel 2017-08-23 10:56:06 -07:00
cuckoo_table_builder.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
cuckoo_table_builder.h Change RocksDB License 2017-07-15 16:11:23 -07:00
cuckoo_table_factory.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
cuckoo_table_factory.h Replace dynamic_cast<> 2017-07-28 16:27:16 -07:00
cuckoo_table_reader_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
cuckoo_table_reader.cc remove unnecessary internal_comparator param in newIterator 2017-07-27 14:30:42 -07:00
cuckoo_table_reader.h remove unnecessary internal_comparator param in newIterator 2017-07-27 14:30:42 -07:00
filter_block.h Extend pin_l0 to filter partitions 2017-08-23 07:56:08 -07:00
flush_block_policy.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
format.cc support disabling checksum in block-based table 2017-08-23 19:40:47 -07:00
format.h Support prefetch last 512KB with direct I/O in block based file reader 2017-08-11 12:16:45 -07:00
full_filter_bits_builder.h Change RocksDB License 2017-07-15 16:11:23 -07:00
full_filter_block_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
full_filter_block.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
full_filter_block.h Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
get_context.cc write-prepared txn: call IsInSnapshot 2017-09-11 09:14:48 -07:00
get_context.h write-prepared txn: call IsInSnapshot 2017-09-11 09:14:48 -07:00
index_builder.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
index_builder.h Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
internal_iterator.h Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
iter_heap.h Make InternalKeyComparator final and directly use it in merging iterator 2017-09-11 12:04:21 -07:00
iterator_wrapper.h Change RocksDB License 2017-07-15 16:11:23 -07:00
iterator.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
merger_test.cc Make InternalKeyComparator final and directly use it in merging iterator 2017-09-11 12:04:21 -07:00
merging_iterator.cc Make InternalKeyComparator final and directly use it in merging iterator 2017-09-11 12:04:21 -07:00
merging_iterator.h Make InternalKeyComparator final and directly use it in merging iterator 2017-09-11 12:04:21 -07:00
meta_blocks.cc Support prefetch last 512KB with direct I/O in block based file reader 2017-08-11 12:16:45 -07:00
meta_blocks.h Support prefetch last 512KB with direct I/O in block based file reader 2017-08-11 12:16:45 -07:00
mock_table.cc remove unnecessary internal_comparator param in newIterator 2017-07-27 14:30:42 -07:00
mock_table.h remove unnecessary internal_comparator param in newIterator 2017-07-27 14:30:42 -07:00
partitioned_filter_block_test.cc Extend pin_l0 to filter partitions 2017-08-23 07:56:08 -07:00
partitioned_filter_block.cc Extend pin_l0 to filter partitions 2017-08-23 07:56:08 -07:00
partitioned_filter_block.h Extend pin_l0 to filter partitions 2017-08-23 07:56:08 -07:00
persistent_cache_helper.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
persistent_cache_helper.h Change RocksDB License 2017-07-15 16:11:23 -07:00
persistent_cache_options.h Change RocksDB License 2017-07-15 16:11:23 -07:00
plain_table_builder.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
plain_table_builder.h Change RocksDB License 2017-07-15 16:11:23 -07:00
plain_table_factory.cc Replace dynamic_cast<> 2017-07-28 16:27:16 -07:00
plain_table_factory.h Replace dynamic_cast<> 2017-07-28 16:27:16 -07:00
plain_table_index.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
plain_table_index.h Change RocksDB License 2017-07-15 16:11:23 -07:00
plain_table_key_coding.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
plain_table_key_coding.h Change RocksDB License 2017-07-15 16:11:23 -07:00
plain_table_reader.cc Support prefetch last 512KB with direct I/O in block based file reader 2017-08-11 12:16:45 -07:00
plain_table_reader.h remove unnecessary internal_comparator param in newIterator 2017-07-27 14:30:42 -07:00
scoped_arena_iterator.h Change RocksDB License 2017-07-15 16:11:23 -07:00
sst_file_writer_collectors.h Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
sst_file_writer.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
table_builder.h Change RocksDB License 2017-07-15 16:11:23 -07:00
table_properties_internal.h Change RocksDB License 2017-07-15 16:11:23 -07:00
table_properties.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
table_reader_bench.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
table_reader.h add VerifyChecksum() to db.h 2017-08-09 15:58:13 -07:00
table_test.cc Preload l0 index partitions 2017-08-18 10:56:20 -07:00
two_level_iterator.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
two_level_iterator.h Change RocksDB License 2017-07-15 16:11:23 -07:00