e095d0c | Sergey Balabanov | 01 November 2016, 23:32:27 UTC | Rocksdb contruns to new Sandcastle API Reviewed By: IslamAbdelRahman Differential Revision: D4114816 fbshipit-source-id: 8082936 | 10 November 2016, 18:54:20 UTC |
14c0380 | Anirban Rahut | 10 November 2016, 18:06:06 UTC | Convenience option to parse an internal key on command line Summary: enhancing sst_dump to be able to parse internal key Closes https://github.com/facebook/rocksdb/pull/1482 Differential Revision: D4154175 Pulled By: siying fbshipit-source-id: b0e28b1 | 10 November 2016, 18:09:21 UTC |
c90fef8 | Andrew Kryczka | 10 November 2016, 06:10:06 UTC | fix open failure with empty wal Summary: Closes https://github.com/facebook/rocksdb/pull/1490 Differential Revision: D4158821 Pulled By: IslamAbdelRahman fbshipit-source-id: 59b73f4 | 10 November 2016, 06:24:26 UTC |
4e20c5d | Andrew Kryczka | 09 November 2016, 23:00:16 UTC | Store internal keys in TombstoneMap Summary: This fixes a correctness issue where ranges with same begin key would overwrite each other. This diff uses InternalKey as TombstoneMap's key such that all tombstones have unique keys even when their start keys overlap. We also update TombstoneMap to use an internal key comparator. End-to-end tests pass and are here (https://gist.github.com/ajkr/851ffe4c1b8a15a68d33025be190a7d9) but cannot be included yet since the DeleteRange() API is yet to be checked in. Note both tests failed before this fix. Closes https://github.com/facebook/rocksdb/pull/1484 Differential Revision: D4155248 Pulled By: ajkr fbshipit-source-id: 304b4b9 | 09 November 2016, 23:09:18 UTC |
a9fb346 | Yueh-Hsuan Chiang | 09 November 2016, 20:20:12 UTC | Fix RocksDB Lite build failure in c_test.cc Summary: Fix the following RocksDB Lite build failure in c_test.cc db/c_test.c:1051:3: error: implicit declaration of function 'fprintf' is invalid in C99 [-Werror,-Wimplicit-function-declaration] fprintf(stderr, "SKIPPED\n"); ^ db/c_test.c:1051:3: error: declaration of built-in function 'fprintf' requires inclusion of the header <stdio.h> [-Werror,-Wbuiltin-requires-header] db/c_test.c:1051:11: error: use of undeclared identifier 'stderr' fprintf(stderr, "SKIPPED\n"); ^ 3 errors generated. Closes https://github.com/facebook/rocksdb/pull/1479 Differential Revision: D4151160 Pulled By: yhchiang fbshipit-source-id: a471a30 | 09 November 2016, 20:24:18 UTC |
d133b08 | Reid Horuff | 09 November 2016, 20:12:40 UTC | Use correct sequence number when creating memtable Summary: copied from: https://github.com/mdlugajczyk/rocksdb/commit/5ebfd2623a01e69a4cbeae3ed2b788f2a84056ad Opening existing RocksDB attempts recovery from log files, which uses wrong sequence number to create the memtable. This is a regression introduced in change a400336. This change includes a test demonstrating the problem, without the fix the test fails with "Operation failed. Try again.: Transaction could not check for conflicts for operation at SequenceNumber 1 as the MemTable only contains changes newer than SequenceNumber 2. Increasing the value of the max_write_buffer_number_to_maintain option could reduce the frequency of this error" This change is a joint effort by Peter 'Stig' Edwards thatsafunnyname and me. Closes https://github.com/facebook/rocksdb/pull/1458 Differential Revision: D4143791 Pulled By: reidHoruff fbshipit-source-id: 5a25033 | 09 November 2016, 20:24:17 UTC |
144cdb8 | Peter (Stig) Edwards | 09 November 2016, 19:15:22 UTC | 16384 as e.g .value for compression_max_dict_bytes Summary: Use 16384 as e.g .value for ldb the --compression_max_dict_bytes option. I think 14 was copy and pasted from the options in the lines above. Closes https://github.com/facebook/rocksdb/pull/1483 Differential Revision: D4154393 Pulled By: siying fbshipit-source-id: ef53a69 | 09 November 2016, 19:24:20 UTC |
9bd191d | Islam AbdelRahman | 09 November 2016, 18:37:51 UTC | Fix deadlock between (WriterThread/Compaction/IngestExternalFile) Summary: A deadlock is possible if this happen (1) Writer thread is stopped because it's waiting for compaction to finish (2) Compaction is waiting for current IngestExternalFile() calls to finish (3) IngestExternalFile() is waiting to be able to acquire the writer thread (4) WriterThread is held by stopped writes that are waiting for compactions to finish This patch fix the issue by not incrementing num_running_ingest_file_ except when we acquire the writer thread. This patch include a unittest to reproduce the described scenario Closes https://github.com/facebook/rocksdb/pull/1480 Differential Revision: D4151646 Pulled By: IslamAbdelRahman fbshipit-source-id: 09b39db | 09 November 2016, 18:54:10 UTC |
a9fae0a | Joel Marcey | 08 November 2016, 23:21:37 UTC | CSS problems again :( Trying to remove baseurl term. | 08 November 2016, 23:22:31 UTC |
193221e | Islam AbdelRahman | 08 November 2016, 21:44:38 UTC | Fix Forward Iterator Seek()/SeekToFirst() Summary: In ForwardIterator::SeekInternal(), we may end up passing empty Slice representing an internal key to InternalKeyComparator::Compare. and when we try to extract the user key from this empty Slice, we will create a slice with size = 0 - 8 ( which will overflow and cause us to read invalid memory as well ) Scenarios to reproduce these issues are in the unit tests Closes https://github.com/facebook/rocksdb/pull/1467 Differential Revision: D4136660 Pulled By: lightmark fbshipit-source-id: 151e128 | 08 November 2016, 21:54:31 UTC |
e48f3f8 | Aaron Gao | 08 November 2016, 21:42:46 UTC | remove tabs and duplicate #include in c api Summary: fix lint error about tabs and duplicate includes. Closes https://github.com/facebook/rocksdb/pull/1476 Differential Revision: D4149646 Pulled By: lightmark fbshipit-source-id: 2e0a632 | 08 November 2016, 21:54:31 UTC |
85bd8f5 | Karthik | 08 November 2016, 20:52:17 UTC | Minor fix to GFLAGS usage in persistent cache Summary: The general convention in RocksDB is to use GFLAGS instead of google. Fixing the anomaly. Closes https://github.com/facebook/rocksdb/pull/1470 Differential Revision: D4149213 Pulled By: kradhakrishnan fbshipit-source-id: 2dafa53 | 08 November 2016, 21:09:20 UTC |
a787527 | Jay Lee | 08 November 2016, 20:36:05 UTC | c: support seek_for_prev Summary: support seek_for_prev in c abi. Closes https://github.com/facebook/rocksdb/pull/1457 Differential Revision: D4135360 Pulled By: lightmark fbshipit-source-id: 61256b0 | 08 November 2016, 20:54:13 UTC |
0f17f92 | Joel Marcey | 08 November 2016, 01:03:19 UTC | Make the header links a bit more flexible | 08 November 2016, 01:03:44 UTC |
cf19f55 | Joel Marcey | 08 November 2016, 00:30:58 UTC | single quotes in feed | 08 November 2016, 00:30:58 UTC |
2dc019e | Joel Marcey | 08 November 2016, 00:28:27 UTC | Fix header links | 08 November 2016, 00:28:27 UTC |
f1aedda | Joel Marcey | 08 November 2016, 00:16:05 UTC | More Jekyll 3.3 fixes | 08 November 2016, 00:16:05 UTC |
c54cdc3 | Joel Marcey | 08 November 2016, 00:02:48 UTC | More Jekyll 3.3 updates | 08 November 2016, 00:02:48 UTC |
2bcaf82 | Joel Marcey | 07 November 2016, 17:12:47 UTC | Update product and feature template for Jekyll 3.3 Key change is using the new `absolute_url` and `relative_url` filters http://jekyllrb.com/news/2016/10/06/jekyll-3-3-is-here/ https://github.com/blog/2277-what-s-new-in-github-pages-with-jekyll-3-3 | 07 November 2016, 17:26:20 UTC |
24bceb0 | Adam Retter | 06 November 2016, 09:25:39 UTC | Java API - Implement GetFromBatch and GetFromBatchAndDB in WBWI Summary: Needed for working with `get` after `merge` on a WBWI. Closes https://github.com/facebook/rocksdb/pull/1093 Differential Revision: D4137978 Pulled By: yhchiang fbshipit-source-id: e18d50d | 06 November 2016, 10:44:07 UTC |
815f54a | Andrew Kryczka | 05 November 2016, 16:10:51 UTC | Insert range deletion meta-block into block cache Summary: This handles two issues: (1) range deletion iterator sometimes outlives the table reader that created it, in which case the block must not be destroyed during table reader destruction; and (2) we prefer to read these range tombstone meta-blocks from file fewer times. - Extracted cache-populating logic from NewDataBlockIterator() into a separate function: MaybeLoadDataBlockToCache() - Use MaybeLoadDataBlockToCache() to load range deletion meta-block and pin it through the reader's lifetime. This code reuse works since range deletion meta-block has same format as data blocks. - Use NewDataBlockIterator() to create range deletion iterators, which uses block cache if enabled, otherwise reads the block from file. Either way, the underlying block won't disappear until after the iterator is destroyed. Closes https://github.com/facebook/rocksdb/pull/1459 Differential Revision: D4123175 Pulled By: ajkr fbshipit-source-id: 8f64281 | 05 November 2016, 16:24:26 UTC |
9e7cf34 | Andrew Kryczka | 04 November 2016, 18:53:38 UTC | DeleteRange user iterator support Summary: Note: reviewed in https://reviews.facebook.net/D65115 - DBIter maintains a range tombstone accumulator. We don't cleanup obsolete tombstones yet, so if the user seeks back and forth, the same tombstones would be added to the accumulator multiple times. - DBImpl::NewInternalIterator() (used to make DBIter's underlying iterator) adds memtable/L0 range tombstones, L1+ range tombstones are added on-demand during NewSecondaryIterator() (see D62205) - DBIter uses ShouldDelete() when advancing to check whether keys are covered by range tombstones Closes https://github.com/facebook/rocksdb/pull/1464 Differential Revision: D4131753 Pulled By: ajkr fbshipit-source-id: be86559 | 04 November 2016, 19:09:22 UTC |
5c5d01a | Islam AbdelRahman | 04 November 2016, 18:19:09 UTC | Fix wrong comment (Maximum supported block size) Summary: We can support SST files >2GB but we don't support blocks >2GB Closes https://github.com/facebook/rocksdb/pull/1465 Differential Revision: D4132140 Pulled By: yiwu-arbug fbshipit-source-id: 63bf12d | 04 November 2016, 18:24:14 UTC |
f998c97 | Andrew Kryczka | 04 November 2016, 01:40:23 UTC | DeleteRange Get support Summary: During Get()/MultiGet(), build up a RangeDelAggregator with range tombstones as we search through live memtable, immutable memtables, and SST files. This aggregator is then used by memtable.cc's SaveValue() and GetContext::SaveValue() to check whether keys are covered. added tests for Get on memtables/files; end-to-end tests mainly in https://reviews.facebook.net/D64761 Closes https://github.com/facebook/rocksdb/pull/1456 Differential Revision: D4111271 Pulled By: ajkr fbshipit-source-id: 6e388d4 | 04 November 2016, 01:54:20 UTC |
879f366 | zhangjinpeng1987 | 03 November 2016, 18:00:46 UTC | Add C api for RateLimiter Summary: Add C api for RateLimiter. Closes https://github.com/facebook/rocksdb/pull/1455 Differential Revision: D4116362 Pulled By: yiwu-arbug fbshipit-source-id: cb05a8d | 03 November 2016, 18:09:17 UTC |
557034f | Joel Marcey | 03 November 2016, 17:29:33 UTC | Remove all instances of baseurl rocksdb hit the problem that nuclide had. https://github.com/facebook/nuclide/issues/789 https://github.com/facebook/nuclide/pull/793 | 03 November 2016, 17:29:33 UTC |
437942e | Yi Wu | 02 November 2016, 22:22:13 UTC | Add avoid_flush_during_shutdown DB option Summary: Add avoid_flush_during_shutdown DB option. Closes https://github.com/facebook/rocksdb/pull/1451 Differential Revision: D4108643 Pulled By: yiwu-arbug fbshipit-source-id: abdaf4d | 02 November 2016, 22:39:18 UTC |
2b16d66 | Benoit Girard | 02 November 2016, 04:05:32 UTC | Change max_bytes_for_level_multiplier to double Summary: Closes https://github.com/facebook/rocksdb/pull/1427 Differential Revision: D4094732 Pulled By: yiwu-arbug fbshipit-source-id: b9b79e9 | 02 November 2016, 04:09:23 UTC |
16fb044 | Jay Lee | 02 November 2016, 00:02:38 UTC | expose IngestExternalFile to c abi Summary: IngestExternalFile is very useful when doing bulk load. This pr expose this API to c so many bindings can benefit from it too. Closes https://github.com/facebook/rocksdb/pull/1454 Differential Revision: D4113420 Pulled By: yiwu-arbug fbshipit-source-id: 307c6ae | 02 November 2016, 00:09:39 UTC |
ce22ea9 | Adam Retter | 01 November 2016, 16:55:29 UTC | Fix casts for MSVC Summary: I am not sure if this is the best way to fix this? Closes https://github.com/facebook/rocksdb/pull/1452 Differential Revision: D4109338 Pulled By: yiwu-arbug fbshipit-source-id: ca40809 | 01 November 2016, 17:09:16 UTC |
196af03 | Vladislav Vaintroub | 01 November 2016, 08:11:02 UTC | Introduce FAIL_ON_WARNINGS CMake variable (default ON) Summary: If FAIL_ON_WARNINGS is OFF, compilation will succeed if there were compile warnings. Closes https://github.com/facebook/rocksdb/pull/1446 Differential Revision: D4107825 Pulled By: yiwu-arbug fbshipit-source-id: 4ce6e05 | 01 November 2016, 08:24:16 UTC |
40a2e40 | Andrew Kryczka | 01 November 2016, 03:35:54 UTC | DeleteRange flush support Summary: Changed BuildTable() (used for flush) to (1) add range tombstones to the aggregator, which is used by CompactionIterator to determine which keys can be removed; and (2) add aggregator's range tombstones to the table that is output for the flush. Closes https://github.com/facebook/rocksdb/pull/1438 Differential Revision: D4100025 Pulled By: ajkr fbshipit-source-id: cb01a70 | 01 November 2016, 03:54:18 UTC |
d5555d9 | Vladislav Vaintroub | 01 November 2016, 00:22:07 UTC | Fix MSVC compile error in 32 bit compilation Summary: Passing std::atomic<uint64_t> variables to ASSERT_EQ() results in compile error C2718 'const T1': actual parameter with requested alignment of 8 won't be aligned. VS2015 defines std::atomic as specially aligned type ( with 'alignas'), however the compiler does not like declspec(align)ed function arguments. Worked around by casting std::atomic<uint64_t> types to uint64_t in ASSERT_EQ. Closes https://github.com/facebook/rocksdb/pull/1450 Differential Revision: D4106788 Pulled By: yiwu-arbug fbshipit-source-id: 5fb42c3 | 01 November 2016, 00:24:18 UTC |
da61f34 | Siying Dong | 31 October 2016, 23:03:24 UTC | Print compression and Fast CRC support info as Header level Summary: Currently the compression suppport and fast CRC support information is printed as info level. They should be in the same level as options, which is header level. Also add ZSTD to this printing. Closes https://github.com/facebook/rocksdb/pull/1448 Differential Revision: D4106608 Pulled By: yiwu-arbug fbshipit-source-id: cb9a076 | 31 October 2016, 23:09:13 UTC |
f9eb567 | Siying Dong | 31 October 2016, 21:50:40 UTC | db_bench: --dump_malloc_stats takes no effect Summary: Fix the bug that --dump_malloc_stats is set before opening the DB. Closes https://github.com/facebook/rocksdb/pull/1447 Differential Revision: D4106001 Pulled By: siying fbshipit-source-id: 4e746da | 31 October 2016, 21:54:26 UTC |
6a4faee | ananclub | 31 October 2016, 16:39:00 UTC | fix freebsd build include path err and so & jar file name Summary: Closes https://github.com/facebook/rocksdb/pull/1441 Differential Revision: D4103477 Pulled By: yiwu-arbug fbshipit-source-id: 071a0dc | 31 October 2016, 16:39:16 UTC |
c90c48d | Siying Dong | 29 October 2016, 23:01:30 UTC | Show More DB Stats in info logs Summary: DB Stats now are truncated if there are too many CFs. Extend the buffer size to allow more to be printed out. Also, separate out malloc to another log line. Closes https://github.com/facebook/rocksdb/pull/1439 Differential Revision: D4100943 Pulled By: yiwu-arbug fbshipit-source-id: 79f7218 | 29 October 2016, 23:09:18 UTC |
1b295ac | Siying Dong | 29 October 2016, 22:58:45 UTC | DBTest.GetThreadStatus: Wait for test results for longer Summary: The current 10 millisecond waiting for test results may not be sufficient in some test environments. Increase it to 60 seconds and check the results for every 1 milliseond. Already reviewed: https://reviews.facebook.net/D65457 Closes https://github.com/facebook/rocksdb/pull/1437 Differential Revision: D4099443 Pulled By: siying fbshipit-source-id: cf1f205 | 29 October 2016, 23:09:18 UTC |
25f5742 | Nipunn Koorapati | 29 October 2016, 18:54:27 UTC | Update documentation to point at gcc 4.8 Summary: Rocksdb currently has many references to std::map.emplace_back() which is not implemented in gcc 4.7, but valid in gcc 4.8. Confirmed that it did not build with gcc 4.7, but builds fine with gcc 4.8 Closes https://github.com/facebook/rocksdb/pull/1272 Differential Revision: D4101385 Pulled By: IslamAbdelRahman fbshipit-source-id: f6af453 | 29 October 2016, 19:09:17 UTC |
b50a81a | Aaron Gao | 29 October 2016, 01:17:17 UTC | Add a test for tailing_iterator Summary: A bug that tailingIterator->Seek(target) skips records. I think the bug is in the SeekInternal starting at lines 387: search_left_bound > search_right_bound There are only 2 cases this can happen: (1) target key is smaller than left most file (2) target key is larger than right most file The comment is wrong, there is another possibility that at the higher level there is a big gap such that the file in the lower level fits completely in the gap and then indexer->GetNextLevelIndex returns search_left_bound > search_right_bound I think pointing on the files after and before the gap. details: https://github.com/facebook/rocksdb/issues/1372 fixed this bug with test case added. Closes https://github.com/facebook/rocksdb/pull/1436 Reviewed By: IslamAbdelRahman Differential Revision: D4099313 Pulled By: lightmark fbshipit-source-id: 6a675b3 | 29 October 2016, 01:24:14 UTC |
04751d5 | Siying Dong | 29 October 2016, 00:28:57 UTC | L0 compression should follow options.compression_per_level if not empty Summary: Currently, we don't use options.compression_per_level[0] as the compression style for L0 compression type, unless it is None. This behavior doesn't look like on purpose. This diff will make sure L0 compress using the style of options.compression_per_level[0]. Reviewed and accepted in: https://reviews.facebook.net/D65607 Closes https://github.com/facebook/rocksdb/pull/1435 Differential Revision: D4099368 Pulled By: siying fbshipit-source-id: cfbbdcd | 29 October 2016, 00:39:20 UTC |
2946cad | Andrew Kryczka | 28 October 2016, 22:44:48 UTC | Improve RangeDelAggregator documentation Summary: as requested in D62259 Closes https://github.com/facebook/rocksdb/pull/1434 Differential Revision: D4099047 Pulled By: ajkr fbshipit-source-id: a258cfb | 28 October 2016, 22:54:21 UTC |
0a9fd05 | Islam AbdelRahman | 28 October 2016, 22:35:48 UTC | Update Vagrant file (test internal phabricator workflow) Summary: Add simple comment to Vagrant file Closes https://github.com/facebook/rocksdb/pull/1433 Differential Revision: D4098740 Pulled By: IslamAbdelRahman fbshipit-source-id: 4903bff | 28 October 2016, 22:39:19 UTC |
fcd1e0b | Islam AbdelRahman | 26 October 2016, 20:45:08 UTC | Make rocksdb work with internal repo fbshipit-source-id: f52d2b6d39668516270c51945fc4e1693e553ff7 | 28 October 2016, 21:59:50 UTC |
0aab5e5 | Willem Jan Withagen | 28 October 2016, 17:44:52 UTC | FreeBSD: malloc_usable_size is in <malloc_np.h> (#1428) Signed-off-by: Willem Jan Withagen <wjw@digiware.nl> | 28 October 2016, 17:44:52 UTC |
9c0bb7f | Kefu Chai | 28 October 2016, 17:40:47 UTC | cmake: drop "-march=native" from CXX_FLAGS (#1429) this breaks the cross-compiling, and we can not assume that the building machine and the target machine share the same CPU spec. Signed-off-by: Kefu Chai <kchai@redhat.com> | 28 October 2016, 17:40:47 UTC |
eeb27e1 | Kien-hung Li | 28 October 2016, 17:36:05 UTC | Add handy option to turn on direct I/O in db_bench (#1424) | 28 October 2016, 17:36:05 UTC |
c6168d1 | Jan Doms | 28 October 2016, 17:33:49 UTC | removed some declarations from c.h which resulted in undefined symbols (#1407) | 28 October 2016, 17:33:49 UTC |
bc429de | Aaron Gao | 28 October 2016, 17:25:39 UTC | revert fractional cascading in farward iterator Summary: As offline discussion with Siying, revert this since it has bug with seek. Test Plan: make check -j64 Reviewers: yiwu, andrewkr, sdong Reviewed By: sdong Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D65559 | 28 October 2016, 17:25:39 UTC |
b9bc7a2 | Andrew Kryczka | 27 October 2016, 17:07:28 UTC | Use skiplist rep for range tombstone memtable Summary: somehow missed committing this update in D62217 Test Plan: make check Reviewers: sdong Reviewed By: sdong Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D65361 | 27 October 2016, 17:07:28 UTC |
60a2bbb | Kefu Chai | 25 October 2016, 18:31:39 UTC | Makefile: generate util/build_version.cc from .in file (#1384) * util/build_verion.cc.in: add this file, so cmake and make can share the template file for generating util/build_version.cc. * CMakeLists.txt: also, cmake v2.8.11 does not support file(GENERATE ...), so we are using configure_file() for creating build_version.cc. * Makefile: use util/build_verion.cc.in for creating build_version.cc. Signed-off-by: Kefu Chai <tchaikov@gmail.com> | 25 October 2016, 18:31:39 UTC |
9ee8406 | Siying Dong | 25 October 2016, 17:23:50 UTC | Disable DBTest.RepeatedWritesToSameKey (#1420) Summary: The verification condition of the test DBTest.RepeatedWritesToSameKey doesn't hold anymore after 3ce3bb3da2486c2c18a332128dda7c05a91abb85. Disable the test for now before we find a way to replace it. Test Plan: Run the test and make sure it is disabled. | 25 October 2016, 17:23:50 UTC |
f41df30 | sdong | 24 October 2016, 20:16:54 UTC | OptionChangeMigration() to support FIFO compaction Summary: OptionChangeMigration() to support FIFO compaction. If the DB before migration is using FIFO compaction, nothing should be done. If the desitnation option is FIFO options, compact to one single L0 file if the source has more than one levels. Test Plan: Run option_change_migration_test Reviewers: andrewkr, IslamAbdelRahman Reviewed By: IslamAbdelRahman Subscribers: leveldb, andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D65289 | 25 October 2016, 01:04:32 UTC |
2e8004e | Anirban Rahut | 24 October 2016, 23:23:19 UTC | Changing the legocastle run to use valgrind_test instead of _check Summary: valgrind_test is the correct way to run valgrind tests. this is becasue we need to force DISABLE_JEMALLOC Test Plan: Running sandcastle and contrun Reviewers: IslamAbdelRahman Reviewed By: IslamAbdelRahman Subscribers: andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D65451 | 24 October 2016, 23:23:19 UTC |
9de2f75 | Aaron Gao | 24 October 2016, 20:13:01 UTC | revert Prev() in MergingIterator to use previous code in non-prefix-seek mode Summary: Siying suggested to keep old code for normal mode prev() for safety Test Plan: make check -j64 Reviewers: yiwu, andrewkr, sdong Reviewed By: sdong Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D65439 | 24 October 2016, 20:13:01 UTC |
2449518 | sdong | 18 October 2016, 05:22:48 UTC | DBSSTTest.RateLimitedDelete: not to use real clock Summary: Using real clock causes failures of DBSSTTest.RateLimitedDelete in some cases. Turn away from the real time. Use fake time instead. Test Plan: Run the tests and all existing tests. Reviewers: yiwu, IslamAbdelRahman Reviewed By: IslamAbdelRahman Subscribers: leveldb, andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D65145 | 24 October 2016, 17:35:00 UTC |
1168cb8 | sdong | 21 October 2016, 19:50:01 UTC | Fix a bug that may cause a deleted row to appear again Summary: The previous fix of reappearing of a deleted row 0ce258f9b37c8661ea326039372bef8f185615ef missed a corner case, which can be reproduced using test CompactionPickerTest.OverlappingUserKeys7. Consider such an example: input level file: 1[B E] 2[F H] output level file: 3[A C] 4[D I] 5[I K] First file 2 is picked, which overlaps to file 4. 4 expands to 5. Now the all range is [D K] with 2 output level files. When we try to expand that, [D K] overlaps with file 1 and 2 in the input level, and 1 and 2 overlaps with 3 and 4 in the output level. So we end up with picking 3 and 4 in the output level. Without expanding, it also has 2 files, so we determine the output level doesn't change, although they are the different two files. The fix is to expand the output level files after we picked 3 and 4. In that case, there will be three output level files so we will abort the expanding. I also added two unit tests related to marked_for_compaction and being_compacted. They have been passing though. Test Plan: Run the new unit test, as well as all other tests. Reviewers: andrewkr, IslamAbdelRahman Reviewed By: IslamAbdelRahman Subscribers: yoshinorim, leveldb, andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D65373 | 24 October 2016, 16:49:07 UTC |
99c052a | Edouard A | 24 October 2016, 01:43:29 UTC | Fix integer overflow in GetL0ThresholdSpeedupCompaction (#1378) | 24 October 2016, 01:43:29 UTC |
f83cd64 | Yueh-Hsuan Chiang | 22 October 2016, 00:26:24 UTC | Fix a bug that mistakenly disable regression_test.sh to update commit (#1415) Summary: Fix a bug that mistakenly disable regression_test.sh to update commit Test Plan: regression_test.sh | 22 October 2016, 00:26:24 UTC |
0e926b8 | Anirban Rahut | 21 October 2016, 21:57:44 UTC | Passing DISABLE_JEMALLOC=1 to valgrind_check if run locally Summary: Valgrind does not work well with JEMALLOC. If you run a simple make valgrind_check, you will see lots of issues and crashes. When precommit runs, this is taken care of. Here we make sure valgrind_check is passed in DISABLE_JEMALLOC=1 Test Plan: Ran local valgrind_test and noticed the difference Reviewers: IslamAbdelRahman Reviewed By: IslamAbdelRahman Subscribers: andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D65379 | 21 October 2016, 21:57:44 UTC |
4dfaa66 | Reid Horuff | 21 October 2016, 18:39:15 UTC | Make IsDeadlockDetect() virtual member of Transaction Summary: Make `IsDeadlockDetect()` virtual member of base class `Transaction` for ease of use in MyRocks Test Plan: compiles. compiles into MyRocks call-site. Reviewers: mung Reviewed By: mung Subscribers: andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D65385 | 21 October 2016, 21:47:59 UTC |
59a7c03 | Aaron Gao | 21 October 2016, 18:31:42 UTC | Change ioptions to store user_comparator, fix bug Summary: change ioptions.comparator to user_comparator instread of internal_comparator. Also change Comparator* to InternalKeyComparator* to make its type explicitly. Test Plan: make all check -j64 Reviewers: andrewkr, sdong, yiwu Reviewed By: yiwu Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D65121 | 21 October 2016, 18:31:42 UTC |
869ae5d | Islam AbdelRahman | 21 October 2016, 00:05:32 UTC | Support IngestExternalFile (remove AddFile restrictions) Summary: Changes in the diff API changes: - Introduce IngestExternalFile to replace AddFile (I think this make the API more clear) - Introduce IngestExternalFileOptions (This struct will encapsulate the options for ingesting the external file) - Deprecate AddFile() API Logic changes: - If our file overlap with the memtable we will flush the memtable - We will find the first level in the LSM tree that our file key range overlap with the keys in it - We will find the lowest level in the LSM tree above the the level we found in step 2 that our file can fit in and ingest our file in it - We will assign a global sequence number to our new file - Remove AddFile restrictions by using global sequence numbers Other changes: - Refactor all AddFile logic to be encapsulated in ExternalSstFileIngestionJob Test Plan: unit tests (still need to add more) addfile_stress (https://reviews.facebook.net/D65037) Reviewers: yiwu, andrewkr, lightmark, yhchiang, sdong Reviewed By: sdong Subscribers: jkedgar, hcz, andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D65061 | 21 October 2016, 00:05:32 UTC |
1d9dbef | sdong | 19 October 2016, 23:39:12 UTC | Restrict running condition of UniversalCompactionTrivialMoveTest2 Summary: DBTestUniversalCompaction.UniversalCompactionTrivialMoveTest2 verifies non-trivial move is not triggered if we load data in sequential order. However, if there are multiple compaction threads, this conditon may not hold. Restrict the running condition to 1 compaction thread to make the test more robust. Test Plan: Run the test and make sure at least it doesn't regress normally. Reviewers: yhchiang, andrewkr, IslamAbdelRahman Reviewed By: IslamAbdelRahman Subscribers: leveldb, andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D65277 | 20 October 2016, 22:43:00 UTC |
4edd39f | Manuel Ung | 28 September 2016, 08:23:33 UTC | Implement deadlock detection Summary: Implement deadlock detection. This is done by maintaining a TxnID -> TxnID map which represents the edges in the wait for graph (this is named `wait_txn_map_`). Test Plan: transaction_test Reviewers: IslamAbdelRahman, sdong Reviewed By: sdong Subscribers: andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D64491 | 20 October 2016, 02:45:57 UTC |
48fd619 | Adam Retter | 20 October 2016, 01:21:22 UTC | Minor fixes to RocksJava Native Library initialization (#1287) * [bugfix] Make sure the Native Library is initialized. Closes https://github.com/facebook/rocksdb/issues/989 * [bugfix] Just load the native libraries once | 20 October 2016, 01:21:22 UTC |
48e4e84 | yiwu-arbug | 20 October 2016, 01:18:42 UTC | Disable auto compactions in memory_test and re-enable the test (#1408) Summary: Auto-compactions will change memory usage of DB but memory_test didn't take it into account. This PR disable auto compactions in the test and hopefully it fixes its flakyness. Test Plan: UBSAN build used to catch the flakyness. Run `make ubsan_check` and it passes. | 20 October 2016, 01:18:42 UTC |
fb2e412 | sdong | 19 October 2016, 22:15:22 UTC | column_family_test: disable some tests in LITE Summary: Some tests in column_family_test depend on functions that are not available in LITE build, which sometimes cause flakiness. Disable them. Test Plan: Run those tests in LITE build. Reviewers: yiwu, IslamAbdelRahman Reviewed By: IslamAbdelRahman Subscribers: leveldb, andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D65271 | 19 October 2016, 22:55:56 UTC |
5af651d | Aaron Gao | 19 October 2016, 20:37:51 UTC | fix data race in compact_files_test Summary: fix data race Test Plan: compact_files_test Reviewers: sdong, yiwu, andrewkr Reviewed By: andrewkr Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D65259 | 19 October 2016, 20:37:51 UTC |
a0ba0aa | Andrew Kryczka | 19 October 2016, 17:59:46 UTC | Fix uninitialized variable gcc error for MyRocks Summary: make sure seq_ is properly initialized even if ParseInternalKey() fails. Test Plan: run myrocks release tests Reviewers: lightmark, mung, sdong Reviewed By: sdong Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D65199 | 19 October 2016, 17:59:46 UTC |
b88f8e8 | Islam AbdelRahman | 18 October 2016, 23:59:37 UTC | Support SST files with Global sequence numbers [reland] Summary: reland https://reviews.facebook.net/D62523 - Update SstFileWriter to include a property for a global sequence number in the SST file `rocksdb.external_sst_file.global_seqno` - Update TableProperties to be aware of the offset of each property in the file - Update BlockBasedTableReader and Block to be able to honor the sequence number in `rocksdb.external_sst_file.global_seqno` property and use it to overwrite all sequence number in the file Something worth mentioning is that we don't update the seqno in the index block since and when doing a binary search, the reason for that is that it's guaranteed that SST files with global seqno will have only one user_key and each key will have seqno=0 encoded in it, This mean that this key is greater than any other key with seqno> 0. That mean that we can actually keep the current logic for these blocks Test Plan: unit tests Reviewers: sdong, yhchiang Subscribers: andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D65211 | 18 October 2016, 23:59:37 UTC |
08616b4 | Aaron Gao | 18 October 2016, 23:30:57 UTC | [db_bench] add filldeterministic (Universal+level compaction) Summary: in db_bench, we can dynamically create a rocksdb database that guarantees the shape of its LSM. universal + level compaction no fifo compaction no multi db support Test Plan: ./db_bench -benchmarks=fillseqdeterministic -compaction_style=1 -num_levels=3 --disable_auto_compactions -num=1000000 -value_size=1000 ``` ---------------------- LSM --------------------- Level[0]: /000480.sst(size: 35060275 bytes) Level[0]: /000479.sst(size: 70443197 bytes) Level[0]: /000478.sst(size: 141600383 bytes) Level[1]: /000341.sst - /000475.sst(total size: 284726629 bytes) Level[2]: /000071.sst - /000340.sst(total size: 568649806 bytes) fillseqdeterministic : 60.447 micros/op 16543 ops/sec; 16.0 MB/s ``` Reviewers: sdong, andrewkr, IslamAbdelRahman, yhchiang Reviewed By: yhchiang Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D63111 | 18 October 2016, 23:30:57 UTC |
52c9808 | Aaron Gao | 18 October 2016, 23:30:34 UTC | not split file in compaciton on level 0 Summary: we should not split file on level 0 in compaction because it will fail the following verification of seqno order on level 0 Test Plan: check with filldeterministic in db_bench Reviewers: yhchiang, andrewkr Reviewed By: andrewkr Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D65193 | 18 October 2016, 23:30:34 UTC |
5e0d6b4 | Aaron Gao | 18 October 2016, 23:07:10 UTC | fix db_stress assertion failure Summary: in rocksdb::DBIter::FindValueForCurrentKey(), last_not_merge_type could also be SingleDelete() which is omitted Test Plan: db_iter_test Reviewers: yhchiang, sdong Reviewed By: sdong Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D65187 | 18 October 2016, 23:07:10 UTC |
ab53998 | Yueh-Hsuan Chiang | 18 October 2016, 22:39:10 UTC | Bump RocksDB version to 4.13 (#1405) Summary: Bump RocksDB version to 4.13 Test Plan: unit tests Reviewers: sdong, IslamAbdelRahman, andrewkr, lightmark Subscribers: leveldb | 18 October 2016, 22:39:10 UTC |
b4d0712 | sdong | 18 October 2016, 20:41:33 UTC | SamePrefixTest.InDomainTest to clear the test directory before testing Summary: SamePrefixTest.InDomainTest may fail if the previous run of some test cases in prefix_test fail. Test Plan: Run the test Reviewers: lightmark, yhchiang, IslamAbdelRahman Reviewed By: IslamAbdelRahman Subscribers: leveldb, andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D65163 | 18 October 2016, 21:01:10 UTC |
aa09d03 | Islam AbdelRahman | 18 October 2016, 20:19:26 UTC | Avoid calling GetDBOptions() inside GetFromBatchAndDB() Summary: MyRocks hit a regression, @mung generated perf reports showing that the reason is the cost of calling `GetDBOptions()` inside `GetFromBatchAndDB()` This diff avoid calling `GetDBOptions` and use the `ImmutableDBOptions` instead Test Plan: make check -j64 Reviewers: sdong, yiwu Reviewed By: yiwu Subscribers: andrewkr, dhruba, mung Differential Revision: https://reviews.facebook.net/D65151 | 18 October 2016, 20:19:26 UTC |
6fbe96b | Andrew Kryczka | 18 October 2016, 19:04:56 UTC | Compaction Support for Range Deletion Summary: This diff introduces RangeDelAggregator, which takes ownership of iterators provided to it via AddTombstones(). The tombstones are organized in a two-level map (snapshot stripe -> begin key -> tombstone). Tombstone creation avoids data copy by holding Slices returned by the iterator, which remain valid thanks to pinning. For compaction, we create a hierarchical range tombstone iterator with structure matching the iterator over compaction input data. An aggregator based on that iterator is used by CompactionIterator to determine which keys are covered by range tombstones. In case of merge operand, the same aggregator is used by MergeHelper. Upon finishing each file in the compaction, relevant range tombstones are added to the output file's range tombstone metablock and file boundaries are updated accordingly. To check whether a key is covered by range tombstone, RangeDelAggregator::ShouldDelete() considers tombstones in the key's snapshot stripe. When this function is used outside of compaction, it also checks newer stripes, which can contain covering tombstones. Currently the intra-stripe check involves a linear scan; however, in the future we plan to collapse ranges within a stripe such that binary search can be used. RangeDelAggregator::AddToBuilder() adds all range tombstones in the table's key-range to a new table's range tombstone meta-block. Since range tombstones may fall in the gap between files, we may need to extend some files' key-ranges. The strategy is (1) first file extends as far left as possible and other files do not extend left, (2) all files extend right until either the start of the next file or the end of the last range tombstone in the gap, whichever comes first. One other notable change is adding release/move semantics to ScopedArenaIterator such that it can be used to transfer ownership of an arena-allocated iterator, similar to how unique_ptr is used for malloc'd data. Depends on D61473 Test Plan: compaction_iterator_test, mock_table, end-to-end tests in D63927 Reviewers: sdong, IslamAbdelRahman, wanning, yhchiang, lightmark Reviewed By: lightmark Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D62205 | 18 October 2016, 19:04:56 UTC |
257de78 | Siying Dong | 18 October 2016, 13:18:24 UTC | Remove "-Xcheck:jni" from Java tests (#1402) Summary: Junit and our code generate lots of warning if "-Xcheck:jni" is on and force Travis to fail as the logs are too long. Test Plan: "make jtest" and see the warnings go away. | 18 October 2016, 13:18:24 UTC |
d88dff4 | Aaron Gao | 17 October 2016, 22:34:13 UTC | add seeforprev in history Summary: update new feature in history and avoid breaking mongorocks Test Plan: make check Reviewers: sdong, yiwu, andrewkr Reviewed By: andrewkr Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D64611 | 17 October 2016, 22:34:13 UTC |
5027dd1 | dhruba borthakur | 17 October 2016, 17:40:30 UTC | Fix a minor bug in the ldb tool that was not selecting the specified (#1399) column family for compaction. | 17 October 2016, 17:40:30 UTC |
fea6fdd | Siying Dong | 15 October 2016, 06:03:17 UTC | Fix @see in two Java functions (#1396) | 15 October 2016, 06:03:17 UTC |
b1031d6 | Dmitri Smirnov | 14 October 2016, 20:09:18 UTC | Remove function local statics that interfere with memory pooling (#1392) | 14 October 2016, 20:09:18 UTC |
f470540 | Andrew Kryczka | 14 October 2016, 19:59:51 UTC | Handle WAL deletion when using avoid_flush_during_recovery Summary: Previously the WAL files that were avoided during recovery would never be considered for deletion. That was because alive_log_files_ was only populated when log files are created. This diff further populates alive_log_files_ with existing log files that aren't flushed during recovery, such that FindObsoleteFiles() can find them later. Depends on D64053. Test Plan: new unit test, verifies it fails before this change and passes after Reviewers: sdong, IslamAbdelRahman, yiwu Reviewed By: yiwu Subscribers: leveldb, dhruba, andrewkr Differential Revision: https://reviews.facebook.net/D64059 | 14 October 2016, 19:59:51 UTC |
e29d3b6 | Yi Wu | 14 October 2016, 19:25:39 UTC | Make max_background_compactions and base_background_compactions dynamic changeable Summary: Add DB::SetDBOptions to dynamic change max_background_compactions and base_background_compactions. I'll add more dynamic changeable options soon. Test Plan: unit test. Reviewers: yhchiang, IslamAbdelRahman, sdong Reviewed By: sdong Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D64749 | 14 October 2016, 19:25:39 UTC |
21e8dac | Aaron Gao | 14 October 2016, 00:36:48 UTC | fix assertion failure in Prev() Summary: fix assertion failure in db_stress. It happens because of prefix seek key is larger than merge iterator key when they have the same user key Test Plan: ./db_stress --max_background_compactions=1 --max_write_buffer_number=3 --sync=0 --reopen=20 --write_buffer_size=33554432 --delpercent=5 --log2_keys_per_lock=10 --block_size=16384 --allow_concurrent_memtable_write=0 --test_batches_snapshots=0 --max_bytes_for_level_base=67108864 --progress_reports=0 --mmap_read=0 --writepercent=35 --disable_data_sync=0 --readpercent=50 --subcompactions=4 --ops_per_thread=20000000 --memtablerep=skip_list --prefix_size=0 --target_file_size_multiplier=1 --column_families=1 --threads=32 --disable_wal=0 --open_files=500000 --destroy_db_initially=0 --target_file_size_base=16777216 --nooverwritepercent=1 --iterpercent=10 --max_key=100000000 --prefixpercent=0 --use_clock_cache=false --kill_random_test=888887 --cache_size=1048576 --verify_checksum=1 Reviewers: sdong, andrewkr, yiwu, yhchiang Reviewed By: yhchiang Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D65025 | 14 October 2016, 00:36:48 UTC |
b9311aa | Dmitri Smirnov | 13 October 2016, 23:36:34 UTC | Implement WinRandomRW file and improve code reuse (#1388) | 13 October 2016, 23:36:34 UTC |
a249a0b | Siying Dong | 13 October 2016, 23:15:55 UTC | check_format_compatible.sh to use some branch which allows to run with GCC 4.8 (#1393) Summary: Some older tags don't run GCC 4.8 with FB internal setting. Fixed them and created branches. Change the format compatible script accordingly. Also add more releases to check format compatibility. | 13 October 2016, 23:15:55 UTC |
040328a | Yueh-Hsuan Chiang | 13 October 2016, 21:26:57 UTC | Remove an assertion for single-delete in MergeHelper::MergeUntil Summary: Previously we have an assertion which triggers when we issue Merges after a single delete. However, merges after a single delete are unrelated to that single delete. Thus this behavior should be allowed. This will address a flakyness of db_stress. Test Plan: db_stress Reviewers: IslamAbdelRahman, sdong Reviewed By: sdong Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D64923 | 13 October 2016, 21:26:57 UTC |
8cbe3e1 | Yueh-Hsuan Chiang | 13 October 2016, 21:26:12 UTC | Relax the acceptable bias RateLimiterTest::Rate test be 25% Summary: In the current implementation of RateLimiter, the difference between the configured rate and the actual rate might be more than 20%, while our test only allows 15% difference. This diff relaxes the acceptable bias RateLimiterTest::Rate test be 25% to make the test less flaky. Test Plan: rate_limiter_test Reviewers: IslamAbdelRahman, andrewkr, yiwu, lightmark, sdong Reviewed By: sdong Subscribers: andrewkr, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D64941 | 13 October 2016, 21:26:12 UTC |
f26a139 | Islam AbdelRahman | 13 October 2016, 18:56:27 UTC | Log successful AddFile Summary: Log successful AddFile Test Plan: visually check LOG file Reviewers: yiwu, andrewkr, lightmark, sdong Reviewed By: sdong Subscribers: andrewkr, jkedgar, dhruba Differential Revision: https://reviews.facebook.net/D65019 | 13 October 2016, 18:56:27 UTC |
5691a1d | Islam AbdelRahman | 13 October 2016, 17:49:06 UTC | Fix compaction conflict with running compaction Summary: Issue scenario: (1) We have 3 files in L1 and we issue a compaction that will compact them into 1 file in L2 (2) While compaction (1) is running, we flush a file into L0 and trigger another compaction that decide to move this file to L1 and then move it again to L2 (this file don't overlap with any other files) (3) compaction (1) finishes and install the file it generated in L2, but this file overlap with the file we generated in (2) so we break the LSM consistency Looks like this issue can be triggered by using non-exclusive manual compaction or AddFile() Test Plan: unit tests Reviewers: sdong Reviewed By: sdong Subscribers: hermanlee4, jkedgar, andrewkr, dhruba, yoshinorim Differential Revision: https://reviews.facebook.net/D64947 | 13 October 2016, 17:49:06 UTC |
017de66 | Andrew Kryczka | 13 October 2016, 15:48:40 UTC | fixup commit Summary: I accidentally left out these changes from my commit of D64053 due to messing up the merge conflict resolution. Test Plan: ./db_wal_test Reviewers: Subscribers: Tasks: Blame Revision: D64053 | 13 October 2016, 15:48:40 UTC |
1b7af5f | Andrew Kryczka | 13 October 2016, 06:13:09 UTC | Redo handling of recycled logs in full purge Summary: This reverts commit https://github.com/facebook/rocksdb/commit/9e4aa798c3d47c6be64324bd9d38f0813c8ead7b, which doesn't handle all cases (see inline comment). I reimplemented the logic as suggested in the initial PR: https://github.com/facebook/rocksdb/pull/1313. This approach has two benefits: - All the parsing/filtering of full_scan_candidate_files is kept together in PurgeObsoleteFiles. - We only need to check whether log file is recycled in one place where we've already determined it's a log file Test Plan: new unit test, verified fails before the original fix, still passes now. Reviewers: IslamAbdelRahman, yiwu, sdong Reviewed By: yiwu, sdong Subscribers: leveldb, dhruba, andrewkr Differential Revision: https://reviews.facebook.net/D64053 | 13 October 2016, 06:13:09 UTC |
27bfe32 | Joel Marcey | 13 October 2016, 03:24:50 UTC | Editorial change to README.md | 13 October 2016, 03:24:50 UTC |
89cc404 | Joel Marcey | 13 October 2016, 03:21:18 UTC | A bit of doc restructuring | 13 October 2016, 03:23:00 UTC |
9e7fda8 | Islam AbdelRahman | 13 October 2016, 03:11:30 UTC | Fix arcanist Summary: Set no_proxy to fix arcanist Test Plan: will check if tests are triggered Reviewers: arahut, yiwu, lightmark, andrewkr, sdong Reviewed By: sdong Subscribers: andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D65001 | 13 October 2016, 03:11:30 UTC |
2e4b5ca | Adam Retter | 12 October 2016, 22:00:37 UTC | Add missing RateLimiter class to the Windows build (#1382) | 12 October 2016, 22:00:37 UTC |
ce4963f | Adam Retter | 12 October 2016, 20:40:20 UTC | [doc] Document that Visual Studio 2015+ is now required for Windows builds (#1389) Closes https://github.com/facebook/rocksdb/issues/1377 | 12 October 2016, 20:40:20 UTC |
e489270 | Dmitri Smirnov | 12 October 2016, 18:16:16 UTC | Fix scoped arena iterator (#1387) | 12 October 2016, 18:16:16 UTC |