- 07 May, 2020 1 commit
-
-
Connor authored
After creating a new blob file meta, the live data size is 0. The stat is counted when adding the blob file but with live_data_size == 0. So we should update the stat when the live data size is initialized. Signed-off-by:
Connor <zbk602423539@gmail.com>
-
- 06 May, 2020 1 commit
-
-
Wallace authored
This is a new interface which is added to RocksDB recently and TiKV will call it if `enable_multi_thread_write` of `DBOptions` is true. So Titan must implement it by self. Signed-off-by:
Little-Wallace <bupt2013211450@gmail.com>
-
- 29 Apr, 2020 1 commit
-
-
Connor authored
exclude metadata size from file size, otherwise discardable ratio would be wrong when the blob file is small. Signed-off-by:
Connor <zbk602423539@gmail.com>
-
- 02 Apr, 2020 1 commit
-
-
Connor authored
* titan level blob file count Signed-off-by:
Connor1996 <zbk602423539@gmail.com>
-
- 01 Apr, 2020 1 commit
-
-
Connor authored
-
- 27 Mar, 2020 2 commits
-
-
Connor authored
-
Connor authored
* store stats in rocksdb statistics Signed-off-by:
Connor1996 <zbk602423539@gmail.com>
-
- 20 Mar, 2020 1 commit
-
-
Wallace authored
Signed-off-by:
Little-Wallace <bupt2013211450@gmail.com> Fix warn when titan is compiled with gcc 5.5.0 ``` /home/pingcap/.cargo/git/checkouts/rust-rocksdb-e0eeb217423298aa/0e1a085/librocksdb_sys/libtitan_sys/titan/src/db_impl_gc.cc: In member function ‘rocksdb::Status rocksdb::titandb::TitanDBImpl::BackgroundGC(rocksdb::LogBuffer*, uint32_t)’: /home/pingcap/.cargo/git/checkouts/rust-rocksdb-e0eeb217423298aa/0e1a085/librocksdb_sys/libtitan_sys/titan/src/db_impl_gc.cc:205:55: error: ‘gc_merge_rewrite’ may be used uninitialized in this function [-Werror=maybe-uninitialized] &shuting_down_, stats_.get()); ```
-
- 04 Mar, 2020 1 commit
-
-
yiwu-arbug authored
Signed-off-by:
liumh8 <571621369@qq.com> Fixes #144
-
- 15 Feb, 2020 1 commit
-
-
Xinye Tao authored
* Green Blob GC by merge operator Signed-off-by:
tabokie <xy.tao@outlook.com>
-
- 04 Feb, 2020 2 commits
-
-
yiwu-arbug authored
Summary: * On DB reopen, iterate all SST file's properties and sum up live data size of all blob files to use as GC stats. * Remove previous logic to set GC mark on blob files on reopen. * Refactor `OnFlushCompleted` and `OnCompactionCompleted`. Check file state is `kPendingLSM` before transit file state. * Refactor `BlobFileMeta`. Test Plan: Updated unit tests Signed-off-by:
Yi Wu <yiwu@pingcap.com>
-
yiwu-arbug authored
Summary: When adding new blob file, titan directory need to be fsync, otherwise files can be lost after power outage. Test Plan: run `strace -yfe fsync ./titan_titan_db_test --gtest_filter=*.Snapshot` and see titan directory being fsync-ed in the output. Signed-off-by:
Yi Wu <yiwu@pingcap.com>
-
- 31 Jan, 2020 1 commit
-
-
kennytm authored
1. use `#include "port/port.h"` instead of `#include "port/port_posix.h"` 2. added an "install" target for CMake to workaround alexcrichton/cmake-rs#18 3. MSVC reported 2 warnings in Titan (and tons of warnings in RocksDB), and these are fixed.
-
- 30 Jan, 2020 1 commit
-
-
yiwu-arbug authored
Summary: Fix a typo in `TitanDBImpl::DeleteFilesInRange()` which makes GC stats not being updated after `DeleteFilesInRange()` call. Test Plan: See the new test Signed-off-by:
Yi Wu <yiwu@pingcap.com>
-
- 31 Dec, 2019 1 commit
-
-
Xinye Tao authored
Signed-off-by:
tabokie <xy.tao@outlook.com>
-
- 06 Dec, 2019 1 commit
-
-
Connor authored
* new thread pool for titan Signed-off-by:
Connor1996 <zbk602423539@gmail.com>
-
- 03 Dec, 2019 1 commit
-
-
Xinye Tao authored
fix compiling error: > error: declaration of ‘initialized’ shadows a member of 'this' Signed-off-by:
tabokie <xy.tao@outlook.com>
-
- 26 Nov, 2019 1 commit
-
-
Wu Jiayu authored
since level merge will read blob files sequentially, we should use prefetcher to accelerate merging. experiment result: Load 300GB (average value size 1KB) on Huawei NVME device, time to read blob file reduced about 50%. Signed-off-by:
wujy-cs <wujy.cs@gmail.com>
-
- 25 Nov, 2019 1 commit
-
-
yiwu-arbug authored
Summary: Refactor `TitanDBImpl::Open` to open base DB only once. Previously we open the DB twice - the first time only to obtain `cf_id` for each CF, and then initialize internals before open base DB for real. The patch change to open base DB only once, initialize internals after that. Before `TitanDBImpl` is initialized, `BaseDbListener` will be no-op and `TableBuilder` will not output blob files. Test Plan: Added new tests
-
- 21 Nov, 2019 1 commit
-
-
Phoebe Bell authored
Adding a new version to blob file format. v2 blob files come with 4 more bytes in the header to hold future flags. In particular if `kHasUncompressionDictionary` is set, the whole file is compressed using dictionary compression and the per-blob compression type should be ignored. Also update `BlobEncoder` and `BlobDecoder` to allow passing in a dictionary and use it to compress/decompress. Add unit test for it.
-
- 19 Nov, 2019 1 commit
-
-
Connor authored
* fix status override Signed-off-by:
Connor1996 <zbk602423539@gmail.com>
-
- 18 Nov, 2019 1 commit
-
-
Connor authored
* count io stats when finishing blob file Signed-off-by:
Connor1996 <zbk602423539@gmail.com>
-
- 15 Nov, 2019 1 commit
-
-
Xinye Tao authored
Signed-off-by:
tabokie <xy.tao@outlook.com>
-
- 12 Nov, 2019 1 commit
-
-
Connor authored
* update io stats for level-merge Signed-off-by:
Connor1996 <zbk602423539@gmail.com>
-
- 06 Nov, 2019 1 commit
-
-
Connor authored
* fix algorithm for counting runs Signed-off-by:
Connor1996 <zbk602423539@gmail.com>
-
- 04 Nov, 2019 2 commits
-
-
yiwu-arbug authored
-
yiwu-arbug authored
-
- 02 Nov, 2019 1 commit
-
-
Wu Jiayu authored
With level merge enabled, we expect there are no more than 10 sorted runs of blob files in both of last two levels. But - Since we force using level_compaction_dynamic_level_bytes, last level blob files won't be merged again, sorted run number in last level will increase infinitely. - Some hot range may contain more sorted runs. This patch implement range merge: - Check sorted run number of compaction range after last level compaction - Mark blob files to merge in next compaction if sorted run number > max_sorted_runs
-
- 31 Oct, 2019 3 commits
-
-
Connor authored
-
Connor authored
-
Connor authored
* add delete blobs in ranges Signed-off-by:
Connor1996 <zbk602423539@gmail.com>
-
- 25 Oct, 2019 1 commit
-
-
yiwu-arbug authored
Summary: Make titandb_stress print rocksdb and titan git hash at the beginning. This is useful in schordinger test to verify which version is being tested. Test Plan: run titandb_stress, which prints the following at the beginning: ``` 2019/10/25-05:59:22 Initializing db_stress RocksDB version : 6.4 RocksDB hash : rocksdb_build_git_sha:@9ab5a5f9e70d2ea5fc9bd22a455d52a5d082fd57@ Titan hash : titan_build_git_sha:@b497731e@ ``` Signed-off-by:
Yi Wu <yiwu@pingcap.com>
-
- 17 Oct, 2019 1 commit
-
-
Xinye Tao authored
* fix titan_db_test typo Signed-off-by:
tabokie <xy.tao@outlook.com> * test purging blob file in fallback mode Signed-off-by:
tabokie <xy.tao@outlook.com> * fix test Signed-off-by:
tabokie <xy.tao@outlook.com> * simplify Signed-off-by:
tabokie <xy.tao@outlook.com>
-
- 16 Oct, 2019 2 commits
-
-
yiwu-arbug authored
Summary: Temporary fix for #93. Fixing it by waiting until no flush is ongoing before starting a GC job. The drawback is GC can starve if flush runs so frequent that there's no gap between flush jobs. Test Plan: See the new test. The test will fail with "Corruption: Missing blob file" error before the fix.
-
Connor authored
* merge TEST_StartGC with BackgroundGC Signed-off-by:
Connor1996 <zbk602423539@gmail.com>
-
- 08 Oct, 2019 1 commit
-
-
Connor authored
tiny fix Signed-off-by:
Connor1996 <zbk602423539@gmail.com>
-
- 27 Sep, 2019 1 commit
-
-
yiwu-arbug authored
Summary: Adjusting daily benchmark script: * Default params are more close to what we use for TiKV * change bulkload to receive `NUM_THREADS` param, also bulkload disable titan GC. Test Plan: local test. Signed-off-by:
Yi Wu <yiwu@pingcap.com>
-
- 26 Sep, 2019 1 commit
-
-
Nick Cameron authored
This prevents TiKV building on MacOS. See also https://github.com/pingcap/rocksdb/pull/123Signed-off-by:
Nick Cameron <nrc@ncameron.org>
-
- 24 Sep, 2019 2 commits
-
-
Wu Jiayu authored
This patch implemented live data based GC for level merge. Delete blob files which have (discardable size == file_size - file header - file footer) in OnCompactionCompleted() Mark last two level blob files to merge in next compaction if discardable size reached GC threshold Using live data based GC instead of regular GC as long as level merge is enabled. Signed-off-by:
Yi Wu <yiwu@pingcap.com>
-
yiwu-arbug authored
Summary: Fixing -Wmissing-braces compile warning, e.g. https://travis-ci.org/pingcap/rust-rocksdb/jobs/587241018 Test Plan: `cmake .. -DCMAKE_CXX_FLAGS="-Wmissing-braces" && make src/titan_stats.o` without compile error. Signed-off-by:
Yi Wu <yiwu@pingcap.com>
-