mirror of https://github.com/facebook/rocksdb.git
remove warning
Summary: st_blocks shows 16 though the right value is 8. This happens occasionally which seems a bug. Closes https://github.com/facebook/rocksdb/pull/2160 Differential Revision: D4893542 Pulled By: lightmark fbshipit-source-id: 68e832586b58bbc6162efbe83ce273f1570d5be3
This commit is contained in:
parent
6e8d6f429d
commit
0716527341
|
@ -772,17 +772,9 @@ Status PosixWritableFile::Close() {
|
|||
fstat(fd_, &file_stats);
|
||||
// After ftruncate, we check whether ftruncate has the correct behavior.
|
||||
// If not, we should hack it with FALLOC_FL_PUNCH_HOLE
|
||||
static bool buggy = false;
|
||||
if (!buggy && (file_stats.st_size + file_stats.st_blksize - 1) /
|
||||
if ((file_stats.st_size + file_stats.st_blksize - 1) /
|
||||
file_stats.st_blksize !=
|
||||
file_stats.st_blocks / (file_stats.st_blksize / 512)) {
|
||||
fprintf(stderr,
|
||||
"WARNING: Your kernel may be buggy (<= 4.0.x) and does not free "
|
||||
"preallocated blocks on truncate. Hacking around it, but you "
|
||||
"should upgrade!\n");
|
||||
buggy = true;
|
||||
}
|
||||
if (buggy) {
|
||||
IOSTATS_TIMER_GUARD(allocate_nanos);
|
||||
if (allow_fallocate_) {
|
||||
fallocate(fd_, FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE, filesize_,
|
||||
|
|
Loading…
Reference in New Issue