rocksdb/table
Manuel Ung 88ed1f6ea6 Allow upgrades from nullptr to some merge operator
Summary:
Currently, RocksDB does not allow reopening a preexisting DB with no merge operator defined, with a merge operator defined. This means that if a DB ever want to add a merge operator, there's no way to do so currently.

Fix this by adding a new verification type `kByNameAllowFromNull` which will allow old values to be nullptr, and new values to be non-nullptr.
Closes https://github.com/facebook/rocksdb/pull/2958

Differential Revision: D5961131

Pulled By: lth

fbshipit-source-id: 06179bebd0d90db3d43690b5eb7345e2d5bab1eb
2017-10-04 09:57:23 -07: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_based_filter_block_test.cc Change RocksDB License 2017-07-15 16:11:23 -07: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_table_builder.cc No need for Restart Interval for meta blocks 2017-09-29 20:26:20 -07:00
block_based_table_builder.h Change RocksDB License 2017-07-15 16:11:23 -07:00
block_based_table_factory.cc Allow upgrades from nullptr to some merge operator 2017-10-04 09:57:23 -07:00
block_based_table_factory.h Replace dynamic_cast<> 2017-07-28 16:27:16 -07:00
block_based_table_reader.cc Fix for when block.cache_handle is nullptr 2017-09-29 07:56:55 -07:00
block_based_table_reader.h Extend pin_l0 to filter partitions 2017-08-23 07:56:08 -07: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_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 Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
block.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
block.h table/block.h: change memset 2017-07-17 10:41:56 -07: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_test.cc allow nullptr Slice only as sentinel 2017-08-23 10:56:06 -07:00
cuckoo_table_builder.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
cuckoo_table_builder.h Change RocksDB License 2017-07-15 16:11:23 -07: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_test.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
cuckoo_table_reader.cc remove unnecessary internal_comparator param in newIterator 2017-07-27 14:30:42 -07:00
cuckoo_table_reader.h remove unnecessary internal_comparator param in newIterator 2017-07-27 14:30:42 -07: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 support disabling checksum in block-based table 2017-08-23 19:40:47 -07:00
format.h Support prefetch last 512KB with direct I/O in block based file reader 2017-08-11 12:16:45 -07:00
full_filter_bits_builder.h Change RocksDB License 2017-07-15 16:11:23 -07:00
full_filter_block_test.cc 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
get_context.cc Add ValueType::kTypeBlobIndex 2017-10-03 09:11:23 -07:00
get_context.h Add ValueType::kTypeBlobIndex 2017-10-03 09:11:23 -07:00
index_builder.cc Change RocksDB License 2017-07-15 16:11:23 -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_wrapper.h Change RocksDB License 2017-07-15 16:11:23 -07:00
iterator.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -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 Three code-level optimization to Iterator::Next() 2017-09-14 17:57:31 -07:00
merging_iterator.h Make InternalKeyComparator final and directly use it in merging iterator 2017-09-11 12:04:21 -07:00
meta_blocks.cc No need for Restart Interval for meta blocks 2017-09-29 20:26:20 -07: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_test.cc Extend pin_l0 to filter partitions 2017-08-23 07:56:08 -07:00
partitioned_filter_block.cc Extend pin_l0 to filter partitions 2017-08-23 07:56:08 -07:00
partitioned_filter_block.h Extend pin_l0 to filter partitions 2017-08-23 07:56:08 -07: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 Replace dynamic_cast<> 2017-07-28 16:27:16 -07:00
plain_table_index.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
plain_table_index.h Change RocksDB License 2017-07-15 16:11:23 -07: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_collectors.h Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
sst_file_writer.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
table_builder.h Change RocksDB License 2017-07-15 16:11:23 -07:00
table_properties_internal.h Change RocksDB License 2017-07-15 16:11:23 -07:00
table_properties.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
table_reader_bench.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
table_reader.h add VerifyChecksum() to db.h 2017-08-09 15:58:13 -07:00
table_test.cc Preload l0 index partitions 2017-08-18 10:56:20 -07: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