d497e53 | sdong | 06 June 2018, 23:33:46 UTC | Remove table_reader_bench | 06 June 2018, 23:33:46 UTC |
5140e0a | Igor Canadi | 09 May 2014, 00:25:13 UTC | Make RocksDB work with newer gflags Summary: Newer gflags switched from `google` namespace to `gflags` namespace. See: https://github.com/facebook/rocksdb/issues/139 and https://github.com/facebook/rocksdb/issues/102 Unfortunately, they don't define any macro with their namespace, so we need to actually try to compile gflags with two different namespace to figure out which one is the correct one. Test Plan: works in fbcode environemnt. I'll also try in ubutnu with newer gflags Reviewers: dhruba Reviewed By: dhruba CC: leveldb Differential Revision: https://reviews.facebook.net/D18537 | 06 June 2018, 23:32:55 UTC |
e9b40aa | sdong | 17 July 2017, 22:39:37 UTC | [FB Only] use gcc-5 | 06 June 2018, 23:29:43 UTC |
c510a18 | sdong | 12 October 2016, 22:47:53 UTC | fb internal: Should also use GCC 4.8.1 for CentOS 7 | 13 October 2016, 21:44:02 UTC |
a1a1f61 | Igor Canadi | 08 May 2014, 00:49:23 UTC | Fix iOS compile | 08 May 2014, 00:49:23 UTC |
044af85 | Igor Canadi | 05 May 2014, 21:44:57 UTC | Update HISTORY.md -- release RocksDB 3.0 | 05 May 2014, 21:44:57 UTC |
7984b9b | Igor Canadi | 05 May 2014, 21:30:24 UTC | BackupableDBTest thread-safe Summary: We need to lock accesses to some TestEnv variables. Otherwise we get failures like http://ci-builds.fb.com/job/rocksdb_asan_check/657/console Test Plan: make check Reviewers: dhruba, haobo, sdong Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18489 | 05 May 2014, 21:30:24 UTC |
15c3991 | Igor Canadi | 05 May 2014, 19:57:47 UTC | Add comment about ValueType | 05 May 2014, 19:57:47 UTC |
9e7d00d | Igor Canadi | 05 May 2014, 18:35:40 UTC | Make rocksdb work with all versions of lz4 Summary: There are some projects in fbcode that define lz4 dependency on r108. We, however, defined dependency on r117. That produced some interesting issues and our build system was not happy. This diff makes rocksdb work with both r108 and r117. Hopefully this will fix our problems. Test Plan: compiled rocksdb with both r108 and r117 lz4 Reviewers: dhruba, sdong, haobo Reviewed By: sdong CC: leveldb Differential Revision: https://reviews.facebook.net/D18465 | 05 May 2014, 18:35:40 UTC |
d2569fe | Igor Canadi | 05 May 2014, 18:11:48 UTC | log_and_apply_bench on a new benchmark framework Summary: db_test includes Benchmark for LogAndApply. This diff removes it from db_test and puts it into a separate log_and_apply bench. I just wanted to play around with our new benchmark framework and figure out how it works. I would also like to show you how great it is! I believe right set of microbenchmarks can speed up our productivity a lot and help catch early regressions. Test Plan: no Reviewers: dhruba, haobo, sdong, ljin, yhchiang Reviewed By: yhchiang CC: leveldb Differential Revision: https://reviews.facebook.net/D18261 | 05 May 2014, 18:11:48 UTC |
9b17558 | sdong | 05 May 2014, 16:32:56 UTC | PlainTableFactory::PlainTableFactory() to have huge TLB turned off by default Summary: PlainTableFactory::PlainTableFactory() now has Huge TLB page feature turned on by default. Although it is not a public API (which we always turn the feature off now), our unit tests, like db_test sometimes uses it directly, which causes wrong coverage of codes. This patch fix it to allow unit tests to run with the correct setting Test Plan: Run db_test and make sure this feature is not on any more. Reviewers: igor, haobo Reviewed By: igor CC: yhchiang, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D18483 | 05 May 2014, 18:05:54 UTC |
6785a52 | Igor Canadi | 05 May 2014, 14:13:48 UTC | Temporary remove perror() calls before we can log from inside of arena | 05 May 2014, 14:13:48 UTC |
4a7c747 | sdong | 04 May 2014, 20:55:53 UTC | Revert "Revert "Allow allocating dynamic bloom, plain table indexes and hash linked list from huge page TLB"" And make the default 0 for hash linked list memtable This reverts commit d69dc64be78a8da3ce661454655966d11ff61bb6. | 04 May 2014, 20:56:29 UTC |
d56959a | Yueh-Hsuan Chiang | 04 May 2014, 20:15:33 UTC | [Java] Use environmental variable JAVA_HOME in Makefile for RocksJava. | 04 May 2014, 20:23:21 UTC |
db1854d | Igor Canadi | 04 May 2014, 18:39:49 UTC | Declare all DB methods virtual so that StackableDB can override them | 04 May 2014, 18:39:49 UTC |
d69dc64 | Igor Canadi | 04 May 2014, 15:37:09 UTC | Revert "Allow allocating dynamic bloom, plain table indexes and hash linked list from huge page TLB" This reverts commit 7dafa3a1d7e63d4cc4a7d717ab958efc616a2892. | 04 May 2014, 15:37:09 UTC |
41e5cf2 | Benjamin Renard | 03 May 2014, 00:08:55 UTC | Add share_files_with_cheksum option to BackupEngine Summary: added a new option to BackupEngine: if share_files_with_checksum is set to true, sst files are stored in shared_checksum/ and are identified by the triple (file name, checksum, file size) instead of just the file name. This option is targeted at distributed databases that want to backup their primary replica. Test Plan: unit tests and tested backup and restore on a distributed rocksdb Reviewers: igor Reviewed By: igor Differential Revision: https://reviews.facebook.net/D18393 | 03 May 2014, 00:08:55 UTC |
77edbfd | Igor Canadi | 02 May 2014, 20:55:33 UTC | link with lz4 Summary: link our fbcode build with lz4 Test Plan: compiles Reviewers: sdong, haobo, dhruba, yhchiang Reviewed By: yhchiang CC: leveldb Differential Revision: https://reviews.facebook.net/D18447 | 02 May 2014, 20:55:33 UTC |
4ecfbcf | Igor Canadi | 02 May 2014, 20:24:04 UTC | ApplyToAllCacheEntries Summary: Added a method that executes a callback on every cache entry. Test Plan: added a unit test Reviewers: haobo Reviewed By: haobo CC: leveldb, dhruba Differential Revision: https://reviews.facebook.net/D18441 | 02 May 2014, 20:24:04 UTC |
31d38a6 | Igor Canadi | 02 May 2014, 18:18:55 UTC | Add TARGETS to gitignore | 02 May 2014, 18:18:55 UTC |
3b5fa6b | Igor Canadi | 02 May 2014, 14:13:51 UTC | Improve ttl_test Summary: Our valgrind tests are failing because ttl_test is kind of flakey. This diff should fix valgrind issue and make ttl_test less flakey and much faster. Instead of relying on Env::Default() for getting current time, I expose `Env*` to all TTL functions that are interested in time. That way, I can insert a custom test Env which is then used to provide exactly the times we need. That way, we don't need to sleep anymore -- we control the time. Test Plan: ttl_test in normal and valgrind run Reviewers: dhruba, haobo, sdong, yhchiang Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18399 | 02 May 2014, 14:13:51 UTC |
82042f4 | Igor Canadi | 01 May 2014, 23:28:23 UTC | Include version in options | 01 May 2014, 23:28:23 UTC |
d28ed69 | Igor Canadi | 01 May 2014, 19:41:49 UTC | fix release build | 01 May 2014, 19:42:06 UTC |
d29e48b | Igor Canadi | 01 May 2014, 18:12:35 UTC | fix compile warning | 01 May 2014, 18:12:35 UTC |
0afc8bc | Igor Canadi | 01 May 2014, 18:09:32 UTC | xxHash Summary: Originally: https://github.com/facebook/rocksdb/pull/87/files I'm taking over to apply some finishing touches Test Plan: will add tests Reviewers: dhruba, haobo, sdong, yhchiang, ljin Reviewed By: yhchiang CC: leveldb Differential Revision: https://reviews.facebook.net/D18315 | 01 May 2014, 18:09:32 UTC |
61955a0 | Yueh-Hsuan Chiang | 01 May 2014, 08:44:46 UTC | [Java] Add RocksObject, the base class of all java objects with a c++ pointer. Summary: Add RocksObject, the base class of all java objects which has a c++ pointer. While the finalizer of a RocksObject will release its c++ resource, it is suggested to call its RocksObject.dispose() to manually release its c++ resource. Existing RocksDB java classes are now extending RocksObject. Test Plan: make rocksdbjava make jtest make jdb_bench Reviewers: haobo, dhruba, sdong, ankgup87, rsumbaly, swapnilghike, zzbennett Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18411 | 01 May 2014, 08:44:46 UTC |
096f5be | Igor Canadi | 30 April 2014, 20:24:52 UTC | Put column family information in LiveFileMetaData Summary: As summary Test Plan: compiles :) Reviewers: dhruba, haobo, sdong, yhchiang Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18405 | 30 April 2014, 20:24:52 UTC |
a3ab998 | Yueh-Hsuan Chiang | 30 April 2014, 18:54:02 UTC | [Java] Add static method RocksDB.loadLibrary() Summary: Add static method RocksDB.loadLibrary() which loads necessary library files. Test Plan: make rocksdbjava make jtest make jdb_bench java/jdb_bench.sh Reviewers: haobo, dhruba, sdong, ankgup87, rsumbaly, swapnilghike, zzbennett Reviewed By: ankgup87 CC: leveldb Differential Revision: https://reviews.facebook.net/D18375 | 30 April 2014, 18:54:02 UTC |
16f1aa7 | Igor Canadi | 30 April 2014, 18:38:01 UTC | Fix signed/unsigned compare | 30 April 2014, 18:38:01 UTC |
df70047 | Igor Canadi | 30 April 2014, 18:33:40 UTC | Flush stale column families Summary: Added a new option `max_total_wal_size`. Once the total WAL size goes over that, we make an attempt to flush all column families that still have data in the earliest WAL file. By default, I calculate `max_total_wal_size` dynamically, that should be good-enough for non-advanced customers. Test Plan: Added a test Reviewers: dhruba, haobo, sdong, ljin, yhchiang Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18345 | 30 April 2014, 18:33:40 UTC |
7dafa3a | sdong | 25 April 2014, 22:45:37 UTC | Allow allocating dynamic bloom, plain table indexes and hash linked list from huge page TLB Summary: Add an option to allocate a piece of memory from huge page TLB. Add options to trigger it in dynamic bloom, plain table indexes andhash linked list hash table. Test Plan: make all check Reviewers: haobo, ljin Reviewed By: haobo CC: nkg-, dhruba, leveldb, igor, yhchiang Differential Revision: https://reviews.facebook.net/D18357 | 30 April 2014, 18:02:26 UTC |
66f88c4 | Igor Canadi | 30 April 2014, 15:38:09 UTC | Some fixes as preparation for release | 30 April 2014, 16:03:24 UTC |
d6d67c0 | Igor Canadi | 29 April 2014, 20:25:23 UTC | More s/us fixes | 30 April 2014, 14:04:36 UTC |
2e11e47 | Yueh-Hsuan Chiang | 30 April 2014, 05:05:55 UTC | Merge pull request #131 from ankgup87/master [Java] Add multiget JNI bindings | 30 April 2014, 05:05:55 UTC |
046a85a | Igor Canadi | 30 April 2014, 01:26:12 UTC | Merge pull request #132 from kjk/master Improve building of shared library so that it e.g. works with Go bindings | 30 April 2014, 01:26:12 UTC |
9d9d296 | Yueh-Hsuan Chiang | 30 April 2014, 00:13:46 UTC | Add a new mem-table representation based on cuckoo hash. Summary: = Major Changes = * Add a new mem-table representation, HashCuckooRep, which is based cuckoo hash. Cuckoo hash uses multiple hash functions. This allows each key to have multiple possible locations in the mem-table. - Put: When insert a key, it will try to find whether one of its possible locations is vacant and store the key. If none of its possible locations are available, then it will kick out a victim key and store at that location. The kicked-out victim key will then be stored at a vacant space of its possible locations or kick-out another victim. In this diff, the kick-out path (known as cuckoo-path) is found using BFS, which guarantees to be the shortest. - Get: Simply tries all possible locations of a key --- this guarantees worst-case constant time complexity. - Time complexity: O(1) for Get, and average O(1) for Put if the fullness of the mem-table is below 80%. - Default using two hash functions, the number of hash functions used by the cuckoo-hash may dynamically increase if it fails to find a short-enough kick-out path. - Currently, HashCuckooRep does not support iteration and snapshots, as our current main purpose of this is to optimize point access. = Minor Changes = * Add IsSnapshotSupported() to DB to indicate whether the current DB supports snapshots. If it returns false, then DB::GetSnapshot() will always return nullptr. Test Plan: Run existing tests. Will develop a test specifically for cuckoo hash in the next diff. Reviewers: sdong, haobo Reviewed By: sdong CC: leveldb, dhruba, igor Differential Revision: https://reviews.facebook.net/D16155 | 30 April 2014, 00:13:46 UTC |
2b7cf03 | Krzysztof Kowalczyk | 29 April 2014, 21:29:45 UTC | Update Makefile | 29 April 2014, 21:29:45 UTC |
f1c9aa6 | Igor Canadi | 29 April 2014, 19:47:48 UTC | More unsigned/signed compare fixes | 29 April 2014, 20:01:06 UTC |
38693d9 | Igor Canadi | 29 April 2014, 19:33:57 UTC | Fix more signed/unsigned comparsions | 29 April 2014, 19:40:18 UTC |
d0b006a | Igor Canadi | 29 April 2014, 19:29:22 UTC | Fix unsigned and signed integer compare | 29 April 2014, 19:29:22 UTC |
76c3dbf | Igor Canadi | 29 April 2014, 19:19:54 UTC | Make ttl_test a bit more robust | 29 April 2014, 19:19:54 UTC |
dd9eb7a | Igor Canadi | 29 April 2014, 17:27:58 UTC | Cache result of ReadFirstRecord() Summary: ReadFirstRecord() reads the actual log file from disk on every call. This diff introduces a cache layer on top of ReadFirstRecord(), which should significantly speed up repeated calls to GetUpdatesSince(). I also cleaned up some stuff, but the whole TransactionLogIterator could use some refactoring, especially if we see increased usage. Test Plan: make check Reviewers: haobo, sdong, dhruba Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18387 | 29 April 2014, 17:27:58 UTC |
de825e7 | Igor Canadi | 29 April 2014, 16:17:34 UTC | Create new branch instead of tag in make_new_version | 29 April 2014, 17:22:34 UTC |
e525bb1 | Igor Canadi | 29 April 2014, 15:59:36 UTC | Make kMajorVersion and kMinorVersion take version from version macros | 29 April 2014, 15:59:48 UTC |
6cb0cb3 | Igor Canadi | 29 April 2014, 15:32:56 UTC | Add version.h | 29 April 2014, 15:33:00 UTC |
d5cb6e7 | Ankit Gupta | 29 April 2014, 15:02:52 UTC | Assert on key size in multiget | 29 April 2014, 15:02:52 UTC |
65fba4b | Ankit Gupta | 29 April 2014, 14:53:29 UTC | Merge branch 'master' of https://github.com/facebook/rocksdb | 29 April 2014, 14:53:29 UTC |
91ef2ea | Igor Canadi | 29 April 2014, 03:44:33 UTC | Use new DBWithTTL API in tests | 29 April 2014, 03:46:24 UTC |
f868dcb | Igor Canadi | 29 April 2014, 03:34:20 UTC | Support for adding TTL-ed column family Summary: This enables user to add a TTL column family to normal DB. Next step should be to expand StackableDB and create StackableColumnFamily, such that users can for example add geo-spatial column families to normal DB. Test Plan: added a test Reviewers: dhruba, haobo, ljin Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18201 | 29 April 2014, 03:34:20 UTC |
72ff275 | Igor Canadi | 29 April 2014, 03:30:27 UTC | Fix TransactionLogIterator EOF caching Summary: When TransactionLogIterator comes to EOF, it calls UnmarkEOF and continues reading. However, if glibc cached the EOF status of the file, it will get EOF again, even though the new data might have been written to it. This has been causing errors in Mac OS. Test Plan: test passes, was failing before Reviewers: dhruba, haobo, sdong Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18381 | 29 April 2014, 03:30:27 UTC |
9895465 | Yueh-Hsuan Chiang | 28 April 2014, 04:46:30 UTC | [Java] Fixed compile error due to the removal of ReadOptions.prefix_seek, minor improvement on DbBenchmark.java. | 28 April 2014, 04:49:45 UTC |
7ca06a3 | Igor Canadi | 28 April 2014, 00:17:15 UTC | Merge pull request #130 from donovanhide/master Add rocksdb_open_for_read_only to C API | 28 April 2014, 00:17:15 UTC |
0e4e4db | Ankit Gupta | 27 April 2014, 20:05:39 UTC | Merge branch 'master' of https://github.com/facebook/rocksdb | 27 April 2014, 20:05:39 UTC |
4f9fae9 | Donovan Hide | 27 April 2014, 19:57:10 UTC | Add rocksdb_open_for_read_only to C API | 27 April 2014, 19:57:10 UTC |
fe331c8 | Igor Canadi | 26 April 2014, 21:21:39 UTC | fix valgrind | 26 April 2014, 21:23:15 UTC |
c489499 | Igor Canadi | 26 April 2014, 21:15:43 UTC | Fix OSX compile | 26 April 2014, 21:15:43 UTC |
13b5632 | Ankit Gupta | 26 April 2014, 05:41:04 UTC | Merge branch 'master' of https://github.com/facebook/rocksdb | 26 April 2014, 05:41:04 UTC |
a515d23 | Ankit Gupta | 26 April 2014, 05:40:16 UTC | Revert makefile | 26 April 2014, 05:40:16 UTC |
9e0ab42 | Ankit Gupta | 26 April 2014, 05:39:33 UTC | Fix bug + formatting | 26 April 2014, 05:39:33 UTC |
3f8b412 | Ankit Gupta | 26 April 2014, 03:59:16 UTC | Fix formatting | 26 April 2014, 03:59:16 UTC |
e96e71b | Ankit Gupta | 25 April 2014, 20:57:20 UTC | Multi-get impl and formatting | 25 April 2014, 20:57:20 UTC |
a618691 | Igor Canadi | 25 April 2014, 19:49:29 UTC | Read-only BackupEngine Summary: Read-only BackupEngine can connect to the same backup directory that is already running BackupEngine. That enables some interesting use-cases (i.e. restoring replica from primary's backup directory) Test Plan: added a unit test Reviewers: dhruba, haobo, ljin Reviewed By: ljin CC: leveldb Differential Revision: https://reviews.facebook.net/D18297 | 25 April 2014, 19:49:29 UTC |
ccaca59 | Lei Jin | 25 April 2014, 19:23:07 UTC | avoid calling FindFile twice in TwoLevelIterator for PlainTable Summary: this is to reclaim the regression introduced in https://reviews.facebook.net/D17853 Test Plan: make all check Reviewers: igor, haobo, sdong, dhruba, yhchiang Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D17985 | 25 April 2014, 19:23:07 UTC |
d642c60 | Lei Jin | 25 April 2014, 19:22:23 UTC | Check PrefixMayMatch on Seek() Summary: As a follow-up diff for https://reviews.facebook.net/D17805, add optimization to check PrefixMayMatch on Seek() Test Plan: make all check Reviewers: igor, haobo, sdong, yhchiang, dhruba Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D17853 | 25 April 2014, 19:22:23 UTC |
3995e80 | Lei Jin | 25 April 2014, 19:21:34 UTC | kill ReadOptions.prefix and .prefix_seek Summary: also add an override option total_order_iteration if you want to use full iterator with prefix_extractor Test Plan: make all check Reviewers: igor, haobo, sdong, yhchiang Reviewed By: haobo CC: leveldb, dhruba Differential Revision: https://reviews.facebook.net/D17805 | 25 April 2014, 19:21:34 UTC |
8ce5492 | Igor Canadi | 25 April 2014, 18:58:02 UTC | Delete superversion and log outside of mutex Summary: As summary. Add two autovectors that get filled up in MakeRoomForWrite and they get deleted outside of mutex Test Plan: make check Reviewers: dhruba, haobo, ljin, sdong Reviewed By: ljin CC: leveldb Differential Revision: https://reviews.facebook.net/D18249 | 25 April 2014, 18:58:02 UTC |
ad3cd39 | Igor Canadi | 25 April 2014, 13:51:16 UTC | Column family logging Summary: Now that we have column families involved, we need to add extra context to every log message. They now start with "[column family name] log message" Also added some logging that I think would be useful, like level summary after every flush (I often needed that when going through the logs). Test Plan: make check + ran db_bench to confirm I'm happy with log output Reviewers: dhruba, haobo, ljin, yhchiang, sdong Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18303 | 25 April 2014, 13:51:16 UTC |
46b3076 | Igor Canadi | 25 April 2014, 13:50:51 UTC | Better stack trace in MAC Summary: Now this gives us the real deal stack trace: Assertion failed: (false), function GetProperty, file db/db_impl.cc, line 4072. Received signal 6 (Abort trap: 6) #0 0x7fff57ce39b9 #1 abort (in libsystem_c.dylib) + 125 #2 basename (in libsystem_c.dylib) + 0 #3 rocksdb::DBImpl::GetProperty(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*) (in db_test) (db_impl.cc:4072) #4 rocksdb::_Test_Empty::_Run() (in db_test) (testharness.h:68) #5 rocksdb::_Test_Empty::_RunIt() (in db_test) (db_test.cc:1005) #6 rocksdb::test::RunAllTests() (in db_test) (testharness.cc:60) #7 main (in db_test) (db_test.cc:6697) #8 start (in libdyld.dylib) + 1 Test Plan: added artificial assert, saw great stack trace Reviewers: haobo, dhruba, ljin Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18309 | 25 April 2014, 13:50:51 UTC |
a82c492 | Yueh-Hsuan Chiang | 25 April 2014, 05:15:25 UTC | [Java] Fixed some errors in the sample and benchmark code. | 25 April 2014, 05:15:25 UTC |
e537a84 | Yueh-Hsuan Chiang | 24 April 2014, 23:17:00 UTC | [Java] Fixed a compile error caused in some Java version. | 24 April 2014, 23:17:00 UTC |
3e0b93b | Yueh-Hsuan Chiang | 24 April 2014, 22:37:27 UTC | [Java] Fixed a compile error. | 24 April 2014, 22:37:27 UTC |
0597949 | Yueh-Hsuan Chiang | 24 April 2014, 20:43:57 UTC | [Java] Enable filluniquerandom, readseq, BloomFilter, and 70+ command-line options to DbBenchmark.java Summary: * Add filluniquerandom * Add readseq, implemented using iterator. * Realize most command-line-arguments from db_bench.cc (70+). * Some code are commented out as some of the options in Options not yet have Java bindings. * Add default option to DbBenchmark. * RocksDB will now take the ownership of all c++ raw-pointers from Options, which includes a c++ raw-pointer for Filter. Test Plan: ./jdb_bench.sh --db=/tmp/rocksjava-bench/db --num_levels=6 --key_size=20 --prefix_size=20 --keys_per_prefix=0 --value_size=100 --block_size=4096 --cache_size=17179869184 --cache_numshardbits=6 --compression_ratio=1 --min_level_to_compress=-1 --disable_seek_compaction=1 --hard_rate_limit=2 --write_buffer_size=134217728 --max_write_buffer_number=2 --level0_file_num_compaction_trigger=8 --target_file_size_base=134217728 --max_bytes_for_level_base=1073741824 --disable_wal=0 --wal_dir=/tmp/rocksjava-bench/wal --sync=0 --disable_data_sync=1 --verify_checksum=1 --delete_obsolete_files_period_micros=314572800 --max_grandparent_overlap_factor=10 --max_background_compactions=4 --max_background_flushes=0 --level0_slowdown_writes_trigger=16 --level0_stop_writes_trigger=24 --statistics=0 --stats_per_interval=0 --stats_interval=1048576 --histogram=0 --use_plain_table=1 --open_files=-1 --mmap_read=1 --mmap_write=0 --memtablerep=prefix_hash --bloom_bits=10 --bloom_locality=1 --perf_level=0 --benchmarks=filluniquerandom,readseq,readrandom --use_existing_db=0 --threads=4 Reviewers: haobo, dhruba, sdong, ankgup87, rsumbaly, swapnilghike, zzbennett Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18267 | 24 April 2014, 20:43:57 UTC |
4cd9f58 | Igor Canadi | 24 April 2014, 18:56:37 UTC | Fix corruption test | 24 April 2014, 18:56:41 UTC |
478990c | Igor Canadi | 24 April 2014, 18:13:28 UTC | Make CompactionInputErrorParanoid less flakey Summary: I'm getting lots of e-mails with CompactionInputErrorParanoid failing. Most recent example early morning today was: http://ci-builds.fb.com/job/rocksdb_valgrind/562/consoleFull I'm putting a stop to these e-mails. I investigated why the test is flakey and it turns out it's because of non-determinsim of compaction scheduling. If there is a compaction after the last flush, CorruptFile will corrupt the compacted file instead of file at level 0 (as it assumes). That makes `Check(9, 9)` fail big time. I also saw some errors with table file getting outputed to >= 1 levels instead of 0. Also fixed that. Test Plan: Ran corruption_test 100 times without a failure. Previously it usually failed at 10th occurrence. Reviewers: dhruba, haobo, ljin Reviewed By: ljin CC: leveldb Differential Revision: https://reviews.facebook.net/D18285 | 24 April 2014, 18:13:28 UTC |
fc3127e | Igor Canadi | 24 April 2014, 17:52:20 UTC | Install stack trace handlers in unit tests Summary: Sometimes, our tests fail because of normal `assert` call. It would be helpful to see stack trace in that case, too. Test Plan: Added `assert(false)` and verified it prints out stack trace Reviewers: haobo, dhruba, sdong, ljin, yhchiang Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18291 | 24 April 2014, 17:52:20 UTC |
a40970a | Igor Canadi | 24 April 2014, 16:28:11 UTC | Run whitebox test before black box | 24 April 2014, 16:28:16 UTC |
472a80a | Igor Canadi | 24 April 2014, 13:46:50 UTC | Initialize verification_failed in db_stress | 24 April 2014, 13:53:11 UTC |
2413a06 | Igor Canadi | 24 April 2014, 13:22:58 UTC | Improve stability of db_stress Summary: Currently, whenever DB Verification fails we bail out by calling `exit(1)`. This is kind of bad since it causes unclean shutdown and spew of error log messages like: 05:03:27 pthread lock: Invalid argument 05:03:27 pthread lock: Invalid argument 05:03:27 pthread lock: Invalid argument 05:03:27 pthread lock: Invalid argument 05:03:27 pthread lock: Invalid argument 05:03:27 pthread lock: Invalid argument 05:03:27 pthread lock: Invalid argument 05:03:27 pthread lock: Invalid argument 05:03:27 pthread lock: Invalid argument This diff adds a new parameter that is set to true when verification fails. It can then use the parameter to bail out safely. Test Plan: Casued artificail failure. Verified that exit was clean. Reviewers: dhruba, haobo, ljin Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18243 | 24 April 2014, 13:22:58 UTC |
d8fe006 | Yueh-Hsuan Chiang | 24 April 2014, 03:54:35 UTC | [Java] Add Java bindings and Java tests for 30+ rocksdb::Options. Summary: Add Java bindings and Java tests for 30+ rocksdb::Options. Codes are machine-genearted based on include/rocksdb/options.h with manual-polishment. Test Plan: make rocksdbjava make jtest Reviewers: haobo, dhruba, sdong, ankgup87, rsumbaly, swapnilghike, zzbennett Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18273 | 24 April 2014, 03:54:35 UTC |
4de5b84 | sdong | 24 April 2014, 00:51:16 UTC | Fix a bug in IterKey Summary: IterKey set buffer_size_ to a wrong initial value, causing it to always allocate values from heap instead of stack if the key size is smaller. Fix it. Test Plan: make all check Reviewers: haobo, ljin Reviewed By: haobo CC: igor, dhruba, yhchiang, leveldb Differential Revision: https://reviews.facebook.net/D18279 | 24 April 2014, 02:45:22 UTC |
f9f8965 | Igor Canadi | 23 April 2014, 13:11:35 UTC | Print out stack trace in mac, too Summary: While debugging Mac-only issue with ThreadLocalPtr, this was very useful. Let's print out stack trace in MAC OS, too. Test Plan: Verified that somewhat useful stack trace was generated on mac. Will run PrintStack() on linux, too. Reviewers: ljin, haobo Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18189 | 23 April 2014, 13:11:35 UTC |
a570740 | sdong | 23 April 2014, 00:17:33 UTC | Expose number of entries in mem tables to users Summary: In this patch, two new DB properties are defined: rocksdb.num-immutable-mem-table and rocksdb.num-entries-imm-mem-tables, from where number of entries in mem tables can be exposed to users Test Plan: Cover the codes in db_test make all check Reviewers: haobo, ljin, igor Reviewed By: igor CC: nkg-, igor, yhchiang, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D18207 | 23 April 2014, 05:13:21 UTC |
5f1daf7 | Lei Jin | 23 April 2014, 04:14:25 UTC | get rid of shared_ptr in memtable.cc Summary: Get rid of the devil. Probably won't impact anything on the perf side. Test Plan: make all check Reviewers: igor, haobo, sdong, yhchiang Reviewed By: haobo CC: leveldb, dhruba Differential Revision: https://reviews.facebook.net/D18153 | 23 April 2014, 04:14:25 UTC |
547bb6a | Lei Jin | 23 April 2014, 04:13:34 UTC | simplify ThreadLocalPtr a little bit Summary: make singleton a static member instead of dynamic object. This should also avoid the race on unique_ptr Test Plan: make all check Reviewers: igor, haobo, sdong Reviewed By: igor CC: leveldb Differential Revision: https://reviews.facebook.net/D18177 | 23 April 2014, 04:13:34 UTC |
86a0133 | sdong | 23 April 2014, 01:31:55 UTC | PlainTableReader to expose index size to users Summary: This is a temp solution to expose index sizes to users from PlainTableReader before we persistent them to files. In this patch, the memory consumption of indexes used by PlainTableReader will be reported as two user defined properties, so that users can monitor them. Test Plan: Add a unit test. make all check` Reviewers: haobo, ljin Reviewed By: haobo CC: nkg-, yhchiang, igor, ljin, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D18195 | 23 April 2014, 02:29:05 UTC |
1068d2f | Igor Canadi | 23 April 2014, 01:38:10 UTC | Revert "Better port::Mutex::AssertHeld() and AssertNotHeld()" This reverts commit ddafceb6c2ecb83b7bdf6711ea1c30d97aeb3b8f. | 23 April 2014, 01:38:10 UTC |
ddafceb | Igor Canadi | 23 April 2014, 00:26:21 UTC | Better port::Mutex::AssertHeld() and AssertNotHeld() Summary: Using ThreadLocalPtr as a flag to determine if a mutex is locked or not enables us to implement AssertNotHeld(). It also makes AssertHeld() actually correct. I had to remove port::Mutex as a dependency for util/thread_local.h, but that's fine since we can just use std::mutex :) Test Plan: make check Reviewers: ljin, dhruba, haobo, sdong, yhchiang Reviewed By: ljin CC: leveldb Differential Revision: https://reviews.facebook.net/D18171 | 23 April 2014, 00:26:21 UTC |
2912340 | Yueh-Hsuan Chiang | 22 April 2014, 20:46:42 UTC | Merge pull request #125 from ankgup87/master [Java] Add bloom filter JNI bindings | 22 April 2014, 20:46:42 UTC |
042221b | Ankit Gupta | 22 April 2014, 20:05:40 UTC | Merge branch 'master' of https://github.com/facebook/rocksdb | 22 April 2014, 20:05:40 UTC |
3992aec | Igor Canadi | 22 April 2014, 18:27:33 UTC | Support for column families in TTL DB Summary: This will enable people using TTL DB to do so with multiple column families. They can also specify different TTLs for each one. TODO: Implement CreateColumnFamily() in TTL world. Test Plan: Added a very simple sanity test. Reviewers: dhruba, haobo, ljin, sdong, yhchiang Reviewed By: haobo CC: leveldb, alberts Differential Revision: https://reviews.facebook.net/D17859 | 22 April 2014, 18:27:33 UTC |
dd9f6f0 | Ankit Gupta | 22 April 2014, 17:51:39 UTC | Fix formatting | 22 April 2014, 17:51:39 UTC |
e557297 | James Pearce | 22 April 2014, 16:12:19 UTC | New CLA form | 22 April 2014, 16:12:19 UTC |
7a5106f | Ankit Gupta | 22 April 2014, 16:01:57 UTC | Add doc | 22 April 2014, 16:01:57 UTC |
2214fd8 | Ankit Gupta | 22 April 2014, 15:58:43 UTC | Refactor filter impl | 22 April 2014, 15:58:43 UTC |
89cb481 | Ankit Gupta | 22 April 2014, 07:09:40 UTC | Fix doc | 22 April 2014, 07:09:40 UTC |
677b0d6 | Ankit Gupta | 22 April 2014, 07:04:56 UTC | Refactor filter impl | 22 April 2014, 07:04:56 UTC |
5e797cf | Ankit Gupta | 22 April 2014, 06:56:19 UTC | Change filter implementation | 22 April 2014, 06:56:19 UTC |
cea2be2 | Ankit Gupta | 22 April 2014, 03:27:09 UTC | Fix formatting | 22 April 2014, 03:27:09 UTC |
dc4b27a | Ankit Gupta | 22 April 2014, 03:25:30 UTC | Add bloom filters | 22 April 2014, 03:25:30 UTC |
af6ad11 | Yueh-Hsuan Chiang | 22 April 2014, 00:49:47 UTC | Fix SIGFAULT when running sst_dump on v2.6 db Summary: Fix the sigfault when running sst_dump on v2.6 db. Test Plan: git checkout bba6595b1f3f42cf79bb21c2d5b981ede1cc0063 make clean make db_bench ./db_bench --db=/tmp/some/db --benchmarks=fillseq arc patch D18039 make clean make sst_dump ./sst_dump --file=/tmp/some/db --command=check Reviewers: igor, haobo, sdong Reviewed By: sdong CC: leveldb Differential Revision: https://reviews.facebook.net/D18039 | 22 April 2014, 00:49:47 UTC |