rocksdb/table/block_based
Peter Dillinger 84210c9489 Add data block hash index to crash test, fix MultiGet issue (#10220)
Summary:
There was a bug in the MultiGet enhancement in https://github.com/facebook/rocksdb/issues/9899 with data
block hash index, which was not caught because data block hash index was
never added to stress tests. This change fixes both issues.

Fixes https://github.com/facebook/rocksdb/issues/10186

I intend to pick this into the 7.4.0 release candidate

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

Test Plan:
Failure quickly reproduces in crash test with
kDataBlockBinaryAndHash, and does not seem to with the fix. Reproducing
the failure with a unit test I believe would be too tricky and fragile
to be worthwhile.

Reviewed By: anand1976

Differential Revision: D37315647

Pulled By: pdillinger

fbshipit-source-id: 9f648265bba867275edc752f7a56611a59401cba
2022-06-21 16:23:58 -07:00
..
binary_search_index_reader.cc Set Read rate limiter priority dynamically and pass it to FS (#9996) 2022-05-18 19:41:44 -07:00
binary_search_index_reader.h Extend Get/MultiGet deadline support to table open (#6982) 2020-06-29 14:53:17 -07:00
block.cc Use std::numeric_limits<> (#9954) 2022-05-05 13:08:21 -07:00
block.h Reduce comparator objects init cost in BlockIter (#9611) 2022-05-03 17:37:19 -07:00
block_based_table_builder.cc Remove deprecated block-based filter (#10184) 2022-06-16 15:51:33 -07:00
block_based_table_builder.h Refactor: Add BlockTypes to make them imply C++ type in block cache (#10098) 2022-06-06 11:16:12 -07:00
block_based_table_factory.cc Account memory of FileMetaData in global memory limit (#9924) 2022-06-14 13:06:40 -07:00
block_based_table_factory.h Account memory of big memory users in BlockBasedTable in global memory limit (#9748) 2022-04-06 10:33:00 -07:00
block_based_table_iterator.cc Add few optimizations in async_io for short scans (#10140) 2022-06-15 20:17:35 -07:00
block_based_table_iterator.h More testing w/prefix extractor, small refactor (#10122) 2022-06-16 16:41:25 -07:00
block_based_table_reader.cc More testing w/prefix extractor, small refactor (#10122) 2022-06-16 16:41:25 -07:00
block_based_table_reader.h More testing w/prefix extractor, small refactor (#10122) 2022-06-16 16:41:25 -07:00
block_based_table_reader_impl.h Seek parallelization (#9994) 2022-05-20 16:09:33 -07:00
block_based_table_reader_sync_and_async.h Add data block hash index to crash test, fix MultiGet issue (#10220) 2022-06-21 16:23:58 -07:00
block_based_table_reader_test.cc Increase ChargeTableReaderTest/ChargeTableReaderTest.Basic error tolerance rate from 1% to 5% (#10113) 2022-06-03 19:42:22 -07:00
block_builder.cc Improve data block construction performance (#9040) 2021-10-19 12:36:21 -07:00
block_builder.h Improve data block construction performance (#9040) 2021-10-19 12:36:21 -07:00
block_like_traits.h Remove deprecated block-based filter (#10184) 2022-06-16 15:51:33 -07:00
block_prefetcher.cc Add few optimizations in async_io for short scans (#10140) 2022-06-15 20:17:35 -07:00
block_prefetcher.h Add few optimizations in async_io for short scans (#10140) 2022-06-15 20:17:35 -07:00
block_prefix_index.cc Fix bug with kHashSearch and changing prefix_extractor with SetOptions (#10128) 2022-06-10 08:51:45 -07:00
block_prefix_index.h Fix bug with kHashSearch and changing prefix_extractor with SetOptions (#10128) 2022-06-10 08:51:45 -07:00
block_test.cc Improve / clean up meta block code & integrity (#9163) 2021-11-18 11:43:44 -08:00
block_type.h Remove deprecated block-based filter (#10184) 2022-06-16 15:51:33 -07:00
cachable_entry.h Meta-internal folly integration with F14FastMap (#9546) 2022-04-13 07:34:01 -07:00
data_block_footer.cc Replace namespace name "rocksdb" with ROCKSDB_NAMESPACE (#6433) 2020-02-20 12:09:57 -08:00
data_block_footer.h Replace namespace name "rocksdb" with ROCKSDB_NAMESPACE (#6433) 2020-02-20 12:09:57 -08:00
data_block_hash_index.cc Replace namespace name "rocksdb" with ROCKSDB_NAMESPACE (#6433) 2020-02-20 12:09:57 -08:00
data_block_hash_index.h Replace namespace name "rocksdb" with ROCKSDB_NAMESPACE (#6433) 2020-02-20 12:09:57 -08:00
data_block_hash_index_test.cc Fast path for detecting unchanged prefix_extractor (#9407) 2022-01-21 11:37:46 -08:00
filter_block.h Remove deprecated block-based filter (#10184) 2022-06-16 15:51:33 -07:00
filter_block_reader_common.cc Remove deprecated block-based filter (#10184) 2022-06-16 15:51:33 -07:00
filter_block_reader_common.h Refactor: Add BlockTypes to make them imply C++ type in block cache (#10098) 2022-06-06 11:16:12 -07:00
filter_policy.cc Remove deprecated block-based filter (#10184) 2022-06-16 15:51:33 -07:00
filter_policy_internal.h Remove deprecated block-based filter (#10184) 2022-06-16 15:51:33 -07:00
flush_block_policy.cc Restore Regex support for ObjectLibrary::Register, rename new APIs to allow old one to be deprecated in the future (#9362) 2022-01-11 06:33:48 -08:00
flush_block_policy.h Make FlushBlockPolicyFactory into a Customizable class (#8432) 2021-07-12 09:04:59 -07:00
full_filter_block.cc Remove deprecated block-based filter (#10184) 2022-06-16 15:51:33 -07:00
full_filter_block.h Remove deprecated block-based filter (#10184) 2022-06-16 15:51:33 -07:00
full_filter_block_test.cc Remove deprecated block-based filter (#10184) 2022-06-16 15:51:33 -07:00
hash_index_reader.cc Fix bug with kHashSearch and changing prefix_extractor with SetOptions (#10128) 2022-06-10 08:51:45 -07:00
hash_index_reader.h Extend Get/MultiGet deadline support to table open (#6982) 2020-06-29 14:53:17 -07:00
index_builder.cc Add (& fix) some simple source code checks (#8821) 2021-09-07 21:19:27 -07:00
index_builder.h Remove own ToString() (#9955) 2022-05-06 13:03:58 -07:00
index_reader_common.cc Seek parallelization (#9994) 2022-05-20 16:09:33 -07:00
index_reader_common.h Set Read rate limiter priority dynamically and pass it to FS (#9996) 2022-05-18 19:41:44 -07:00
mock_block_based_table.h Remove deprecated block-based filter (#10184) 2022-06-16 15:51:33 -07:00
parsed_full_filter_block.cc Hide FilterBits{Builder,Reader} from public API (#9592) 2022-02-17 16:34:46 -08:00
parsed_full_filter_block.h Use new Insert and Lookup APIs in table reader to support secondary cache (#8315) 2021-05-21 18:29:12 -07:00
partitioned_filter_block.cc Remove deprecated block-based filter (#10184) 2022-06-16 15:51:33 -07:00
partitioned_filter_block.h Remove deprecated block-based filter (#10184) 2022-06-16 15:51:33 -07:00
partitioned_filter_block_test.cc Remove deprecated block-based filter (#10184) 2022-06-16 15:51:33 -07:00
partitioned_index_iterator.cc Add few optimizations in async_io for short scans (#10140) 2022-06-15 20:17:35 -07:00
partitioned_index_iterator.h Make initial auto readahead_size configurable (#9836) 2022-04-15 17:28:09 -07:00
partitioned_index_reader.cc Add few optimizations in async_io for short scans (#10140) 2022-06-15 20:17:35 -07:00
partitioned_index_reader.h Meta-internal folly integration with F14FastMap (#9546) 2022-04-13 07:34:01 -07:00
reader_common.cc Remove own ToString() (#9955) 2022-05-06 13:03:58 -07:00
reader_common.h Bring the Configurable options together (#5753) 2020-09-14 17:01:01 -07:00
uncompression_dict_reader.cc Seek parallelization (#9994) 2022-05-20 16:09:33 -07:00
uncompression_dict_reader.h Fb 9718 verify checksums is ignored (#9767) 2022-03-29 11:54:54 -07:00