rocksdb/util
Jonah Cohen a14b7873ee Enforce write buffer memory limit across column families
Summary:
Introduces a new class for managing write buffer memory across column
families.  We supplement ColumnFamilyOptions::write_buffer_size with
ColumnFamilyOptions::write_buffer, a shared pointer to a WriteBuffer
instance that enforces memory limits before flushing out to disk.

Test Plan: Added SharedWriteBuffer unit test to db_test.cc

Reviewers: sdong, rven, ljin, igor

Reviewed By: igor

Subscribers: tnovak, yhchiang, dhruba, xjin, MarkCallaghan, yoshinorim

Differential Revision: https://reviews.facebook.net/D22581
2014-12-02 12:09:20 -08:00
..
allocator.h Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
arena.cc Make arena use hugepage if possible 2014-11-21 14:11:40 -08:00
arena.h Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
arena_test.cc Make arena use hugepage if possible 2014-11-21 14:11:40 -08:00
auto_roll_logger.cc Turn on -Wshorten-64-to-32 and fix all the errors 2014-11-11 16:47:22 -05:00
auto_roll_logger.h
auto_roll_logger_test.cc Turn on -Wshorten-64-to-32 and fix all the errors 2014-11-11 16:47:22 -05:00
autovector.h Fix autovector iterator increment/decrement comments 2014-08-14 14:56:11 -07:00
autovector_test.cc Add rocksdb::ToString() to address cases where std::to_string is not available. 2014-11-24 20:44:49 -08:00
benchharness.cc Add rocksdb::ToString() to address cases where std::to_string is not available. 2014-11-24 20:44:49 -08:00
benchharness.h Fix iOS compile with -Wshorten-64-to-32 2014-11-13 14:39:30 -05:00
benchharness_test.cc Turn on -Wshorten-64-to-32 and fix all the errors 2014-11-11 16:47:22 -05:00
blob_store.cc Turn on -Wshorten-64-to-32 and fix all the errors 2014-11-11 16:47:22 -05:00
blob_store.h Turn on -Wshadow 2014-10-31 11:59:54 -07:00
blob_store_test.cc
bloom.cc Turn on -Wshorten-64-to-32 and fix all the errors 2014-11-11 16:47:22 -05:00
bloom_test.cc Turn on -Wshorten-64-to-32 and fix all the errors 2014-11-11 16:47:22 -05:00
build_version.h
cache.cc Turn on -Wshorten-64-to-32 and fix all the errors 2014-11-11 16:47:22 -05:00
cache_bench.cc Fix -Wshadow for tools 2014-11-07 15:04:30 -08:00
cache_test.cc Add rocksdb::ToString() to address cases where std::to_string is not available. 2014-11-24 20:44:49 -08:00
coding.cc Removing BitStream* functions 2014-08-19 06:48:21 -07:00
coding.h Turn on -Wshorten-64-to-32 and fix all the errors 2014-11-11 16:47:22 -05:00
coding_test.cc Remove BitStream* tests 2014-08-19 09:52:54 -04:00
comparator.cc Changed name of ReverseBytewiseComparator based on review comment 2014-09-27 10:06:13 +02:00
crc32c.cc Turn on -Wshorten-64-to-32 and fix all the errors 2014-11-11 16:47:22 -05:00
crc32c.h
crc32c_test.cc
db_info_dumper.cc Fix iOS compile with -Wshorten-64-to-32 2014-11-13 14:39:30 -05:00
db_info_dumper.h Fix iOS compile with -Wshorten-64-to-32 2014-11-13 14:39:30 -05:00
dynamic_bloom.cc Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
dynamic_bloom.h Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
dynamic_bloom_test.cc Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
env.cc Check InfoLogLevel earlier in Log functions. 2014-10-30 13:36:18 -07:00
env_hdfs.cc Add rocksdb::ToString() to address cases where std::to_string is not available. 2014-11-24 20:44:49 -08:00
env_posix.cc Fix compile error in ROCKSDB_LITE 2014-11-25 23:39:52 -08:00
env_test.cc Add rocksdb::ToString() to address cases where std::to_string is not available. 2014-11-24 20:44:49 -08:00
file_util.cc Provide openable snapshots 2014-11-14 11:38:26 -08:00
file_util.h Provide openable snapshots 2014-11-14 11:38:26 -08:00
filelock_test.cc
filter_policy.cc
hash.cc Turn on -Wshorten-64-to-32 and fix all the errors 2014-11-11 16:47:22 -05:00
hash.h Introduce GetThreadList API 2014-11-20 10:49:32 -08:00
hash_cuckoo_rep.cc Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
hash_cuckoo_rep.h Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
hash_linklist_rep.cc Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
hash_linklist_rep.h Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
hash_skiplist_rep.cc Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
hash_skiplist_rep.h Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
histogram.cc Fix iOS compile with -Wshorten-64-to-32 2014-11-13 14:39:30 -05:00
histogram.h Fix iOS compile with -Wshorten-64-to-32 2014-11-13 14:39:30 -05:00
histogram_test.cc
iostats_context.cc Fix ios compile 2014-08-28 12:46:05 -04:00
iostats_context_imp.h Fix ios compile 2014-08-28 12:46:05 -04:00
ldb_cmd.cc Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
ldb_cmd.h Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
ldb_cmd_execute_result.h Revert "Fix lint errors and coding style of ldb related codes." 2014-10-31 19:22:49 -07:00
ldb_tool.cc Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
log_buffer.cc Enlarge log size cap when printing file summary 2014-09-23 16:56:34 -07:00
log_buffer.h Enlarge log size cap when printing file summary 2014-09-23 16:56:34 -07:00
log_write_bench.cc
logging.cc remove cast, replace %llu with % PRIu64 2014-09-23 01:10:46 +08:00
logging.h remove unused variable 2014-09-21 22:20:00 +08:00
manual_compaction_test.cc
mock_env.cc Provide openable snapshots 2014-11-14 11:38:26 -08:00
mock_env.h Provide openable snapshots 2014-11-14 11:38:26 -08:00
mock_env_test.cc Add fsync / corrupt simulation to env_mem 2014-10-31 15:16:31 -07:00
murmurhash.cc
murmurhash.h Turn on -Wshorten-64-to-32 and fix all the errors 2014-11-11 16:47:22 -05:00
mutable_cf_options.cc remove all remaining references to cfd->options() 2014-11-18 10:20:10 -08:00
mutable_cf_options.h remove all remaining references to cfd->options() 2014-11-18 10:20:10 -08:00
mutexlock.h Add separate Read/WriteUnlock methods in MutexRW. 2014-06-16 15:41:46 -07:00
options.cc Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
options_builder.cc Block Universal and FIFO compactions in ROCKSDB_LITE 2014-11-26 15:45:11 -08:00
options_helper.cc Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
options_helper.h Missing header in build on CentOS 2014-11-18 22:21:02 +01:00
options_test.cc Make RocksDB compile without gflags 2014-11-24 15:53:23 -05:00
perf_context.cc Add a function to return current perf level 2014-07-10 11:35:48 -07:00
perf_context_imp.h Refactor PerfStepTimer to stop on destruct 2014-09-02 12:04:22 -07:00
posix_logger.h Fix additional -Wshorten-64-to-32 errros 2014-11-11 14:09:14 -08:00
random.h
rate_limiter.cc Turn on -Wshorten-64-to-32 and fix all the errors 2014-11-11 16:47:22 -05:00
rate_limiter.h expose RateLimiter definition 2014-07-25 15:17:06 -07:00
rate_limiter_test.cc Turn on -Wshorten-64-to-32 and fix all the errors 2014-11-11 16:47:22 -05:00
scoped_arena_iterator.h Remove path with arena==nullptr from NewInternalIterator 2014-09-04 17:40:41 -07:00
signal_test.cc util/signal_test.cc: suppress intentional null pointer deref 2014-09-30 23:30:32 +02:00
skiplistrep.cc Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
slice.cc Add rocksdb::ToString() to address cases where std::to_string is not available. 2014-11-24 20:44:49 -08:00
sst_dump_tool.cc Make db_stress built for ROCKSDB_LITE 2014-11-14 10:20:51 -08:00
statistics.cc fix more compile warnings 2014-09-05 14:14:37 +08:00
statistics.h make statistics forward-able 2014-07-28 12:10:49 -07:00
status.cc Turn on -Wshorten-64-to-32 and fix all the errors 2014-11-11 16:47:22 -05:00
stl_wrappers.h
stop_watch.h Change StopWatch interface 2014-07-28 12:22:37 -07:00
string_util.cc Clean up StringSplit 2014-11-21 11:05:28 -05:00
string_util.h Add rocksdb::ToString() to address cases where std::to_string is not available. 2014-11-24 20:44:49 -08:00
sync_point.cc
sync_point.h
testharness.cc introduce TestMemEnv and use it in db_test 2014-10-31 15:08:10 -07:00
testharness.h Add rocksdb::ToString() to address cases where std::to_string is not available. 2014-11-24 20:44:49 -08:00
testutil.cc Merger test 2014-09-08 22:24:40 -07:00
testutil.h Add ComparatorDBTest to test non-default comparators 2014-10-29 15:42:36 -07:00
thread_list_test.cc Introduce GetThreadList API 2014-11-20 10:49:32 -08:00
thread_local.cc
thread_local.h Improve the comment of util/thread_local.h 2014-10-21 17:28:31 -07:00
thread_local_test.cc Turn on -Wshadow 2014-10-31 11:59:54 -07:00
thread_status_impl.cc Fix leak when create_missing_column_families=true on ThreadStatus 2014-11-22 00:04:41 -08:00
thread_status_impl.h Fix leak when create_missing_column_families=true on ThreadStatus 2014-11-22 00:04:41 -08:00
thread_status_impl_debug.cc Add enable_thread_tracking to DBOptions 2014-11-20 21:13:18 -08:00
vectorrep.cc Enforce write buffer memory limit across column families 2014-12-02 12:09:20 -08:00
xxhash.cc
xxhash.h