Revision 46152d53bf58748fc3ed0681d8970c342bcfc47a authored by Andrew Kryczka on 30 April 2018, 19:23:45 UTC, committed by Facebook Github Bot on 30 April 2018, 19:27:34 UTC
Summary:
- Original commit: a4fb1f8c049ee9d61a9da8cf23b64d2c7d36a33f
- Revert commit (we reverted as a quick fix to get crash tests passing): 6afe22db2e667799d8c903db61750d676bffe152

This PR includes the contents of the original commit plus two bug fixes, which are:

- In whitebox crash test, only set `--expected_values_path` for `db_stress` runs in the first half of the crash test's duration. In the second half, a fresh DB is created for each `db_stress` run, so we cannot maintain expected state across `db_stress` runs.
- Made `Exists()` return true for `UNKNOWN_SENTINEL` values. I previously had an assert in `Exists()` that value was not `UNKNOWN_SENTINEL`. But it is possible for post-crash-recovery expected values to be `UNKNOWN_SENTINEL` (i.e., if the crash happens in the middle of an update), in which case this assertion would be tripped. The effect of returning true in this case is there may be cases where a `SingleDelete` deletes no data. But if we had returned false, the effect would be calling `SingleDelete` on a key with multiple older versions, which is not supported.
Closes https://github.com/facebook/rocksdb/pull/3793

Differential Revision: D7811671

Pulled By: ajkr

