rocksdb/db
Dhruba Borthakur b4ad5e89ae Implement a compressed block cache.
Summary:
Rocksdb can now support a uncompressed block cache, or a compressed
block cache or both. Lookups first look for a block in the
uncompressed cache, if it is not found only then it is looked up
in the compressed cache. If it is found in the compressed cache,
then it is uncompressed and inserted into the uncompressed cache.

It is possible that the same block resides in the compressed cache
as well as the uncompressed cache at the same time. Both caches
have their own individual LRU policy.

Test Plan: Unit test case attached.

Reviewers: kailiu, sdong, haobo, leveldb

Reviewed By: haobo

CC: xjin, haobo

Differential Revision: https://reviews.facebook.net/D12675
2013-11-01 14:31:35 -07:00
..
builder.cc Follow-up Cleaning-up After D13521 2013-10-30 10:52:33 -07:00
builder.h Follow-up Cleaning-up After D13521 2013-10-30 10:52:33 -07:00
c_test.c Migrate names of properties from 'leveldb' prefix to 'rocksdb' prefix. 2013-10-06 00:14:26 -07:00
c.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
corruption_test.cc Make "Table" pluggable 2013-10-28 17:54:09 -07:00
db_bench.cc Implement a compressed block cache. 2013-11-01 14:31:35 -07:00
db_filesnapshot.cc Unify DeleteFile and DeleteWalFiles 2013-10-25 08:32:14 -07:00
db_impl_readonly.cc Make "Table" pluggable 2013-10-28 17:54:09 -07:00
db_impl_readonly.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
db_impl.cc Implement a compressed block cache. 2013-11-01 14:31:35 -07:00
db_impl.h Implement a compressed block cache. 2013-11-01 14:31:35 -07:00
db_iter.cc Fix Bug: iterator.Prev() or iterator.SeekToLast() might return the first element instead of the correct one 2013-10-17 18:33:18 -07:00
db_iter.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
db_statistics.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
db_stats_logger.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
db_test.cc Implement a compressed block cache. 2013-11-01 14:31:35 -07:00
dbformat_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
dbformat.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
dbformat.h Make "Table" pluggable 2013-10-28 17:54:09 -07:00
deletefile_test.cc Fix a valgrind warning 2013-10-28 14:34:27 -07: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
log_format.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
log_reader.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
log_reader.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
log_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07: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.cc In-place updates for equal keys and similar sized values 2013-10-31 11:27:12 -07:00
memtable.h In-place updates for equal keys and similar sized values 2013-10-31 11:27:12 -07:00
memtablelist.cc fix the error message in debug mode 2013-10-27 23:11:13 -07:00
memtablelist.h Fix the log number bug when updating MANIFEST file 2013-10-24 21:05:33 -07:00
merge_helper.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
merge_helper.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
merge_operator.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
merge_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
perf_context_test.cc [RocksDB] Add perf_context.wal_write_time to track time spent on writing the recovery log. 2013-10-23 13:38:39 -07:00
prefix_filter_iterator.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
repair.cc In-place updates for equal keys and similar sized values 2013-10-31 11:27:12 -07:00
simple_table_db_test.cc Follow-up Cleaning-up After D13521 2013-10-30 10:52:33 -07:00
skiplist_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
skiplist.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
snapshot.h Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
table_cache.cc Follow-up Cleaning-up After D13521 2013-10-30 10:52:33 -07:00
table_cache.h Follow-up Cleaning-up After D13521 2013-10-30 10:52:33 -07:00
table_stats_collector_test.cc Follow-up Cleaning-up After D13521 2013-10-30 10:52:33 -07:00
table_stats_collector.cc Support user-defined table stats collector 2013-10-28 15:45:14 -07:00
table_stats_collector.h Support user-defined table stats collector 2013-10-28 15:45:14 -07:00
transaction_log_impl.cc Disallow transaction log iterator to skip sequences 2013-10-22 11:45:35 -07:00
transaction_log_impl.h Disallow transaction log iterator to skip sequences 2013-10-22 11:45:35 -07:00
version_edit_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
version_edit.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
version_edit.h Fix the log number bug when updating MANIFEST file 2013-10-24 21:05:33 -07:00
version_set_reduce_num_levels.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
version_set_test.cc Add appropriate LICENSE and Copyright message. 2013-10-16 17:48:41 -07:00
version_set.cc Move I/O outside of lock 2013-11-01 12:32:27 -07:00
version_set.h [RocksDB] Add OnCompactionStart to CompactionFilter class 2013-10-31 13:36:43 -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 In-place updates for equal keys and similar sized values 2013-10-31 11:27:12 -07:00
write_batch.cc In-place updates for equal keys and similar sized values 2013-10-31 11:27:12 -07:00