Revision 7c1c8ce5acc882fa0496b71b9a9813d1dff47e0f authored by Andrew Kryczka on 05 May 2017, 00:40:29 UTC, committed by Facebook Github Bot on 05 May 2017, 00:43:22 UTC
Summary:
When user doesn't set a limit on compaction output file size, let's use the sum of the input files' sizes. This will avoid passing UINT64_MAX as fallocate()'s length. Reported in #2249.

Test setup:
- command: `TEST_TMPDIR=/data/rocksdb-test/ strace -e fallocate ./db_compaction_test --gtest_filter=DBCompactionTest.ManualCompactionUnknownOutputSize`
- filesystem: xfs

before this diff:
`fallocate(10, 01, 0, 1844674407370955160) = -1 ENOSPC (No space left on device)`

after this diff:
`fallocate(10, 01, 0, 1977)              = 0`
Closes https://github.com/facebook/rocksdb/pull/2252

Differential Revision: D5007275

Pulled By: ajkr

fbshipit-source-id: 4491404a6ae8a41328aede2e2d6f4d9ac3e38880
1 parent a45e98a
History
File Mode Size
_data
_docs
_includes
_layouts
_posts
_sass
_top-level
blog
css
doc-type-examples
docs
static
.gitignore -rw-r--r-- 57 bytes
CNAME -rw-r--r-- 11 bytes
CONTRIBUTING.md -rw-r--r-- 4.7 KB
Gemfile -rw-r--r-- 59 bytes
Gemfile.lock -rw-r--r-- 3.5 KB
LICENSE-DOCUMENTATION -rw-r--r-- 17.7 KB
README.md -rw-r--r-- 3.1 KB
TEMPLATE-INFORMATION.md -rw-r--r-- 2.5 KB
_config.yml -rw-r--r-- 2.8 KB
feed.xml -rw-r--r-- 1.2 KB
index.md -rw-r--r-- 174 bytes

README.md

back to top