You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Sergei Petrunia
c9042db619
Range Locking: add support for escalation barriers ( #9290 )
...
Summary:
Range Locking supports Lock Escalation. Lock Escalation is invoked when
lock memory is nearly exhausted and it reduced the amount of memory used
by joining adjacent locks.
Bridging the gap between certain locks has adverse effects. For example,
in MyRocks it is not a good idea to bridge the gap between locks in
different indexes, as that get the lock to cover large portions of
indexes, or even entire indexes.
Resolve this by introducing Escalation Barrier. The escalation process
will call the user-provided barrier callback function:
bool(const Endpoint& a, const Endpoint& b)
If the function returns true, there's a barrier between a and b and Lock
Escalation will not try to bridge the gap between a and b.
Pull Request resolved: https://github.com/facebook/rocksdb/pull/9290
Reviewed By: akankshamahajan15
Differential Revision: D33486753
Pulled By: riversand963
fbshipit-source-id: f97910b67aba0579ea1d35f523ca6863d3dd018e
3 years ago
..
backupable
Make the Env class Customizable ( #9293 )
3 years ago
blob_db
Skip directory fsync for filesystem btrfs ( #8903 )
3 years ago
cassandra
Restore Regex support for ObjectLibrary::Register, rename new APIs to allow old one to be deprecated in the future ( #9362 )
3 years ago
checkpoint
Skip directory fsync for filesystem btrfs ( #8903 )
3 years ago
compaction_filters
Make MergeOperator+CompactionFilter/Factory into Customizable Classes ( #8481 )
3 years ago
convenience
Add a SystemClock class to capture the time functions of an Env ( #7858 )
4 years ago
leveldb_options
Replace namespace name "rocksdb" with ROCKSDB_NAMESPACE ( #6433 )
5 years ago
memory
Make types of Immutable/Mutable Options fields match that of the underlying Option ( #8176 )
4 years ago
merge_operators
Remove using namespace ( #9369 )
3 years ago
option_change_migration
Fix a minor issue with initializing the test path ( #8555 )
3 years ago
options
Allow WAL dir to change with db dir ( #8582 )
3 years ago
persistent_cache
Improve support for using regexes ( #8740 )
3 years ago
simulator_cache
Fix flaky SimCacheTest.SimCacheLogging ( #9373 )
3 years ago
table_properties_collectors
Restore Regex support for ObjectLibrary::Register, rename new APIs to allow old one to be deprecated in the future ( #9362 )
3 years ago
trace
Fix and detect headers with missing dependencies ( #8893 )
3 years ago
transactions
Range Locking: add support for escalation barriers ( #9290 )
3 years ago
ttl
Restore Regex support for ObjectLibrary::Register, rename new APIs to allow old one to be deprecated in the future ( #9362 )
3 years ago
write_batch_with_index
Check that newIteratorWithBase regardless of WBWI Overwrite Mode ( #8134 )
3 years ago
cache_dump_load.cc
Introduce a mechanism to dump out blocks from block cache and re-insert to secondary cache ( #8912 )
3 years ago
cache_dump_load_impl.cc
New stable, fixed-length cache keys ( #9126 )
3 years ago
cache_dump_load_impl.h
Initialize cache dumper `DumpUnit` in constructor ( #9014 )
3 years ago
compaction_filters.cc
Restore Regex support for ObjectLibrary::Register, rename new APIs to allow old one to be deprecated in the future ( #9362 )
3 years ago
debug.cc
In ParseInternalKey(), include corrupt key info in Status ( #7515 )
4 years ago
env_librados.cc
Fix EnvLibrados and add to CI ( #9088 )
3 years ago
env_librados.md
Update branch name to main in env_librados.md ( #8738 )
3 years ago
env_librados_test.cc
Fix EnvLibrados and add to CI ( #9088 )
3 years ago
env_mirror.cc
Fix clang13 build error ( #9374 )
3 years ago
env_mirror_test.cc
Replace namespace name "rocksdb" with ROCKSDB_NAMESPACE ( #6433 )
5 years ago
env_timed.cc
Make FileSystem a Customizable Class ( #8649 )
3 years ago
env_timed.h
Make FileSystem a Customizable Class ( #8649 )
3 years ago
env_timed_test.cc
Make env*_test work with ASSERT_STATUS_CHECKED ( #7176 )
4 years ago
fault_injection_env.cc
Protect existing files in `FaultInjectionTest{Env,FS}::ReopenWritableFile()` ( #8995 )
3 years ago
fault_injection_env.h
Make the Env class Customizable ( #9293 )
3 years ago
fault_injection_fs.cc
Skip directory fsync for filesystem btrfs ( #8903 )
3 years ago
fault_injection_fs.h
Fix a bug causing duplicate trailing entries in WritableFile (buffered IO) ( #9236 )
3 years ago
fault_injection_secondary_cache.cc
Secondary cache error injection ( #9002 )
3 years ago
fault_injection_secondary_cache.h
Secondary cache error injection ( #9002 )
3 years ago
memory_allocators.h
Make MemoryAllocator into a Customizable class ( #8980 )
3 years ago
merge_operators.cc
Restore Regex support for ObjectLibrary::Register, rename new APIs to allow old one to be deprecated in the future ( #9362 )
3 years ago
merge_operators.h
Make MergeOperator+CompactionFilter/Factory into Customizable Classes ( #8481 )
3 years ago
object_registry.cc
Restore Regex support for ObjectLibrary::Register, rename new APIs to allow old one to be deprecated in the future ( #9362 )
3 years ago
object_registry_test.cc
Restore Regex support for ObjectLibrary::Register, rename new APIs to allow old one to be deprecated in the future ( #9362 )
3 years ago
util_merge_operators_test.cc
Replace namespace name "rocksdb" with ROCKSDB_NAMESPACE ( #6433 )
5 years ago
wal_filter.cc
Make WalFilter, SstPartitionerFactory, FileChecksumGenFactory, and TableProperties Customizable ( #8638 )
3 years ago