Fix stress test failure when using mmap-reads.

Summary:
The mmap-read file->Read() does not use the scratch buffer to
read in file-contents.

Test Plan: ./db_stress --test_batches_snapshots=1 --ops_per_thread=100000000 --threads=32 --write_buffer_size=4194304 --destroy_db_initially=0 --reopen=0 --readpercent=45 --prefixpercent=5 --writepercent=35 --delpercent=5 --iterpercent=10 --db=/tmp/dhruba --max_key=100000000 --disable_seek_compaction=0 --mmap_read=1 --block_size=16384 --cache_size=1048576 --open_files=500000 --verify_checksum=1 --sync=1 --disable_wal=0 --disable_data_sync=0 --target_file_size_base=2097152 --target_file_size_multiplier=2 --max_write_buffer_number=3 --max_background_compactions=20 --max_bytes_for_level_base=10485760 --filter_deletes=0

Reviewers: haobo, kailiu

Reviewed By: kailiu

CC: leveldb, kailiu, emayanke

Differential Revision: https://reviews.facebook.net/D13923
main
Dhruba Borthakur 11 years ago
parent 95a8213f75
commit 292c2b3357
  1. 2
      table/format.cc

@ -135,7 +135,7 @@ Status ReadBlockContents(RandomAccessFile* file,
result->compression_type = (rocksdb::CompressionType)data[n]; result->compression_type = (rocksdb::CompressionType)data[n];
s = Status::OK(); s = Status::OK();
} else { } else {
s = UncompressBlockContents(buf, n, result); s = UncompressBlockContents(data, n, result);
delete[] buf; delete[] buf;
} }
BumpPerfTime(&perf_context.block_decompress_time, &timer); BumpPerfTime(&perf_context.block_decompress_time, &timer);

Loading…
Cancel
Save