rocksdb/utilities
Andrew Kryczka 1c5f13f2a5 Fail early when merge_operator not configured (#7667)
Summary:
An application may accidentally write merge operands without properly configuring `merge_operator`. We should alert them as early as possible that there's an API misuse. Previously RocksDB only notified them when a query or background operation needed to merge but couldn't. With this PR, RocksDB notifies them of the problem before applying the merge operand to the memtable (although it may already be in WAL, which seems it'd cause a crash loop until they enable `merge_operator`).

Pull Request resolved: https://github.com/facebook/rocksdb/pull/7667

Reviewed By: riversand963

Differential Revision: D24933360

Pulled By: ajkr

fbshipit-source-id: 3a4a2ceb0b7aed184113dd03b8efd735a8332f7f
2020-11-16 20:39:01 -08:00
..
backupable Fix a recovery corner case (#7621) 2020-11-07 22:23:27 -08:00
blob_db Remove unused includes (#7604) 2020-10-28 23:22:27 -07:00
cassandra Remove unused includes (#7604) 2020-10-28 23:22:27 -07:00
checkpoint Make FileType Public and Replace kLogFile with kWalFile (#7580) 2020-10-22 17:06:20 -07:00
compaction_filters Compaction filter support for BlobDB (#6850) 2020-06-29 17:32:14 -07:00
convenience
leveldb_options
memory Add few unit test cases in ASSERT_STATUS_CHECKED (#7500) 2020-10-08 11:22:44 -07:00
merge_operators Remove unused includes (#7604) 2020-10-28 23:22:27 -07:00
option_change_migration Whole DBTest to skip fsync (#7274) 2020-08-17 18:42:25 -07:00
options Return NotFound from TableFactory configuration errors during options loading (#7615) 2020-10-29 18:44:24 -07:00
persistent_cache Fix many tests to run with MEM_ENV and ENCRYPTED_ENV; Introduce a MemoryFileSystem class (#7566) 2020-10-27 10:33:09 -07:00
simulator_cache Bring the Configurable options together (#5753) 2020-09-14 17:01:01 -07:00
table_properties_collectors
trace Add some simulator cache and block tracer tests to ASSERT_STATUS_CHECKED (#7305) 2020-08-24 16:43:31 -07:00
transactions Fail early when merge_operator not configured (#7667) 2020-11-16 20:39:01 -08:00
ttl DBWithTTL::Open() param ttls: vector<int32_t> to const vector<int32_t>& (#7196) 2020-08-24 16:24:16 -07:00
write_batch_with_index Fix write_batch_test when ASSERT_STATUS_CHECKED=1 (#7575) 2020-10-20 13:18:41 -07:00
debug.cc In ParseInternalKey(), include corrupt key info in Status (#7515) 2020-10-28 10:12:58 -07:00
env_librados.cc
env_librados.md
env_librados_test.cc
env_mirror.cc
env_mirror_test.cc
env_timed.cc
env_timed_test.cc Make env*_test work with ASSERT_STATUS_CHECKED (#7176) 2020-07-28 22:59:48 -07:00
fault_injection_env.cc Support injecting read errors for RandomAccessFile when using FaultInjectionTestEnv (#7447) 2020-09-28 17:32:06 -07:00
fault_injection_env.h Status check enforcement for error_handler_fs_test (#7342) 2020-10-02 16:41:13 -07:00
fault_injection_fs.cc Add EnvTestWithParam::OptionsTest to the ASSERT_STATUS_CHECKED passes (#7283) 2020-08-20 19:18:35 -07:00
fault_injection_fs.h Status check enforcement for error_handler_fs_test (#7342) 2020-10-02 16:41:13 -07:00
merge_operators.h
object_registry.cc
object_registry_test.cc
util_merge_operators_test.cc