rocksdb/table
Zhongyi Xie 3fe0937180 Use block cache to track memory usage when ReadOptions.fill_cache=false
Summary:
ReadOptions.fill_cache is set in compaction inputs and can be set by users in their queries too. It tells RocksDB not to put a data block used to block cache.

The memory used by the data block is, however, not trackable by users.

To make the system more manageable, we can cost the block to block cache while using it, and then release it after using.
Closes https://github.com/facebook/rocksdb/pull/3333

Differential Revision: D6670230

Pulled By: miasantreble

fbshipit-source-id: ab848d3ed286bd081a13ee1903de357b56cbc308
2018-01-29 14:43:10 -08: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.cc BlockBasedTable::NewDataBlockIterator to always return BlockIter 2018-01-25 14:57:18 -08:00
block.h BlockBasedTable::NewDataBlockIterator to always return BlockIter 2018-01-25 14:57:18 -08: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_filter_block_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
block_based_table_builder.cc Add a BlockBasedTableOption to turn off index block compression. 2018-01-10 15:11:59 -08:00
block_based_table_builder.h TableProperty::oldest_key_time defaults to 0 2017-10-27 15:00:05 -07:00
block_based_table_factory.cc Add a BlockBasedTableOption to turn off index block compression. 2018-01-10 15:11:59 -08:00
block_based_table_factory.h Add a BlockBasedTableOption to turn off index block compression. 2018-01-10 15:11:59 -08:00
block_based_table_reader.cc Use block cache to track memory usage when ReadOptions.fill_cache=false 2018-01-29 14:43:10 -08:00
block_based_table_reader.h Use block cache to track memory usage when ReadOptions.fill_cache=false 2018-01-29 14:43:10 -08: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_fetcher.cc Refactor ReadBlockContents() 2017-12-11 15:27:32 -08:00
block_fetcher.h Fix BlockFetcher ASAN error 2017-12-12 12:12:38 -08: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 Speed up BlockTest.BlockReadAmpBitmap 2018-01-02 10:41:28 -08: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.cc Enable MSVC W4 with a few exceptions. Fix warnings and bugs 2017-10-19 10:57:12 -07:00
cuckoo_table_builder.h Change RocksDB License 2017-07-15 16:11:23 -07:00
cuckoo_table_builder_test.cc Suppress lint in old files 2018-01-29 12:56:42 -08: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.cc table: Fix coverity issues 2017-12-07 11:57:36 -08:00
cuckoo_table_reader.h remove unnecessary internal_comparator param in newIterator 2017-07-27 14:30:42 -07:00
cuckoo_table_reader_test.cc fix gflags namespace 2017-12-01 10:42:05 -08: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 NUMBER_BLOCK_COMPRESSED, etc, shouldn't be treated as timer counter 2017-12-14 10:27:43 -08:00
format.h Refactor ReadBlockContents() 2017-12-11 15:27:32 -08:00
full_filter_bits_builder.h 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
full_filter_block_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
get_context.cc Reduce heavy hitter for Get operation 2017-12-12 21:11:33 -08:00
get_context.h Reduce heavy hitter for Get operation 2017-12-12 21:11:33 -08:00
index_builder.cc Enable MSVC W4 with a few exceptions. Fix warnings and bugs 2017-10-19 10:57:12 -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.cc PinnableSlice move assignment 2017-10-12 18:28:24 -07:00
iterator_wrapper.h Change RocksDB License 2017-07-15 16:11:23 -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 fix DBImpl::NewInternalIterator super-version leak on failure 2017-10-11 14:57:43 -07:00
merging_iterator.h fix DBImpl::NewInternalIterator super-version leak on failure 2017-10-11 14:57:43 -07:00
meta_blocks.cc Refactor ReadBlockContents() 2017-12-11 15:27:32 -08: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.cc Reduce heavy hitter for Get operation 2017-12-12 21:11:33 -08:00
partitioned_filter_block.h Extend pin_l0 to filter partitions 2017-08-23 07:56:08 -07:00
partitioned_filter_block_test.cc Reduce heavy hitter for Get operation 2017-12-12 21:11:33 -08: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 Allow upgrades from nullptr to some merge operator 2017-10-04 09:57:23 -07:00
plain_table_factory.h Enable MSVC W4 with a few exceptions. Fix warnings and bugs 2017-10-19 10:57:12 -07:00
plain_table_index.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
plain_table_index.h table: Fix coverity issues 2017-12-07 11:57:36 -08: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.cc Support skipping bloom filters for SstFileWriter 2018-01-22 14:42:18 -08:00
sst_file_writer_collectors.h Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
table_builder.h TableProperty::oldest_key_time defaults to 0 2017-10-27 15:00:05 -07:00
table_properties.cc Eliminate some redundant block reads. 2018-01-10 17:11:58 -08:00
table_properties_internal.h Eliminate some redundant block reads. 2018-01-10 17:11:58 -08:00
table_reader.h add VerifyChecksum() to db.h 2017-08-09 15:58:13 -07:00
table_reader_bench.cc fix gflags namespace 2017-12-01 10:42:05 -08:00
table_test.cc Split HarnessTest_Randomized to avoid timeout 2018-01-29 07:41:44 -08: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