]> git-server-git.apps.pok.os.sepia.ceph.com Git - rocksdb.git/log
rocksdb.git
7 years agoMake a copy of MutableCFOptions to avoid race condition (#4876)
Yanqin Jin [Sat, 12 Jan 2019 01:40:44 +0000 (17:40 -0800)]
Make a copy of MutableCFOptions to avoid race condition (#4876)

Summary:
If we do not do this, then reading MutableCFOptions may have a race condition
with SetOptions which modifies MutableCFOptions.

Also reserve space in advance for vectors to avoid reallocation changing the
address of its elements.

Test plan
```
$make clean && make -j32 all check
$make clean && COMPILE_WITH_TSAN=1 make -j32 all check
$make clean && COMPILE_WITH_ASAN=1 make -j32 all check
```
Pull Request resolved: https://github.com/facebook/rocksdb/pull/4876

Differential Revision: D13644500

Pulled By: riversand963

fbshipit-source-id: 4b8112c5c819d5a2922bb61ad1521b3d2fb2fd47

7 years agoAlways delete Blob DB files in the background (#4928)
anand76 [Tue, 29 Jan 2019 22:27:30 +0000 (14:27 -0800)]
Always delete Blob DB files in the background (#4928)

Summary:
Blob DB files are not tracked by the SFM, so they currently don't get
deleted in the background. Force them to be deleted in background so
rate limiting can be applied
Pull Request resolved: https://github.com/facebook/rocksdb/pull/4928

Differential Revision: D13854649

Pulled By: anand1976

fbshipit-source-id: 8031ce66842ff0af440c715d886b377983dad7d8

7 years agoDeleting Blob files also goes through SstFileManager (#4904)
Siying Dong [Wed, 23 Jan 2019 00:57:40 +0000 (16:57 -0800)]
Deleting Blob files also goes through SstFileManager (#4904)

Summary:
Right now, deleting blob files is not rate limited, even if SstFileManger is specified.
On the other hand, rate limiting blob deletion is not supported. With this change, Blob file
deletion will go through SstFileManager too.
Pull Request resolved: https://github.com/facebook/rocksdb/pull/4904

Differential Revision: D13772545

Pulled By: siying

fbshipit-source-id: bd1b1d0beb26d5167385e00b7ecb8b94b879de84

7 years agoUse chrono::time_point instead of time_t (#4868)
Yanqin Jin [Wed, 16 Jan 2019 17:48:01 +0000 (09:48 -0800)]
Use chrono::time_point instead of time_t (#4868)

Summary:
By convention, time_t almost always stores the integral number of seconds since
00:00 hours, Jan 1, 1970 UTC, according to http://www.cplusplus.com/reference/ctime/time_t/.
We surely want more precision than seconds.
Pull Request resolved: https://github.com/facebook/rocksdb/pull/4868

Differential Revision: D13633046

Pulled By: riversand963

fbshipit-source-id: 4e01e23a22e8838023c51a91247a286dbf3a5396

7 years agoBump version to 5.18.1
Yanqin Jin [Thu, 10 Jan 2019 00:15:59 +0000 (16:15 -0800)]
Bump version to 5.18.1

7 years agoInitialize two members in PerfContext (#4859)
Yanqin Jin [Wed, 9 Jan 2019 23:51:02 +0000 (15:51 -0800)]
Initialize two members in PerfContext (#4859)

Summary:
as titled.
Currently it's possible to create a local object of type PerfContext since it's
part of public API. Then it's safe to initialize the two members to 0.
If PerfContext is created as thread-local object, then all members are
zero-initialized according to C++ standard.
Pull Request resolved: https://github.com/facebook/rocksdb/pull/4859

Differential Revision: D13614504

Pulled By: riversand963

fbshipit-source-id: 406ff548e105a074f379ad1054d56fece5f524a0