fbshipit-source-id: 67e0295bfb1695ff9674837f2e05bb29c50efc30
1 parent 282099f
History
File Mode Size
builder.cc -rw-r--r-- 8.9 KB
builder.h -rw-r--r-- 3.6 KB
c.cc -rw-r--r-- 128.1 KB
c_test.c -rw-r--r-- 56.9 KB
column_family.cc -rw-r--r-- 52.3 KB
column_family.h -rw-r--r-- 24.3 KB
column_family_test.cc -rw-r--r-- 106.5 KB
compact_files_test.cc -rw-r--r-- 9.4 KB
compacted_db_impl.cc -rw-r--r-- 5.7 KB
compacted_db_impl.h -rw-r--r-- 3.9 KB
compaction.cc -rw-r--r-- 15.9 KB
compaction.h -rw-r--r-- 11.9 KB
compaction_iteration_stats.h -rw-r--r-- 1.2 KB
compaction_iterator.cc -rw-r--r-- 26.3 KB
compaction_iterator.h -rw-r--r-- 8.3 KB
compaction_iterator_test.cc -rw-r--r-- 35.3 KB
compaction_job.cc -rw-r--r-- 58.9 KB
compaction_job.h -rw-r--r-- 5.8 KB
compaction_job_stats_test.cc -rw-r--r-- 35.5 KB
compaction_job_test.cc -rw-r--r-- 35.3 KB
compaction_picker.cc -rw-r--r-- 62.2 KB
compaction_picker.h -rw-r--r-- 12.9 KB
compaction_picker_test.cc -rw-r--r-- 56.5 KB
compaction_picker_universal.cc -rw-r--r-- 27.7 KB
compaction_picker_universal.h -rw-r--r-- 3.7 KB
comparator_db_test.cc -rw-r--r-- 12.3 KB
convenience.cc -rw-r--r-- 2.2 KB
corruption_test.cc -rw-r--r-- 15.2 KB
cuckoo_table_db_test.cc -rw-r--r-- 9.8 KB
db_basic_test.cc -rw-r--r-- 30.9 KB
db_blob_index_test.cc -rw-r--r-- 13.5 KB
db_block_cache_test.cc -rw-r--r-- 22.5 KB
db_bloom_filter_test.cc -rw-r--r-- 39.5 KB
db_compaction_filter_test.cc -rw-r--r-- 28.2 KB
db_compaction_test.cc -rw-r--r-- 127.4 KB
db_dynamic_level_test.cc -rw-r--r-- 16.9 KB
db_encryption_test.cc -rw-r--r-- 2.6 KB
db_filesnapshot.cc -rw-r--r-- 4.8 KB
db_flush_test.cc -rw-r--r-- 7.4 KB
db_impl.cc -rw-r--r-- 103.0 KB
db_impl.h -rw-r--r-- 60.8 KB
db_impl_compaction_flush.cc -rw-r--r-- 80.5 KB
db_impl_debug.cc -rw-r--r-- 6.6 KB
db_impl_experimental.cc -rw-r--r-- 5.4 KB
db_impl_files.cc -rw-r--r-- 22.4 KB
db_impl_open.cc -rw-r--r-- 44.0 KB
db_impl_readonly.cc -rw-r--r-- 7.1 KB
db_impl_readonly.h -rw-r--r-- 4.7 KB
db_impl_write.cc -rw-r--r-- 56.3 KB
db_info_dumper.cc -rw-r--r-- 3.7 KB
db_info_dumper.h -rw-r--r-- 481 bytes
db_inplace_update_test.cc -rw-r--r-- 5.6 KB
db_io_failure_test.cc -rw-r--r-- 18.6 KB
db_iter.cc -rw-r--r-- 50.1 KB
db_iter.h -rw-r--r-- 4.2 KB
db_iter_test.cc -rw-r--r-- 102.3 KB
db_iterator_test.cc -rw-r--r-- 71.1 KB
db_log_iter_test.cc -rw-r--r-- 9.7 KB
db_memtable_test.cc -rw-r--r-- 9.1 KB
db_merge_operator_test.cc -rw-r--r-- 20.5 KB
db_options_test.cc -rw-r--r-- 24.8 KB
db_properties_test.cc -rw-r--r-- 56.4 KB
db_range_del_test.cc -rw-r--r-- 38.3 KB
db_sst_test.cc -rw-r--r-- 35.6 KB
db_statistics_test.cc -rw-r--r-- 5.1 KB
db_table_properties_test.cc -rw-r--r-- 8.8 KB
db_tailing_iter_test.cc -rw-r--r-- 23.9 KB
db_test.cc -rw-r--r-- 195.7 KB
db_test2.cc -rw-r--r-- 87.6 KB
db_test_util.cc -rw-r--r-- 44.1 KB
db_test_util.h -rw-r--r-- 30.5 KB
db_universal_compaction_test.cc -rw-r--r-- 66.8 KB
db_wal_test.cc -rw-r--r-- 43.2 KB
db_write_test.cc -rw-r--r-- 3.6 KB
dbformat.cc -rw-r--r-- 6.1 KB
dbformat.h -rw-r--r-- 21.3 KB
dbformat_test.cc -rw-r--r-- 7.0 KB
deletefile_test.cc -rw-r--r-- 16.1 KB
event_helpers.cc -rw-r--r-- 5.0 KB
event_helpers.h -rw-r--r-- 2.0 KB
experimental.cc -rw-r--r-- 1.5 KB
external_sst_file_basic_test.cc -rw-r--r-- 24.7 KB
external_sst_file_ingestion_job.cc -rw-r--r-- 19.9 KB
external_sst_file_ingestion_job.h -rw-r--r-- 5.7 KB
external_sst_file_test.cc -rw-r--r-- 69.9 KB
fault_injection_test.cc -rw-r--r-- 16.3 KB
file_indexer.cc -rw-r--r-- 7.5 KB
file_indexer.h -rw-r--r-- 6.1 KB
file_indexer_test.cc -rw-r--r-- 9.8 KB
filename_test.cc -rw-r--r-- 5.6 KB
flush_job.cc -rw-r--r-- 14.6 KB
flush_job.h -rw-r--r-- 3.6 KB
flush_job_test.cc -rw-r--r-- 8.6 KB
flush_scheduler.cc -rw-r--r-- 2.4 KB
flush_scheduler.h -rw-r--r-- 1.2 KB
forward_iterator.cc -rw-r--r-- 28.2 KB
forward_iterator.h -rw-r--r-- 5.5 KB
forward_iterator_bench.cc -rw-r--r-- 11.3 KB
internal_stats.cc -rw-r--r-- 55.5 KB
internal_stats.h -rw-r--r-- 22.7 KB
job_context.h -rw-r--r-- 5.6 KB
listener_test.cc -rw-r--r-- 29.0 KB
log_format.h -rw-r--r-- 1.3 KB
log_reader.cc -rw-r--r-- 13.9 KB
log_reader.h -rw-r--r-- 5.5 KB
log_test.cc -rw-r--r-- 21.6 KB
log_writer.cc -rw-r--r-- 4.6 KB
log_writer.h -rw-r--r-- 3.8 KB
malloc_stats.cc -rw-r--r-- 1.6 KB
malloc_stats.h -rw-r--r-- 623 bytes
managed_iterator.cc -rw-r--r-- 6.6 KB
managed_iterator.h -rw-r--r-- 2.4 KB
manual_compaction_test.cc -rw-r--r-- 4.4 KB
memtable.cc -rw-r--r-- 34.7 KB
memtable.h -rw-r--r-- 17.7 KB
memtable_list.cc -rw-r--r-- 16.3 KB
memtable_list.h -rw-r--r-- 10.4 KB
memtable_list_test.cc -rw-r--r-- 21.4 KB
merge_context.h -rw-r--r-- 3.2 KB
merge_helper.cc -rw-r--r-- 15.7 KB
merge_helper.h -rw-r--r-- 8.0 KB
merge_helper_test.cc -rw-r--r-- 11.2 KB
merge_operator.cc -rw-r--r-- 3.1 KB
merge_test.cc -rw-r--r-- 14.0 KB
obsolete_files_test.cc -rw-r--r-- 6.5 KB
options_file_test.cc -rw-r--r-- 3.6 KB
perf_context_test.cc -rw-r--r-- 23.8 KB
pinned_iterators_manager.h -rw-r--r-- 2.4 KB
plain_table_db_test.cc -rw-r--r-- 39.6 KB
pre_release_callback.h -rw-r--r-- 1.2 KB
prefix_test.cc -rw-r--r-- 29.2 KB
range_del_aggregator.cc -rw-r--r-- 21.9 KB
range_del_aggregator.h -rw-r--r-- 8.5 KB
range_del_aggregator_test.cc -rw-r--r-- 6.2 KB
read_callback.h -rw-r--r-- 569 bytes
repair.cc -rw-r--r-- 23.6 KB
repair_test.cc -rw-r--r-- 11.5 KB
snapshot_checker.h -rw-r--r-- 1.6 KB
snapshot_impl.cc -rw-r--r-- 767 bytes
snapshot_impl.h -rw-r--r-- 4.0 KB
table_cache.cc -rw-r--r-- 16.9 KB
table_cache.h -rw-r--r-- 6.3 KB
table_properties_collector.cc -rw-r--r-- 3.8 KB
table_properties_collector.h -rw-r--r-- 4.3 KB
table_properties_collector_test.cc -rw-r--r-- 17.9 KB
transaction_log_impl.cc -rw-r--r-- 10.5 KB
transaction_log_impl.h -rw-r--r-- 4.3 KB
version_builder.cc -rw-r--r-- 15.3 KB
version_builder.h -rw-r--r-- 1.6 KB
version_builder_test.cc -rw-r--r-- 10.4 KB
version_edit.cc -rw-r--r-- 16.5 KB
version_edit.h -rw-r--r-- 9.8 KB
version_edit_test.cc -rw-r--r-- 6.3 KB
version_set.cc -rw-r--r-- 147.8 KB
version_set.h -rw-r--r-- 38.9 KB
version_set_test.cc -rw-r--r-- 14.6 KB
wal_manager.cc -rw-r--r-- 16.2 KB
wal_manager.h -rw-r--r-- 3.3 KB
wal_manager_test.cc -rw-r--r-- 9.5 KB
write_batch.cc -rw-r--r-- 63.7 KB
write_batch_base.cc -rw-r--r-- 3.1 KB
write_batch_internal.h -rw-r--r-- 8.8 KB
write_batch_test.cc -rw-r--r-- 26.6 KB
write_callback.h -rw-r--r-- 803 bytes
write_callback_test.cc -rw-r--r-- 14.5 KB
write_controller.cc -rw-r--r-- 4.0 KB
write_controller.h -rw-r--r-- 4.7 KB
write_controller_test.cc -rw-r--r-- 4.6 KB
write_thread.cc -rw-r--r-- 24.2 KB
write_thread.h -rw-r--r-- 14.7 KB

back to top