36375de | James Page | 08 August 2017, 15:45:28 UTC | gcc-7/i386: markup intentional fallthroughs Summary: Markup i386 code paths resolving compilation failure under i386 with gcc-7. Signed-off-by: James Page <james.page@ubuntu.com> Closes https://github.com/facebook/rocksdb/pull/2700 Differential Revision: D5583047 Pulled By: maysamyabandeh fbshipit-source-id: fe31bcfeaf7cd2d3f51b55f5ae0b3b0cb3788fbc | 08 August 2017, 15:56:52 UTC |
bdc056f | Maysam Yabandeh | 07 August 2017, 23:07:40 UTC | Refactor PessimisticTransaction Summary: This patch splits Commit and Prepare into lock-related logic and db-write-related logic. It moves lock-related logic to PessimisticTransaction to be reused by all children classes and movies the existing impl of db-write-related to PrepareInternal, CommitSingleInternal, and CommitInternal in WriteCommittedTxnImpl. Closes https://github.com/facebook/rocksdb/pull/2691 Differential Revision: D5569464 Pulled By: maysamyabandeh fbshipit-source-id: d1b8698e69801a4126c7bc211745d05c636f5325 | 07 August 2017, 23:12:29 UTC |
a9a4e89 | Maysam Yabandeh | 07 August 2017, 15:27:49 UTC | Fix valgrind complaint about initialization Summary: Closes https://github.com/facebook/rocksdb/pull/2697 Differential Revision: D5573894 Pulled By: maysamyabandeh fbshipit-source-id: 8fc03ea8ea6f3f3bc0f68b64cf90243a70562dc4 | 07 August 2017, 15:49:52 UTC |
4ca11b4 | janlzlabs | 06 August 2017, 19:43:34 UTC | Update USERS.md Summary: I'd like to propose adding my company as a RocksDB user Closes https://github.com/facebook/rocksdb/pull/2694 Differential Revision: D5572113 Pulled By: ajkr fbshipit-source-id: 646143b955e3efddee56691cce912d7badaa6e8b | 06 August 2017, 19:44:40 UTC |
c9804e0 | Maysam Yabandeh | 06 August 2017, 00:17:48 UTC | Refactor TransactionDBImpl Summary: This opens space for the new implementations of TransactionDBImpl such as WritePreparedTxnDBImpl that has a different policy of how to write to DB. Closes https://github.com/facebook/rocksdb/pull/2689 Differential Revision: D5568918 Pulled By: maysamyabandeh fbshipit-source-id: f7eac866e175daf3793ae79da108f65cc7dc7b25 | 06 August 2017, 00:26:15 UTC |
20dc5e7 | Sagar Vemuri | 05 August 2017, 06:57:49 UTC | Optimize range-delete aggregator call in merge helper. Summary: In the condition: ``` if (range_del_agg != nullptr && range_del_agg->ShouldDelete( iter->key(), RangeDelAggregator::RangePositioningMode::kForwardTraversal) && filter != CompactionFilter::Decision::kRemoveAndSkipUntil) { ... } ``` it could be possible that all the work done in `range_del_agg->ShouldDelete` is wasted due to not having the right `filter` value later on. Instead, check `filter` value before even calling `range_del_agg->ShouldDelete`, which is a much more involved function. Closes https://github.com/facebook/rocksdb/pull/2690 Differential Revision: D5568931 Pulled By: sagar0 fbshipit-source-id: 17512d52360425c7ae9de7675383f5d7bc3dad58 | 05 August 2017, 07:15:35 UTC |
0d4a2b7 | Yi Wu | 04 August 2017, 20:09:56 UTC | Avoid blob db call Sync() while writing Summary: The FsyncFiles background job call Fsync() periodically for blob files. However it can access WritableFileWriter concurrently with a Put() or Write(). And WritableFileWriter does not support concurrent access. It will lead to WritableFileWriter buffer being flush with same content twice, and blob file end up corrupted. Fixing by simply let FsyncFiles hold write_mutex_. Closes https://github.com/facebook/rocksdb/pull/2685 Differential Revision: D5561908 Pulled By: yiwu-arbug fbshipit-source-id: f0bb5bcab0e05694e053b8c49eab43640721e872 | 04 August 2017, 20:12:07 UTC |
627c9f1 | Maysam Yabandeh | 04 August 2017, 17:27:39 UTC | Don't add -ljemalloc when DISABLE_JEMALLOC is set Summary: fixes #2555 Closes https://github.com/facebook/rocksdb/pull/2684 Differential Revision: D5560527 Pulled By: maysamyabandeh fbshipit-source-id: 6e1d874ae0b4e699a77203d9d52d0bb8f59013b0 | 04 August 2017, 17:42:32 UTC |
dce6d5a | Andrew Kryczka | 04 August 2017, 04:30:37 UTC | db_bench background work thread pool size arguments Summary: The background thread pools' sizes weren't easily configurable by `max_background_compactions` and `max_background_flushes` in multi-instance setups. Introduced separate arguments for their sizes. Closes https://github.com/facebook/rocksdb/pull/2680 Differential Revision: D5550675 Pulled By: ajkr fbshipit-source-id: bab5f0a7bc5db63bb084d0c10facbe437096367d | 04 August 2017, 04:41:49 UTC |
4f81ab3 | Cholerae Hu | 04 August 2017, 03:55:01 UTC | Makefile: fix for GCC 7+ and clang 4+ Summary: maysamyabandeh IslamAbdelRahman PTAL Fix https://github.com/facebook/rocksdb/issues/2672 Signed-off-by: Cholerae Hu <huyingqian@pingcap.com> Closes https://github.com/facebook/rocksdb/pull/2681 Differential Revision: D5561515 Pulled By: ajkr fbshipit-source-id: 676187802ebd8a87a6c051bb565818a1bf89d0a9 | 04 August 2017, 03:58:46 UTC |
92afe83 | Yi Wu | 04 August 2017, 00:46:00 UTC | Update all blob db TTL and timestamps to uint64_t Summary: The current blob db implementation use mix of int32_t, uint32_t and uint64_t for TTL and expiration. Update all timestamps to uint64_t for consistency. Closes https://github.com/facebook/rocksdb/pull/2683 Differential Revision: D5557103 Pulled By: yiwu-arbug fbshipit-source-id: e4eab2691629a755e614e8cf1eed9c3a681d0c42 | 04 August 2017, 00:57:30 UTC |
5883a1a | Alan Somers | 03 August 2017, 22:43:05 UTC | Fix /bin/bash shebangs Summary: "/bin/bash" is a Linuxism. "/usr/bin/env bash" is portable. Closes https://github.com/facebook/rocksdb/pull/2646 Differential Revision: D5556259 Pulled By: ajkr fbshipit-source-id: cbffd38ecdbfffb2438969ec007ab345ed893ccb | 03 August 2017, 22:56:46 UTC |
cc01985 | Andrew Kryczka | 03 August 2017, 22:36:28 UTC | Introduce bottom-pri thread pool for large universal compactions Summary: When we had a single thread pool for compactions, a thread could be busy for a long time (minutes) executing a compaction involving the bottom level. In multi-instance setups, the entire thread pool could be consumed by such bottom-level compactions. Then, top-level compactions (e.g., a few L0 files) would be blocked for a long time ("head-of-line blocking"). Such top-level compactions are critical to prevent compaction stalls as they can quickly reduce number of L0 files / sorted runs. This diff introduces a bottom-priority queue for universal compactions including the bottom level. This alleviates the head-of-line blocking situation for fast, top-level compactions. - Added `Env::Priority::BOTTOM` thread pool. This feature is only enabled if user explicitly configures it to have a positive number of threads. - Changed `ThreadPoolImpl`'s default thread limit from one to zero. This change is invisible to users as we call `IncBackgroundThreadsIfNeeded` on the low-pri/high-pri pools during `DB::Open` with values of at least one. It is necessary, though, for bottom-pri to start with zero threads so the feature is disabled by default. - Separated `ManualCompaction` into two parts in `PrepickedCompaction`. `PrepickedCompaction` is used for any compaction that's picked outside of its execution thread, either manual or automatic. - Forward universal compactions involving last level to the bottom pool (worker thread's entry point is `BGWorkBottomCompaction`). - Track `bg_bottom_compaction_scheduled_` so we can wait for bottom-level compactions to finish. We don't count them against the background jobs limits. So users of this feature will get an extra compaction for free. Closes https://github.com/facebook/rocksdb/pull/2580 Differential Revision: D5422916 Pulled By: ajkr fbshipit-source-id: a74bd11f1ea4933df3739b16808bb21fcd512333 | 03 August 2017, 22:43:29 UTC |
0b814ba | Yi Wu | 03 August 2017, 22:07:01 UTC | Allow concurrent writes to blob db Summary: I'm going with brute-force solution, just letting Put() and Write() holding a mutex before writing. May improve concurrent writing with finer granularity locking later. Closes https://github.com/facebook/rocksdb/pull/2682 Differential Revision: D5552690 Pulled By: yiwu-arbug fbshipit-source-id: 039abd675b5d274a7af6428198d1733cafecef4c | 03 August 2017, 22:11:26 UTC |
2c45ada | Yi Wu | 03 August 2017, 19:56:44 UTC | Blob DB garbage collection should keep keys with newer version Summary: Fix the bug where if blob db garbage collection revmoe keys with newer version. It shouldn't delete the key from base db when sequence number in base db is not equal to the one in blob log. Closes https://github.com/facebook/rocksdb/pull/2678 Differential Revision: D5549752 Pulled By: yiwu-arbug fbshipit-source-id: abb8649260963b5c389748023970fd746279d227 | 03 August 2017, 20:12:12 UTC |
58410ae | Maysam Yabandeh | 03 August 2017, 17:36:50 UTC | Fix the overflow bug in AwaitState Summary: https://github.com/facebook/rocksdb/issues/2559 reports an overflow in AwaitState. nbronson has debugged the issue and presented the fix, which is applied to this patch. Moreover this patch adds more comments to clarify the logic in AwaitState. I tried with both 16 and 64 threads on update benchmark. The fix lowers cpu usage by 1.6 but also lowers the throughput by 1.6 and 2% respectively. Apparently the bug had favored using the spinning more often. Benchmarks: TEST_TMPDIR=/dev/shm/tmpdb time ./db_bench --benchmarks="fillrandom" --threads=16 --num=2000000 TEST_TMPDIR=/dev/shm/tmpdb time ./db_bench --use_existing_db=1 --benchmarks="updaterandom[X3]" --threads=16 --num=2000000 TEST_TMPDIR=/dev/shm/tmpdb time ./db_bench --use_existing_db=1 --benchmarks="updaterandom[X3]" --threads=64 --num=200000 Results $ cat update-16t-bug.txt | tail -4 updaterandom [AVG 3 runs] : 234117 ops/sec; 51.8 MB/sec updaterandom [MEDIAN 3 runs] : 233581 ops/sec; 51.7 MB/sec 3896.42user 1539.12system 6:50.61elapsed 1323%CPU (0avgtext+0avgdata 331308maxresident)k 0inputs+0outputs (0major+1281001minor)pagefaults 0swaps $ cat update-16t-fixed.txt | tail -4 updaterandom [AVG 3 runs] : 230364 ops/sec; 51.0 MB/sec updaterandom [MEDIAN 3 runs] : 226169 ops/sec; 50.0 MB/sec 3865.46user 1568.32system 6:57.63elapsed 1301%CPU (0avgtext+0avgdata 315012maxresident)k 0inputs+0outputs (0major+1342568minor)pagefaults 0swaps $ cat update-64t-bug.txt | tail -4 updaterandom [AVG 3 runs] : 261878 ops/sec; 57.9 MB/sec updaterandom [MEDIAN 3 runs] : 262859 ops/sec; 58.2 MB/sec 926.27user 578.06system 2:27.46elapsed 1020%CPU (0avgtext+0avgdata 475480maxresident)k 0inputs+0outputs (0major+1058728minor)pagefaults 0swaps $ cat update-64t-fixed.txt | tail -4 updaterandom [AVG 3 runs] : 256699 ops/sec; 56.8 MB/sec updaterandom [MEDIAN 3 runs] : 256380 ops/sec; 56.7 MB/sec 933.47user 575.37system 2:30.41elapsed 1003%CPU (0avgtext+0avgdata 482340maxresident)k 0inputs+0outputs (0major+1078557minor)pagefaults 0swaps Closes https://github.com/facebook/rocksdb/pull/2679 Differential Revision: D5553732 Pulled By: maysamyabandeh fbshipit-source-id: 98b72dc3a8e0f22ea29d4f7c7790af10c369c5bb | 03 August 2017, 17:43:28 UTC |
c3d5c4d | Maysam Yabandeh | 03 August 2017, 15:46:47 UTC | Refactor TransactionImpl Summary: This patch refactors TransactionImpl by separating the logic for pessimistic concurrency control from the implementation of how to write the data to rocksdb. The existing implementation is named WriteCommittedTxnImpl as it writes committed data to the db. A template named WritePreparedTxnImpl is also added which will be later completed to provide a an alternative implementation. Closes https://github.com/facebook/rocksdb/pull/2676 Differential Revision: D5549998 Pulled By: maysamyabandeh fbshipit-source-id: 16298e86b43ca4849324c1f35c731913c6d17bec | 03 August 2017, 15:57:22 UTC |
060ccd4 | Andrew Kryczka | 02 August 2017, 23:13:08 UTC | support multiple CFs with OPTIONS file Summary: Move an option necessary for running db_bench on multiple CFs into the general initialization area, so it works with both flag-based init and OPTIONS-based init. Closes https://github.com/facebook/rocksdb/pull/2675 Differential Revision: D5541378 Pulled By: ajkr fbshipit-source-id: 169926cb4ae95c17974f744faf7cc794d41e5c0a | 02 August 2017, 23:27:01 UTC |
3453870 | Sagar Vemuri | 01 August 2017, 23:42:42 UTC | Fix statistics in RocksJava sample Summary: I observed while doing a `make jtest` that the java sample was broken, due to the changes in #2551 . Closes https://github.com/facebook/rocksdb/pull/2674 Differential Revision: D5539807 Pulled By: sagar0 fbshipit-source-id: 2c7e9d84778099dfa1c611996b444efe3c9fd466 | 01 August 2017, 23:58:26 UTC |
1900771 | Yi Wu | 01 August 2017, 19:48:22 UTC | Dump Blob DB options to info log Summary: * Dump blob db options to info log * Remove BlobDBOptionsImpl to disallow dynamic cast *BlobDBOptions into *BlobDBOptionsImpl. Move options there to be constants or into BlobDBOptions. The dynamic cast is broken after #2645 * Change some of the default options * Remove blob_db_options.min_blob_size, which is unimplemented. Will implement it soon. Closes https://github.com/facebook/rocksdb/pull/2671 Differential Revision: D5529912 Pulled By: yiwu-arbug fbshipit-source-id: dcd58ca981db5bcc7f123b65a0d6f6ae0dc703c7 | 01 August 2017, 20:01:47 UTC |
3218edc | 奏之章 | 31 July 2017, 21:22:37 UTC | Fix universal compaction bug Summary: this value ``` Compaction::is_trivial_move_ ``` uninitialized . under universal compaction , we enable ``` CompactionOptionsUniversal::allow_trivial_move ``` , https://github.com/facebook/rocksdb/blob/9b11d4345a0f01fc3de756e01460bf1b0446f326/db/compaction.cc#L245 here is a disastrous bug , some sst trivial move to target level without overlap check ... THEN , DATABASE DAMAGED , WE GOT A LEVEL WITH OVERLAP ! Closes https://github.com/facebook/rocksdb/pull/2634 Differential Revision: D5530722 Pulled By: siying fbshipit-source-id: 425ab55bca5967110377d634258360bcf88c200e | 31 July 2017, 21:27:45 UTC |
6a36b3a | Andrew Kryczka | 31 July 2017, 19:07:42 UTC | fix db get/write stats Summary: we were passing `record_read_stats` (a bool) as the `hist_type` argument, which meant we were updating either `rocksdb.db.get.micros` (`hist_type == 0`) or `rocksdb.db.write.micros` (`hist_type == 1`) with wrong data. Closes https://github.com/facebook/rocksdb/pull/2666 Differential Revision: D5520384 Pulled By: ajkr fbshipit-source-id: 2f7c956aec32f8b58c5c18845ac478e0230c9516 | 31 July 2017, 19:12:03 UTC |
a84cee8 | Siying Dong | 31 July 2017, 19:00:02 UTC | Add a missing "once" in .h Summary: Closes https://github.com/facebook/rocksdb/pull/2670 Differential Revision: D5529018 Pulled By: siying fbshipit-source-id: 10a378933d509035d2dbe502247dd85fcea09789 | 31 July 2017, 19:12:03 UTC |
21696ba | Siying Dong | 28 July 2017, 23:23:50 UTC | Replace dynamic_cast<> Summary: Replace dynamic_cast<> so that users can choose to build with RTTI off, so that they can save several bytes per object, and get tiny more memory available. Some nontrivial changes: 1. Add Comparator::GetRootComparator() to get around the internal comparator hack 2. Add the two experiemental functions to DB 3. Add TableFactory::GetOptionString() to avoid unnecessary casting to get the option string 4. Since 3 is done, move the parsing option functions for table factory to table factory files too, to be symmetric. Closes https://github.com/facebook/rocksdb/pull/2645 Differential Revision: D5502723 Pulled By: siying fbshipit-source-id: fd13cec5601cf68a554d87bfcf056f2ffa5fbf7c | 28 July 2017, 23:27:16 UTC |
e85f2c6 | Mike Kolupaev | 28 July 2017, 22:43:50 UTC | Prevent empty memtables from using a lot of memory Summary: This fixes OOMs that we (logdevice) are currently having in production. SkipListRep constructor does a couple small allocations from ConcurrentArena (see InlineSkipList constructor). ConcurrentArena would sometimes allocate an entire block for that, which is a few megabytes (we use Options::arena_block_size = 4 MB). So an empty memtable can take take 4 MB of memory. We have ~40k column families (spread across 15 DB instances), so 4 MB per empty memtable easily OOMs a machine for us. This PR makes ConcurrentArena always allocate from Arena's inline block when possible. So as long as InlineSkipList's initial allocations are below 2 KB there would be no blocks allocated for empty memtables. Closes https://github.com/facebook/rocksdb/pull/2569 Differential Revision: D5404029 Pulled By: al13n321 fbshipit-source-id: 568ec22a3fd1a485c06123f6b2dfc5e9ef67cd23 | 28 July 2017, 22:58:43 UTC |
ac748c5 | Sagar Vemuri | 28 July 2017, 21:28:09 UTC | Fix FIFO Compaction with TTL tests Summary: - FIFOCompactionWithTTLTest was flaky when run in parallel earlier, and hence it was disabled. Fixed it now. - Also, faking sleep now instead of really sleeping to make tests more realistic by using TTLs like 1 hour and 1 day. Closes https://github.com/facebook/rocksdb/pull/2650 Differential Revision: D5506038 Pulled By: sagar0 fbshipit-source-id: deb429a527f045e3e2c5138b547c3e8ac8586aa2 | 28 July 2017, 21:42:59 UTC |
aaf42fe | Yi Wu | 28 July 2017, 21:21:38 UTC | Move blob_db/ttl_extractor.h into blob_db/blob_db.h Summary: Move blob_db/ttl_extractor.h into blob_db/blob_db.h Also exclude TTLExtractor from LITE build. Closes https://github.com/facebook/rocksdb/pull/2665 Differential Revision: D5520009 Pulled By: yiwu-arbug fbshipit-source-id: 4813dcc272c7cc4bf2cdac285256d9a17d78c7b7 | 28 July 2017, 21:28:21 UTC |
aace465 | Sagar Vemuri | 28 July 2017, 20:55:19 UTC | Fix license headers in Cassandra related files Summary: I might have missed these while doing some recent cassandra code reviews. Closes https://github.com/facebook/rocksdb/pull/2663 Differential Revision: D5520138 Pulled By: sagar0 fbshipit-source-id: 340930afe9efe03c75f535a1da1f89bd3e53c1f9 | 28 July 2017, 20:56:56 UTC |
50a9691 | Islam AbdelRahman | 28 July 2017, 19:18:09 UTC | CacheActivityLogger, component to log cache activity into a file Summary: Simple component that will add a new entry in a log file every time we lookup/insert a key in SimCache. API: ``` SimCache::StartActivityLogging(<file_name>, <env>, <optional_max_size>) SimCache::StopActivityLogging() ``` Sending for review, Still need to add more comments. I was thinking about a better approach, but I ended up deciding I will use a mutex to sync the writes to the file, since this feature should not be heavily used and only used to collect info that will be analyzed offline. I think it's okay to hold the mutex every time we lookup/add to the SimCache. Closes https://github.com/facebook/rocksdb/pull/2295 Differential Revision: D5063826 Pulled By: IslamAbdelRahman fbshipit-source-id: f3b5daed8b201987c9a071146ddd5c5740a2dd8c | 28 July 2017, 19:36:48 UTC |
6083bc7 | Yi Wu | 28 July 2017, 06:16:18 UTC | Blob DB TTL extractor Summary: Introducing blob_db::TTLExtractor to replace extract_ttl_fn. The TTL extractor can be use to extract TTL from keys insert with Put or WriteBatch. Change over existing extract_ttl_fn are: * If value is changed, it will be return via std::string* (rather than Slice*). With Slice* the new value has to be part of the existing value. With std::string* the limitation is removed. * It can optionally return TTL or expiration. Other changes in this PR: * replace `std::chrono::system_clock` with `Env::NowMicros` so that I can mock time in tests. * add several TTL tests. * other minor naming change. Closes https://github.com/facebook/rocksdb/pull/2659 Differential Revision: D5512627 Pulled By: yiwu-arbug fbshipit-source-id: 0dfcb00d74d060b8534c6130c808e4d5d0a54440 | 28 July 2017, 06:26:04 UTC |
710411a | Andrew Kryczka | 28 July 2017, 03:16:25 UTC | fix asan/valgrind for TableCache cleanup Summary: Breaking commit: d12691b86fb788f0ee7180db626c4ea2445fa976 In the above commit, I moved the `TableCache` cleanup logic from `Version` destructor into `PurgeObsoleteFiles`. I missed cleaning up `TableCache` entries for the current `Version` during DB destruction. This PR adds that logic to `VersionSet` destructor. One unfortunate side effect is now we're potentially deleting `TableReader`s after `column_family_set_.reset()`, which means we can't call `BlockBasedTableReader::Close` a second time as the block cache might already be destroyed. Closes https://github.com/facebook/rocksdb/pull/2662 Differential Revision: D5515108 Pulled By: ajkr fbshipit-source-id: 2cb820e19aa813e0d258d17f76b2d7b6b7ee0b18 | 28 July 2017, 03:28:04 UTC |
3a3fb00 | Yi Wu | 28 July 2017, 00:34:04 UTC | TARGETS file not setting sse explicitly Summary: We don't need to set them explicitly. Closes https://github.com/facebook/rocksdb/pull/2660 Differential Revision: D5514141 Pulled By: yiwu-arbug fbshipit-source-id: 10edebfc3cfe0afc00a34519f87fcea4d65069ae | 28 July 2017, 00:41:36 UTC |
fca4d6d | Siying Dong | 28 July 2017, 00:15:48 UTC | Build fewer tests in Travis platform_dependent tests Summary: platform_dependent tests in Travis now builds all tests, which is not needed. Only build those tests we need to run. Closes https://github.com/facebook/rocksdb/pull/2647 Differential Revision: D5513954 Pulled By: siying fbshipit-source-id: 4d540b146124e70dd25586c47939d19f93655b0a | 28 July 2017, 00:29:01 UTC |
8f553d3 | Aaron Gao | 27 July 2017, 21:17:10 UTC | remove unnecessary internal_comparator param in newIterator Summary: solved https://github.com/facebook/rocksdb/issues/2604 Closes https://github.com/facebook/rocksdb/pull/2648 Differential Revision: D5504875 Pulled By: lightmark fbshipit-source-id: c14bb62ccbdc9e7bda9cd914cae4ea0765d882ee | 27 July 2017, 21:30:42 UTC |
7f6d012 | Siying Dong | 27 July 2017, 20:35:39 UTC | "ccache -C" in Travis Summary: This is to work around the problem of build error: util/threadpool_imp.o: file not recognized: File truncated Just to make the build go through. We should remove it later if we find the real long-term solution. Closes https://github.com/facebook/rocksdb/pull/2657 Differential Revision: D5511034 Pulled By: siying fbshipit-source-id: 229f024bd78ee96799017d4a89be74253058ec30 | 27 July 2017, 20:42:18 UTC |
d12691b | Andrew Kryczka | 27 July 2017, 19:10:49 UTC | move TableCache::EraseHandle outside of db mutex Summary: Post-compaction work holds onto db mutex for the longest time (found by tracing lock acquires/releases with LTTng and correlating timestamps with our info log). Further experimentation showed `TableCache::EraseHandle` is responsible for ~86% of time mutex is held. We can just release the handle outside the db mutex. Closes https://github.com/facebook/rocksdb/pull/2654 Differential Revision: D5507126 Pulled By: ajkr fbshipit-source-id: 703c01ddf2aea16bc0f9e33c08935d78aa6b781d | 27 July 2017, 19:14:41 UTC |
f33f113 | Andrew Kryczka | 27 July 2017, 19:10:41 UTC | fix db_bench argument type Summary: it should be a bool Closes https://github.com/facebook/rocksdb/pull/2653 Differential Revision: D5506148 Pulled By: ajkr fbshipit-source-id: f142f0f3aa8b678c68adef12e5ac6e1e163306f3 | 27 July 2017, 19:14:37 UTC |
e7697b8 | Siying Dong | 27 July 2017, 04:02:53 UTC | Fix LITE unit tests Summary: Closes https://github.com/facebook/rocksdb/pull/2649 Differential Revision: D5505778 Pulled By: siying fbshipit-source-id: 7e935603ede3d958ea087ed6b8cfc4121e8797bc | 27 July 2017, 04:11:47 UTC |
3ce20e9 | Andres Suarez | 27 July 2017, 02:01:45 UTC | Fix use of RocksDBCommonHelper in cont_integration.sh Reviewed By: mzlee Differential Revision: D5472936 fbshipit-source-id: cf75858f879f1192b468a9020005634a5afad880 | 27 July 2017, 02:31:36 UTC |
c281b44 | Siying Dong | 27 July 2017, 02:00:42 UTC | Revert "CRC32 Power Optimization Changes" Summary: This reverts commit 2289d381153890e715718f6215909bdfc0e1224c. Closes https://github.com/facebook/rocksdb/pull/2652 Differential Revision: D5506163 Pulled By: siying fbshipit-source-id: 105e31dd9d99090453a6b9f32c165206cd3affa3 | 27 July 2017, 02:31:36 UTC |
9980de2 | Sagar Vemuri | 26 July 2017, 19:08:31 UTC | Fix FIFO compaction picker test Summary: A FIFO compaction picker test is accidentally testing against an instance of level compaction picker. Closes https://github.com/facebook/rocksdb/pull/2641 Differential Revision: D5495390 Pulled By: sagar0 fbshipit-source-id: 301962736f629b1c499570fb504cdbe66bacb46f | 26 July 2017, 19:12:26 UTC |
2289d38 | Kamalalochana Subbaiah | 26 July 2017, 16:33:07 UTC | CRC32 Power Optimization Changes Summary: Support for PowerPC Architecture Detecting AltiVec Support Closes https://github.com/facebook/rocksdb/pull/2353 Differential Revision: D5210948 Pulled By: siying fbshipit-source-id: 859a8c063d37697addd89ba2b8a14e5efd5d24bf | 26 July 2017, 16:42:29 UTC |
30b58cf | Maysam Yabandeh | 26 July 2017, 01:36:29 UTC | Remove the orphan assert on !need_log_sync Summary: We initially had disabled support for write_options.sync when concurrent_prepare_ is set. We later added this support but the statement that asserts this combination is not used was left there. This patch cleans it up. Closes https://github.com/facebook/rocksdb/pull/2642 Differential Revision: D5496101 Pulled By: maysamyabandeh fbshipit-source-id: becbc503446f2a51bee24cc861958c090c724ec2 | 26 July 2017, 01:41:52 UTC |
fe1a555 | Yi Wu | 25 July 2017, 23:40:21 UTC | Fix flaky write_callback_test Summary: The test is failing occasionally on the assert: `ASSERT_TRUE(writer->state == WriteThread::State::STATE_INIT)`. This is because the test don't make the leader wait for long enough before updating state for its followers. The patch move the update to `threads_waiting` to the end of `WriteThread::JoinBatchGroup:Wait` callback to avoid this happening. Also adding `WriteThread::JoinBatchGroup:Start` and have each thread wait there while another thread is linking to the linked-list. This is to make the check of `is_leader` more deterministic. Also changing two while-loops of `compare_exchange_strong` to plain `fetch_add`, to make it look cleaner. Closes https://github.com/facebook/rocksdb/pull/2640 Differential Revision: D5491525 Pulled By: yiwu-arbug fbshipit-source-id: 6e897f122082bd6f98e6d51b31a25e5fd0a3fb82 | 25 July 2017, 23:42:11 UTC |
addbd27 | Yi Wu | 25 July 2017, 19:18:17 UTC | 5.6.1 release blog post Summary: 5.6.1 release blog post Closes https://github.com/facebook/rocksdb/pull/2638 Differential Revision: D5491168 Pulled By: yiwu-arbug fbshipit-source-id: 14e3a92a03684afa4bd19bfb3ffb053cc09f5d4a | 25 July 2017, 19:27:22 UTC |
30edff3 | Andrew Gallagher | 25 July 2017, 19:02:44 UTC | buckification: remove explicit `-msse*` compiler flags Summary: These are implied by default platform flags, in particular, `-march=corei7`. Reviewed By: pixelb Differential Revision: D5485414 fbshipit-source-id: 85f1329c71fa81a604760844187cc73877fb40e9 | 25 July 2017, 19:09:06 UTC |
2b259c9 | Maysam Yabandeh | 25 July 2017, 18:33:07 UTC | Lower num of iterations in DeadlockCycle test Summary: Currently this test times out with tsan. This is likely due to decreased speed with tsan. By lowering the number of iterations we can still catch a bug as the test is run regularly and multiple runs of the test is equivalent with running the test with more iterations. Closes https://github.com/facebook/rocksdb/pull/2639 Differential Revision: D5490549 Pulled By: maysamyabandeh fbshipit-source-id: bd69c42a9728d337ac95a06a401088384e51731a | 25 July 2017, 18:42:26 UTC |
277f6f2 | Maysam Yabandeh | 25 July 2017, 17:17:10 UTC | Release note for partitioned index/filters Summary: Closes https://github.com/facebook/rocksdb/pull/2637 Differential Revision: D5489751 Pulled By: maysamyabandeh fbshipit-source-id: 0298f8960d4f86ce67959616615beee4d802c2e4 | 25 July 2017, 17:24:12 UTC |
5e731a1 | Andres Suarez | 25 July 2017, 11:23:10 UTC | Remove unused rocksdb arcanist lib Differential Revision: D5470179 fbshipit-source-id: 475ad3b6a85ead5f8abddefddc607353ea8680af | 25 July 2017, 11:27:17 UTC |
9b11d43 | Thi Doan | 24 July 2017, 21:59:34 UTC | Fix broken links Summary: Fixes broken links to the introductory talk I stumbled upon while reading the documentation. Closes https://github.com/facebook/rocksdb/pull/2628 Differential Revision: D5483851 Pulled By: sagar0 fbshipit-source-id: 94aab7fb4c4ed2305680a2fbc65b14c7977af6b8 | 24 July 2017, 22:12:45 UTC |
06f1917 | atkawa7 | 24 July 2017, 21:57:33 UTC | add vcpkg as an windows option Summary: Closes https://github.com/facebook/rocksdb/pull/2629 Differential Revision: D5483751 Pulled By: sagar0 fbshipit-source-id: 9719ef9edd936dbb89b8988e3f4cb912a234f00e | 24 July 2017, 22:12:45 UTC |
ea8ad4f | Islam AbdelRahman | 24 July 2017, 18:53:03 UTC | Fix compaction div by zero logging Summary: We will divide by zero if `stats.micros` is zero, just add a simple check This happens sometimes during running tests and UBSAN complains Closes https://github.com/facebook/rocksdb/pull/2631 Differential Revision: D5481455 Pulled By: IslamAbdelRahman fbshipit-source-id: 69aa24e64e21de15d9e2b8009adf01675fcc6598 | 24 July 2017, 18:58:02 UTC |
34112ae | kapitan-k | 24 July 2017, 18:47:34 UTC | Added db paths to c Summary: Closes https://github.com/facebook/rocksdb/pull/2613 Differential Revision: D5476064 Pulled By: sagar0 fbshipit-source-id: 6b30a9eacb93a945bbe499eafb90565fa9f1798b | 24 July 2017, 18:58:02 UTC |
1d8aa29 | Daniel Black | 24 July 2017, 18:28:20 UTC | Gcc 7 ParsedInternalKey replace memset with clear function. Summary: I haven't looked to see if a class variable inside a loop like this is always initialised. Closes https://github.com/facebook/rocksdb/pull/2602 Differential Revision: D5475937 Pulled By: IslamAbdelRahman fbshipit-source-id: 8570b308f9a4b49e2a56ccc9e9b84d7c46568c15 | 24 July 2017, 18:31:15 UTC |
a4c42e8 | Islam AbdelRahman | 24 July 2017, 17:47:19 UTC | Fix UBSAN issue of passing nullptr to memcmp Summary: As explained in the comments, Sometimes we create Slice(nullptr, 0) in our code base which cause us to do calls like ``` memcmp(nullptr, "abc", 0); ``` That's fine since the len is equal 0, but UBSAN is not happy about it so disable UBSAN for this function and add an assert instead Closes https://github.com/facebook/rocksdb/pull/2616 Differential Revision: D5458326 Pulled By: IslamAbdelRahman fbshipit-source-id: cfca32abe30f7d8f760c9f77ecd9543dfb1170dd | 24 July 2017, 17:54:37 UTC |
16e0388 | Daniel Black | 24 July 2017, 17:46:21 UTC | LRUCacheShard cache line size alignment Summary: combining #2568 and #2612. Closes https://github.com/facebook/rocksdb/pull/2620 Differential Revision: D5464394 Pulled By: IslamAbdelRahman fbshipit-source-id: 9f71d3058dd6adaf02ce3b2de3a81a1228009778 | 24 July 2017, 17:54:37 UTC |
216644c | Islam AbdelRahman | 24 July 2017, 17:41:09 UTC | enable UBSAN macro in TARGETS Summary: simply enable the macro in internal build, it wont hurt other sanitizers and will fix UBSAN issues Closes https://github.com/facebook/rocksdb/pull/2625 Differential Revision: D5475897 Pulled By: IslamAbdelRahman fbshipit-source-id: 262c6fd5de3c1906f4b29e55b39110f125f41057 | 24 July 2017, 17:54:37 UTC |
e67b35c | Siying Dong | 24 July 2017, 17:28:17 UTC | Add Iterator::Refresh() Summary: Add and implement Iterator::Refresh(). When this function is called, if the super version doesn't change, update the sequence number of the iterator to the latest one and invalidate the iterator. If the super version changed, recreated the whole iterator. This can help users reuse the iterator more easily. Closes https://github.com/facebook/rocksdb/pull/2621 Differential Revision: D5464500 Pulled By: siying fbshipit-source-id: f548bd35e85c1efca2ea69273802f6704eba6ba9 | 24 July 2017, 17:54:37 UTC |
a34b2e3 | Andrew Kryczka | 22 July 2017, 03:56:32 UTC | Fix caching of compaction picker's next index Summary: The previous implementation of caching `file_size` index made no sense. It only remembered the original span of locked files starting from beginning of `file_size`. We should remember the index after all compactions that have been considered but rejected. This will reduce the work we do while holding the db mutex. Closes https://github.com/facebook/rocksdb/pull/2624 Differential Revision: D5468152 Pulled By: ajkr fbshipit-source-id: ab92a4bffe76f9f174d861bb5812b974d1013400 | 22 July 2017, 03:57:15 UTC |
72502cf | Sagar Vemuri | 22 July 2017, 01:13:59 UTC | Revert "comment out unused parameters" Summary: This reverts the previous commit 1d7048c5985e60be8e356663ec3cb6d020adb44d, which broke the build. Did a `git revert 1d7048c`. Closes https://github.com/facebook/rocksdb/pull/2627 Differential Revision: D5476473 Pulled By: sagar0 fbshipit-source-id: 4756ff5c0dfc88c17eceb00e02c36176de728d06 | 22 July 2017, 01:26:26 UTC |
1d7048c | Victor Gao | 21 July 2017, 21:50:24 UTC | comment out unused parameters Summary: This uses `clang-tidy` to comment out unused parameters (in functions, methods and lambdas) in fbcode. Cases that the tool failed to handle are fixed manually. Reviewed By: igorsugak Differential Revision: D5454343 fbshipit-source-id: 5dee339b4334e25e963891b519a5aa81fbf627b2 | 21 July 2017, 21:57:44 UTC |
534c255 | Pengchao Wang | 21 July 2017, 21:42:32 UTC | Cassandra compaction filter for purge expired columns and rows Summary: Major changes in this PR: * Implement CassandraCompactionFilter to remove expired columns and rows (if all column expired) * Move cassandra related code from utilities/merge_operators/cassandra to utilities/cassandra/* * Switch to use shared_ptr<> from uniqu_ptr for Column membership management in RowValue. Since columns do have multiple owners in Merge and GC process, use shared_ptr helps make RowValue immutable. * Rename cassandra_merge_test to cassandra_functional_test and add two TTL compaction related tests there. Closes https://github.com/facebook/rocksdb/pull/2588 Differential Revision: D5430010 Pulled By: wpc fbshipit-source-id: 9566c21e06de17491d486a68c70f52d501f27687 | 21 July 2017, 21:57:44 UTC |
63163a8 | Yi Wu | 21 July 2017, 03:28:43 UTC | Remove make_new_version.sh Summary: Seems the only function of the script is to create a new branch, which can be done easily. I'm removing it. Closes https://github.com/facebook/rocksdb/pull/2623 Differential Revision: D5468681 Pulled By: yiwu-arbug fbshipit-source-id: 87dea5ecc4c85e06941ccbc36993f7f589063878 | 21 July 2017, 03:45:20 UTC |
0302da4 | Yi Wu | 20 July 2017, 21:52:58 UTC | Reduce blob db noisy logging Summary: Remove some of the per-key logging by blob db to reduce noise. Closes https://github.com/facebook/rocksdb/pull/2587 Differential Revision: D5429115 Pulled By: yiwu-arbug fbshipit-source-id: b89328282fb8b3c64923ce48738c16017ce7feaf | 20 July 2017, 22:02:31 UTC |
3e5ea29 | Islam AbdelRahman | 20 July 2017, 18:22:31 UTC | Fix Flaky DeleteSchedulerTest::ImmediateDeleteOn25PercDBSize Summary: In this test we are deleting 100 files, and we are expecting DeleteScheduler to delete 26 files in the background and 74 files immediately in the foreground The main purpose of the test is to make sure that we delete files in foreground thread, which is verified in line 546 But sometimes we may end up with 26 files or 25 files in the trash directory because the background thread may be slow and not be able to delete the first file fast enough, so sometimes this test fail. Remove ``` ASSERT_EQ(CountFilesInDir(trash_dir_), 25); ``` Since it does not have any benefit any way Closes https://github.com/facebook/rocksdb/pull/2618 Differential Revision: D5458674 Pulled By: IslamAbdelRahman fbshipit-source-id: 5556a9edfa049db71dce80b8e6ae0fdd25e1e74e | 20 July 2017, 18:29:01 UTC |
a22b9cc | Andrew Kryczka | 20 July 2017, 03:33:52 UTC | overlapping endpoint fixes in level compaction picker Summary: This diff addresses two problems. Both problems cause us to miss scheduling desirable compactions. One side effect is compaction picking can spam logs, as there's no delay after failed attempts to pick compactions. 1. If a compaction pulled in a locked input-level file due to user-key overlap, we would not consider picking another file from the same input level. 2. If a compaction pulled in a locked output-level file due to user-key overlap, we would not consider picking any other compaction on any level. The code changes are dependent, which is why I solved both problems in a single diff. - Moved input-level `ExpandInputsToCleanCut` into the loop inside `PickFileToCompact`. This gives two benefits: (1) if it fails, we will try the next-largest file on the same input level; (2) we get the fully-expanded input-level key-range with which we can check for pending compactions in output level. - Added another call to `ExpandInputsToCleanCut` inside `PickFileToCompact`'s to check for compaction conflicts in output level. - Deleted call to `IsRangeInCompaction` in `PickFileToCompact`, as `ExpandInputsToCleanCut` also correctly handles the case where original output-level files (i.e., ones not pulled in due to user-key overlap) are pending compaction. Closes https://github.com/facebook/rocksdb/pull/2615 Differential Revision: D5454643 Pulled By: ajkr fbshipit-source-id: ea3fb5477d83e97148951af3fd4558d2039e9872 | 20 July 2017, 03:42:00 UTC |
ffd2a2e | Andrew Kryczka | 20 July 2017, 03:26:46 UTC | delete ExpandInputsToCleanCut failure log Summary: I decided not even to keep it as an INFO-level log as it is too normal for compactions to be skipped due to locked input files. Removing logging here makes us consistent with how we treat locked files that weren't pulled in due to overlap. We may want some error handling on line 422, which should never happen when called by `LevelCompactionBuilder::PickCompaction`, as `SetupInitialFiles` skips compactions where overlap causes the output level to pull in locked files. Closes https://github.com/facebook/rocksdb/pull/2617 Differential Revision: D5458502 Pulled By: ajkr fbshipit-source-id: c2e5f867c0a77c1812ce4242ab3e085b3eee0bae | 20 July 2017, 03:42:00 UTC |
3e6e863 | Islam AbdelRahman | 14 July 2017, 18:02:51 UTC | Remove arcanist_util directory | 19 July 2017, 23:49:55 UTC |
36651d1 | Maysam Yabandeh | 18 July 2017, 23:49:57 UTC | Moving static AdaptationContext to outside function Summary: Moving static AdaptationContext to outside function to bypass tsan's false report with static initializers. It is because with optimization enabled std::atomic is simplified to as a simple read with no locks. The existing lock produced by static initializer is __cxa_guard_acquire which is apparently not understood by tsan as it is different from normal locks (__gthrw_pthread_mutex_lock). This is a known problem with tsan: https://stackoverflow.com/questions/27464190/gccs-tsan-reports-a-data-race-with-a-thread-safe-static-local https://stackoverflow.com/questions/42062557/c-multithreading-is-initialization-of-a-local-static-lambda-thread-safe A workaround that I tried was to move the static variable outside the function. It is not a good coding practice since it gives global visibility to variable but it is a hackish workaround until g++ tsan is improved. Closes https://github.com/facebook/rocksdb/pull/2598 Differential Revision: D5445281 Pulled By: yiwu-arbug fbshipit-source-id: 6142bd934eb5852d8fd7ce027af593ba697ed41d | 18 July 2017, 23:58:22 UTC |
6e3ee01 | Siying Dong | 18 July 2017, 19:58:57 UTC | Update java/rocksjni.pom Summary: Closes https://github.com/facebook/rocksdb/pull/2610 Differential Revision: D5445705 Pulled By: siying fbshipit-source-id: d5f97ffdf5bc18b853c3a106755aca96a650e428 | 18 July 2017, 20:12:23 UTC |
ecff9d5 | Andrew Kryczka | 18 July 2017, 19:40:17 UTC | Include write_buffer_manager in ImmutableDBOptions::Dump Summary: as titled Closes https://github.com/facebook/rocksdb/pull/2601 Differential Revision: D5441618 Pulled By: ajkr fbshipit-source-id: 334b098d90caadd3d07167d051cfb4ae65db98e1 | 18 July 2017, 19:42:42 UTC |
ae28634 | Siying Dong | 18 July 2017, 18:46:31 UTC | Remove some left-over BSD headers Summary: Closes https://github.com/facebook/rocksdb/pull/2608 Differential Revision: D5444797 Pulled By: siying fbshipit-source-id: 690581d03f37822e059a16085088e8e2d8a45016 | 18 July 2017, 18:56:57 UTC |
33b1de8 | Siying Dong | 18 July 2017, 17:57:10 UTC | Remove format compatibility hack Summary: We don't need this format compatibility hack anymore. We should remove it to make things simpler. Closes https://github.com/facebook/rocksdb/pull/2607 Differential Revision: D5444107 Pulled By: siying fbshipit-source-id: 7ef587dd0cacfc15a4083a137adba8e6bfddac7e | 18 July 2017, 18:12:32 UTC |
2f37515 | Maysam Yabandeh | 18 July 2017, 17:29:36 UTC | checkout local branch in check_format_compatible.sh Summary: For forward_compatible_checkout_objs the local branch is already created in previous step. This patch avoid recreating it. This should address "fatal: A branch named '3.10.fb' already exists." errors. Closes https://github.com/facebook/rocksdb/pull/2606 Differential Revision: D5443786 Pulled By: maysamyabandeh fbshipit-source-id: 69d5a67b87677429cf36e3a467bd114d341f3b9c | 18 July 2017, 17:42:17 UTC |
ddb22ac | Maysam Yabandeh | 18 July 2017, 15:16:58 UTC | avoid collision with master branch in check format Summary: The new local branch specified with -b cannot be called master. Use tmp prefix to avoid name collision. Closes https://github.com/facebook/rocksdb/pull/2600 Differential Revision: D5442944 Pulled By: maysamyabandeh fbshipit-source-id: 4a623d9b21d6cc01bee812b2799790315bdf5f6e | 18 July 2017, 15:27:33 UTC |
0c03a7f | Maysam Yabandeh | 18 July 2017, 02:35:23 UTC | set the remote for git checkout Summary: This will fix the error: "error: pathspec '2.2.fb.branch' did not match any file(s) known to git." Tested by manually sshing to sandcastle and running the command. Closes https://github.com/facebook/rocksdb/pull/2599 Differential Revision: D5441130 Pulled By: maysamyabandeh fbshipit-source-id: a22fd6a52221471bafbba8990394b499535e5812 | 18 July 2017, 02:41:50 UTC |
7ac184c | Andrew Kryczka | 17 July 2017, 21:54:40 UTC | Revert cmake -DNDEBUG for non-MSVC Summary: Unfortunately we can't use -DNDEBUG yet since we don't properly exclude the test libraries/executables from the non-debug builds on non-MSVC platforms. Previously this was failing on Linux for every build type except `CMAKE_BUILD_TYPE=Debug`. Reverts a48a62d Closes https://github.com/facebook/rocksdb/pull/2595 Differential Revision: D5436182 Pulled By: ajkr fbshipit-source-id: 062f07cc9ce06a073b66054722b27bac1890dca3 | 17 July 2017, 22:08:38 UTC |
0655b58 | Sushma Devendrappa | 17 July 2017, 21:53:15 UTC | enable PinnableSlice for RowCache Summary: This patch enables using PinnableSlice for RowCache, changes include not releasing the cache handle immediately after lookup in TableCache::Get, instead pass a Cleanble function which does Cache::RleaseHandle. Closes https://github.com/facebook/rocksdb/pull/2492 Differential Revision: D5316216 Pulled By: maysamyabandeh fbshipit-source-id: d2a684bd7e4ba73772f762e58a82b5f4fbd5d362 | 17 July 2017, 22:08:30 UTC |
00464a3 | Yi Wu | 17 July 2017, 21:51:19 UTC | Fix column_family_test with LITE build Summary: Fix column_family_test with LITE build. I need this patch to fix 5.6 branch. Closes https://github.com/facebook/rocksdb/pull/2597 Differential Revision: D5437171 Pulled By: yiwu-arbug fbshipit-source-id: 88b9dc5925a6b47af10c1b41bc5b07c4251a84b5 | 17 July 2017, 22:08:24 UTC |
b2dd192 | Chris Lamb | 17 July 2017, 18:17:05 UTC | tools/write_stress.cc: Correct "1204" typos. Summary: Should be 1024, obviously :) Closes https://github.com/facebook/rocksdb/pull/2592 Differential Revision: D5435269 Pulled By: ajkr fbshipit-source-id: c59338a3900798a4733f0b205e534f21215cf049 | 17 July 2017, 18:27:10 UTC |
cbaab30 | Daniel Black | 17 July 2017, 17:33:12 UTC | table/block.h: change memset Summary: In gcc-7 the following is an error identified by -Werror=class-memaccess In file included from ./table/get_context.h:14:0, from db/version_set.cc:43: ./table/block.h: In constructor ‘rocksdb::BlockReadAmpBitmap::BlockReadAmpBitmap(size_t, size_t, rocksdb::Statistics*)’: ./table/block.h:73:53: error: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘struct std::atomic<unsigned int>’ with no trivial copy-assignment; use value-initialization instead [-Werror=class-memaccess] memset(bitmap_, 0, bitmap_size * kBytesPersEntry); ^ In file included from ./db/version_set.h:23:0, from db/version_set.cc:12: /toolchain/include/c++/8.0.0/atomic:684:12: note: ‘struct std::atomic<unsigned int>’ declared here struct atomic<unsigned int> : __atomic_base<unsigned int> ^~~~~~~~~~~~~~~~~~~~ As a solution the default initializer can be applied in list context. Signed-off-by: Daniel Black <daniel.black@au.ibm.com> Closes https://github.com/facebook/rocksdb/pull/2561 Differential Revision: D5398714 Pulled By: siying fbshipit-source-id: d883fb88ec7535eee60d551038fe91f14488be36 | 17 July 2017, 17:41:56 UTC |
f1a056e | Yedidya Feldblum | 17 July 2017, 04:23:33 UTC | CodeMod: Prefer ADD_FAILURE() over EXPECT_TRUE(false), et cetera Summary: CodeMod: Prefer `ADD_FAILURE()` over `EXPECT_TRUE(false)`, et cetera. The tautologically-conditioned and tautologically-contradicted boolean expectations/assertions have better alternatives: unconditional passes and failures. Reviewed By: Orvid Differential Revision: D5432398 Tags: codemod, codemod-opensource fbshipit-source-id: d16b447e8696a6feaa94b41199f5052226ef6914 | 17 July 2017, 04:26:02 UTC |
4a2e489 | Siying Dong | 17 July 2017, 01:35:39 UTC | Add back the LevelDB license file Summary: Closes https://github.com/facebook/rocksdb/pull/2591 Differential Revision: D5432696 Pulled By: siying fbshipit-source-id: a613230ab916de0b279a65ef429ede65460a8db2 | 17 July 2017, 01:42:18 UTC |
a7321fc | Siying Dong | 16 July 2017, 22:50:14 UTC | Remove the licensing description in CONTRIBUTING.md Summary: Closes https://github.com/facebook/rocksdb/pull/2590 Differential Revision: D5432539 Pulled By: siying fbshipit-source-id: 49902453bba3c95c1fb8354441b2198649e52bf4 | 16 July 2017, 22:57:18 UTC |
3c327ac | Siying Dong | 15 July 2017, 23:03:42 UTC | Change RocksDB License Summary: Closes https://github.com/facebook/rocksdb/pull/2589 Differential Revision: D5431502 Pulled By: siying fbshipit-source-id: 8ebf8c87883daa9daa54b2303d11ce01ab1f6f75 | 15 July 2017, 23:11:23 UTC |
1320133 | Islam AbdelRahman | 14 July 2017, 22:36:20 UTC | Make TARGETS file portable Summary: Instead of hard coding the path of the internal repo. Make TARGETS file work anywhere in fbcode Closes https://github.com/facebook/rocksdb/pull/2586 Differential Revision: D5428122 Pulled By: IslamAbdelRahman fbshipit-source-id: 21adec82bfbff14ea93532bee789b5f5bbee5b01 | 14 July 2017, 22:45:36 UTC |
ccf5f08 | Daniel Black | 14 July 2017, 22:12:47 UTC | Set CACHE_LINE_SIZE for s390, PPC, ARM64 Summary: Closes https://github.com/facebook/rocksdb/pull/2579 Differential Revision: D5427667 Pulled By: maysamyabandeh fbshipit-source-id: cd0b076aa0cd38d3554516f01723c548713ece61 | 14 July 2017, 22:13:46 UTC |
67510ee | Daniel Black | 14 July 2017, 15:59:45 UTC | db_crashtest.py: remove need for shell Summary: Before: $ ps -ef build 1713 16 0 Jul11 ? 00:00:00 make crash_test build 3437 1713 0 Jul11 ? 00:00:00 python -u tools/db_crashtest.py --simple blackbox build 3438 3437 0 Jul11 ? 00:00:00 [sh] <defunct> build 3440 1 99 Jul11 ? 5-03:01:25 ./db_stress --max_background_compactions=1 --max_write_buffer_number=3 --sync=0 --reopen=20 --write_buffer_size=33554432 --delpercent=5 --block_size=16384 --allow_concurrent_me After: build 1706 16 0 02:52 ? 00:00:01 make crash_test build 3432 1706 0 02:55 ? 00:00:00 python -u tools/db_crashtest.py --simple blackbox build 4452 3432 99 04:35 ? 00:01:42 ./db_stress --max_background_compactions=1 --max_write_buffer_number=3 --sync=0 --reopen=20 --write_buffer_size=33554432 --delpercent=5 --block_size=16384 --allow_concurr Closes https://github.com/facebook/rocksdb/pull/2571 Differential Revision: D5421580 Pulled By: maysamyabandeh fbshipit-source-id: d6c3970c38ea0fa23da653f4385e8e25d83f5c9f | 14 July 2017, 16:11:03 UTC |
4267eb0 | Maysam Yabandeh | 14 July 2017, 00:02:32 UTC | Remove punit tests Summary: Closes https://github.com/facebook/rocksdb/pull/2577 Differential Revision: D5420460 Pulled By: maysamyabandeh fbshipit-source-id: 83671ec65513f4223044316e28cd6d33e9d5b531 | 14 July 2017, 00:12:20 UTC |
5bfb67d | Yi Wu | 13 July 2017, 23:25:53 UTC | Enable write rate limit for updaterandom benchmark Summary: We have FLAGS_benchmark_write_rate_limit to limit write rate in db_bench, but it was not in use for updaterandom benchmark. Closes https://github.com/facebook/rocksdb/pull/2578 Differential Revision: D5420328 Pulled By: yiwu-arbug fbshipit-source-id: 5fa48c2b88f2f2dc83d615cb9c40c472bc916835 | 13 July 2017, 23:27:38 UTC |
20a691d | Islam AbdelRahman | 13 July 2017, 20:24:43 UTC | Update HISTORY to release 5.7 Summary: Update HISTORY file to release 5.7 Closes https://github.com/facebook/rocksdb/pull/2576 Differential Revision: D5417716 Pulled By: IslamAbdelRahman fbshipit-source-id: 3af5e7dd533607162212cf5d63a0121a07d637cd | 13 July 2017, 20:36:48 UTC |
98d1a55 | Siying Dong | 13 July 2017, 18:58:35 UTC | db_bench to by default verify checksum Summary: Closes https://github.com/facebook/rocksdb/pull/2575 Differential Revision: D5417350 Pulled By: siying fbshipit-source-id: 4bc11e35a7256167a5a7d2f586f2ac74c0deddb0 | 13 July 2017, 19:14:17 UTC |
26ce69b | Yi Wu | 13 July 2017, 17:03:39 UTC | Update blob db to use ROCKS_LOG_* macro Summary: Update blob db to use the newer ROCKS_LOG_* macro. Closes https://github.com/facebook/rocksdb/pull/2574 Differential Revision: D5414526 Pulled By: yiwu-arbug fbshipit-source-id: e428753aa5917e8b435cead2db26df586e5d1def | 13 July 2017, 17:14:04 UTC |
43e4eef | Aaron Gao | 13 July 2017, 01:00:45 UTC | remove unnecessary fadvise Summary: We has to remove this line because previously it is only called when use_os_buffer = false. But now we have direct io to replace it. Closes https://github.com/facebook/rocksdb/pull/2573 Differential Revision: D5412824 Pulled By: yiwu-arbug fbshipit-source-id: 81f3f0cdf94566bfc09ef2ff123e40cddbe36b36 | 13 July 2017, 01:14:41 UTC |
21b17d7 | foolenough | 13 July 2017, 00:56:40 UTC | Fix BlobDB::Get which only get out the value offset Summary: Blob db use StackableDB::get which only get out the value offset, but not the value. Fix by making BlobDB::Get override the designated getter. Closes https://github.com/facebook/rocksdb/pull/2553 Differential Revision: D5396823 Pulled By: yiwu-arbug fbshipit-source-id: 5a7d1cf77ee44490f836a6537225955382296878 | 13 July 2017, 00:57:40 UTC |
70440f7 | 奏之章 | 12 July 2017, 23:49:56 UTC | Add virtual func IsDeleteRangeSupported Summary: this modify allows third-party tables able to support delete range Closes https://github.com/facebook/rocksdb/pull/2035 Differential Revision: D5407973 Pulled By: ajkr fbshipit-source-id: 82e364b7dd5a198660788d59543f15b8f95cc418 | 12 July 2017, 23:58:45 UTC |
7550255 | Daniel Black | 12 July 2017, 19:04:55 UTC | Add JAVAC_ARGS as Makefile variable Summary: Set to "-Xlint:deprecation -Xlint:unchecked" for non-zero DEBUG_LEVEL Shows up a few warnings for later perusal however passes ok. Closes https://github.com/facebook/rocksdb/pull/2557 Differential Revision: D5408104 Pulled By: sagar0 fbshipit-source-id: 02908602e09b46d33b0dfc0ffd4b11954db03c53 | 12 July 2017, 19:12:43 UTC |
7a0b5de | Daniel Black | 12 July 2017, 16:27:12 UTC | Gcc 7 ignored quantifiers Summary: The casting seemed to cause a problem. I think this might increase it to unsigned long. Closes https://github.com/facebook/rocksdb/pull/2562 Differential Revision: D5406842 Pulled By: siying fbshipit-source-id: 736adef31448229a58a1a48bdbe77792f36736e8 | 12 July 2017, 16:41:15 UTC |
000bf0a | Adam Retter | 12 July 2017, 06:19:53 UTC | Improve the design and native object management of Stats in RocksJava Summary: Closes https://github.com/facebook/rocksdb/pull/2551 Differential Revision: D5399288 Pulled By: sagar0 fbshipit-source-id: dd3df2ed6cc5ae612db0998ea746cc29fccf568e | 12 July 2017, 06:31:00 UTC |
269d383 | Islam AbdelRahman | 11 July 2017, 21:23:09 UTC | Bump version to 5.7 Summary: Bump version to 5.7 Closes https://github.com/facebook/rocksdb/pull/2566 Differential Revision: D5400043 Pulled By: IslamAbdelRahman fbshipit-source-id: 74aae4ff143d370d7d89807e5be08a6ab827da40 | 11 July 2017, 21:29:13 UTC |