- 07 10月, 2015 5 次提交
-
-
由 Siying Dong 提交于
FIx up build options
-
由 Igor Canadi 提交于
Mmap reads should not return error if reading past file
-
由 Dmitri Smirnov 提交于
Summary: This mirrors https://reviews.facebook.net/D45645 Currently, mmap returns IOError when user tries to read data past the end of the file. This diff changes the behavior. Now, we return just the bytes that we can, and report the size we returned via a Slice result. This is consistent with non-mmap behavior and also pread() system call.
-
由 Dmitri Smirnov 提交于
-
由 krad 提交于
Summary: Sandcastle does not raise a task if assignee is specified. Removing the assignee will force the system to use the oncall. Test Plan: Manual Reviewers: CC: leveldb@ Task ID: #6968635 Blame Rev:
-
- 06 10月, 2015 4 次提交
-
-
由 Islam AbdelRahman 提交于
Summary: Refactor dump_tool and undump_tool so that it's possible to use them with customized options for example setting a specific comparator similar to what Dragon is doing with the LdbTool https://phabricator.fb.com/diffusion/FBCODE/browse/master/dragon/tools/Ldb.cpp Test Plan: compiles used it to dump / undump a dragon shard Reviewers: sdong, yhchiang, igor Reviewed By: igor Subscribers: dhruba, adsharma Differential Revision: https://reviews.facebook.net/D47853
-
由 Igor Canadi 提交于
Summary: The function GetBoundaryKeys() returns the smallest key from the first file and largest key from the last file. This is good for any level >0, but it's not correct for level 0. In level 0, files can overlap, so we need to check all files for boundary keys. This bug can cause wrong value for bottommost_level in compaction (value of true, although correct is false), which means we can set sequence numbers to 0 even if the key is not the oldest one in the database. Herman reported corruption while testing MyRocks. Fortunately, the patch that added the bug was not released yet. Test Plan: added a new test to compaction_picker_test. Reviewers: hermanlee4, sdong Reviewed By: sdong Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D48201
-
由 Igor Canadi 提交于
Summary: Latest travis failed because of corruption test TableFileIndexData: https://travis-ci.org/facebook/rocksdb/jobs/83732558 This diff makes the test more explicit: 1. create two files 2. corrupt the second's file index 3. expect to get only 5000 keys when range scanning Test Plan: the test is still passing :) Reviewers: sdong, rven, yhchiang, kradhakrishnan, IslamAbdelRahman, anthony Reviewed By: anthony Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D48183
-
由 Igor Canadi 提交于
Summary: Fixes the valgrind warning "Conditional jump or move depends on uninitialised value(s)" Test Plan: valgrind test, no more warning Reviewers: sdong Reviewed By: sdong Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D48177
-
- 03 10月, 2015 5 次提交
-
-
由 Yueh-Hsuan Chiang 提交于
Summary: RocksDBOptionsParser now supports CompressionType and the following pointer-typed options in RocksDBOptionParser for sanity check: prefix_extractor table_factory comparator compaction_filter compaction_filter_factory merge_operator memtable_factory In the RocksDB Options file, only high level information about pointer-typed options are serialized, and those information is only used for verification / sanity check purpose. Test Plan: added more tests in options_test Reviewers: igor, IslamAbdelRahman, sdong, anthony Reviewed By: sdong Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47925
-
由 Igor Canadi 提交于
Summary: To support a new MongoDB capability, we need to make sure that we don't do any IO for a short period of time. For background, see: * https://jira.mongodb.org/browse/SERVER-20704 * https://jira.mongodb.org/browse/SERVER-18899 To implement that, I add a new API calls PauseBackgroundWork() and ContinueBackgroundWork() which reuse the capability we already have in place for RefitLevel() function. Test Plan: Added a new test in db_test. Made sure that test fails when PauseBackgroundWork() is commented out. Reviewers: IslamAbdelRahman, sdong Reviewed By: sdong Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47901
-
由 krad 提交于
Summary: Added following capability (1) Ability to do configurable reports using args (2) Support to generating a task on failure (3) Ability to configure email trigger condition Test Plan: Manual testing Reviewers: CC:leveldb@ Task ID: #6968635 Blame Rev:
-
由 Igor Canadi 提交于
Improve test running scripts
-
由 Dmitri Smirnov 提交于
Introduce proper command line arguments so we can control the script Add appveyor support Add an ability to run all other (non db_tests) test executables in parallel Use .NET HashSet instead of empty valued hashtable to improve the looks TODO: Some of the tests do not use GTests and need to improve log parsing
-
- 01 10月, 2015 6 次提交
-
-
由 Igor Canadi 提交于
New amalgamation target
-
由 Evan Shaw 提交于
This commit adds two new targets to the Makefile: rocksdb.cc and rocksdb.h These files, when combined with the c.h header, are a self-contained RocksDB source distribution called an amalgamation. (The name comes from SQLite's, which is similar in concept.) The main benefit of an amalgamation is that it's very easy to drop into a new project. It also compiles faster compared to compiling individual source files and potentially gives the compiler more opportunity to make optimizations since it can see all functions at once. rocksdb.cc and rocksdb.h are generated by a new script, amalgamate.py. A detailed description of how amalgamate.py works is in a comment at the top of the file. There are also some small changes to existing files to enable the amalgamation: * Use quotes for includes in unity build * Fix an old header inclusion in util/xfunc.cc * Move some includes outside ifdef in util/env_hdfs.cc * Separate out tool sources in Makefile so they won't be included in unity.cc * Unity build now produces a static library Closes #733
-
由 Igor Canadi 提交于
Improve CI build and fix Windows build breakage
-
由 Dmitri Smirnov 提交于
Is there a way to enforce CMake additions for internal changes that seem to come w/o a PR?
-
由 agiardullo 提交于
Summary: WriteBatchWithIndex::GetFromBatchAndDB only works correctly for overwrite_key=false. Transactions use overwrite_key=true (since WriteBatchWithIndex::GetIteratorWithBase only works when overwrite_key=true). So currently, Transactions could return incorrectly merged results when calling Get/GetForUpdate(). Until a permanent fix can be put in place, Transaction::Get[ForUpdate] and WriteBatchWithIndex::GetFromBatch[AndDB] will now return MergeInProgress if the most recent write to a key in the batch is a Merge. Test Plan: more tests Reviewers: sdong, yhchiang, rven, igor Reviewed By: igor Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47817
-
由 Islam AbdelRahman 提交于
Summary: Add an option to db_bench for max_file_opening_threads Test Plan: compile and run db_bench Reviewers: sdong, yhchiang, igor Reviewed By: igor Subscribers: dhruba, paultuckfield Differential Revision: https://reviews.facebook.net/D47811
-
- 30 9月, 2015 8 次提交
-
-
由 Yueh-Hsuan Chiang 提交于
Summary: Add a missing check for deprecated options in options_helper.cc Test Plan: options_test Reviewers: sdong, anthony, IslamAbdelRahman, igor Reviewed By: igor Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47793
-
由 agiardullo 提交于
Summary: Should have used auto& instead of auto. Also needed to change the code a bit due to const correctness. Test Plan: unit tests Reviewers: sdong, igor, yoshinorim, yhchiang Reviewed By: yhchiang Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47787
-
由 Yueh-Hsuan Chiang 提交于
Summary: Previously, we treat deprecated options as normal options in RocksDBOptionsParser. However, these deprecated options should not be verified and serialized. Test Plan: options_test Reviewers: igor, sdong, IslamAbdelRahman, anthony Reviewed By: anthony Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47775
-
由 Yueh-Hsuan Chiang 提交于
Summary: Fixed the following compile warning in options_test.cc under clang util/options_test.cc:94:12: error: 'Skip' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override] Status Skip(uint64_t n) { ^ ./include/rocksdb/env.h:368:18: note: overridden virtual function is here virtual Status Skip(uint64_t n) = 0; ^ Test Plan: options_test Reviewers: igor, sdong, anthony, IslamAbdelRahman Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47763
-
由 Yueh-Hsuan Chiang 提交于
Summary: This patch defines the format of RocksDB options file, which follows the INI file format, and implements functions for its serialization and deserialization. An example RocksDB options file can be found in examples/rocksdb_option_file_example.ini. A typical RocksDB options file has three sections, which are Version, DBOptions, and more than one CFOptions. The RocksDB options file in general follows the basic INI file format with the following extensions / modifications: * Escaped characters We escaped the following characters: - \n -- line feed - new line - \r -- carriage return - \\ -- backslash \ - \: -- colon symbol : - \# -- hash tag # * Comments We support # style comments. Comments can appear at the ending part of a line. * Statements A statement is of the form option_name = value. Each statement contains a '=', where extra white-spaces are supported. However, we don't support multi-lined statement. Furthermore, each line can only contain at most one statement. * Section Sections are of the form [SecitonTitle "SectionArgument"], where section argument is optional. * List We use colon-separated string to represent a list. For instance, n1:n2:n3:n4 is a list containing four values. Below is an example of a RocksDB options file: [Version] rocksdb_version=4.0.0 options_file_version=1.0 [DBOptions] max_open_files=12345 max_background_flushes=301 [CFOptions "default"] [CFOptions "the second column family"] [CFOptions "the third column family"] Test Plan: Added many tests in options_test.cc Reviewers: igor, IslamAbdelRahman, sdong, anthony Reviewed By: anthony Subscribers: maykov, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D46059
-
由 Igor Canadi 提交于
Improve CI build and build switches
-
由 Dmitri Smirnov 提交于
Add an optimized build config switch for faster test runs Change compiler options to introduce more opitmizations and be more inline with MS internal switches. Make appveyor build to utilize all the avaiable cores on the VM (parallel) Introduce new appveyor configuration for daily test runs as it would take too long to run db_test after each checkin even in paralell. With some exclusions we make it in 38 minutes. We currently fail to install ramdisk during the build. Add a powershell script to faicilitate paralell run for db_test cases.
-
由 Igor Canadi 提交于
Summary: See https://github.com/facebook/rocksdb/issues/680 Test Plan: compiles Reviewers: sdong, yhchiang, anthony Reviewed By: anthony Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47721
-
- 29 9月, 2015 6 次提交
-
-
由 Islam AbdelRahman 提交于
Summary: DeleteSchedulerTests is running the same test with different rates, After the first iteraton sync points become useless because ClearTrace was not being called Test Plan: Run the test Reviewers: sdong, yhchiang, igor Reviewed By: igor Subscribers: dhruba Differential Revision: https://reviews.facebook.net/D47709
-
由 Yueh-Hsuan Chiang 提交于
Summary: CompactionJobStatsTest.UniversalCompactionTest assumes compaction kicks in when the number of L0 files equals to the compaction trigger. However, in some case, the compaction might not catch up the write speed and thus compaction might not kick in until the number of L0 files is GREATER than the compaction trigger. This patch tries to fix this corner case by making the Put thread wait for a potential compaction whenever it flushes. Test Plan: ./compaction_job_stats_test Reviewers: sdong, anthony, IslamAbdelRahman, igor Subscribers: dhruba Differential Revision: https://reviews.facebook.net/D47589
-
由 agiardullo 提交于
Summary: Transactional SingleDelete is needed for MyRocks. Note: This diff requires D47529. Test Plan: Added some new tests in this diff as well as more tests added in D47529 Reviewers: rven, sdong, igor, yhchiang Reviewed By: yhchiang Subscribers: yoshinorim, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47535
-
由 Yueh-Hsuan Chiang 提交于
Summary: Fixed the following tsan warning in db_stress.cc WARNING: ThreadSanitizer: data race (pid=3163194) Read of size 8 at 0x7fd1797cb518 by thread T32: #0 VerifyDb tools/db_stress.cc:1731 (db_stress+0x000000040674) #1 rocksdb::StressTest::ThreadBody(void*) tools/db_stress.cc:1191 (db_stress+0x0000000625a9) #2 StartThreadWrapper util/env_posix.cc:1648 (db_stress+0x00000028bbbd) Previous write of size 8 at 0x7fd1797cb518 by thread T31: #0 VerifyDb tools/db_stress.cc:1726 (db_stress+0x00000004072a) #1 rocksdb::StressTest::ThreadBody(void*) tools/db_stress.cc:1191 (db_stress+0x0000000625a9) #2 StartThreadWrapper util/env_posix.cc:1648 (db_stress+0x00000028bbbd) The cause is that in VerifyDb(), the static local const variable long max_key can be read and written at the same time. This patch fixed it by making it non-static. Test Plan: db_stress Reviewers: igor, sdong, IslamAbdelRahman, anthony Reviewed By: anthony Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47703
-
由 Yueh-Hsuan Chiang 提交于
Summary: Fixed the compile error in util/arena.h caused by not including TLB related header. Test Plan: make db_stress Reviewers: igor, sdong, anthony, IslamAbdelRahman Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47697
-
由 Yueh-Hsuan Chiang 提交于
Summary: Fixed the following compile warning when hugetlb is not supported. ./util/arena.h:102:10: error: private field 'hugetlb_size_' is not used [-Werror,-Wunused-private-field] size_t hugetlb_size_ = 0; ^ 1 error generated. Test Plan: make db_stress Reviewers: igor, sdong, anthony, IslamAbdelRahman Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47691
-
- 27 9月, 2015 1 次提交
-
-
由 Igor Canadi 提交于
Override DBImplReadOnly::SyncWAL() to return NotSupported.
-
- 26 9月, 2015 5 次提交
-
-
由 Mike Lin 提交于
Override DBImplReadOnly::SyncWAL() to return NotSupported. Previously, calling it caused program abort.
-
由 krad 提交于
Summary: Added email notification for a few jobs and fixed a bug in no_compression script Test Plan: Manual test Reviewers: CC: leveldb@ Task ID: #6968635 Blame Rev:
-
由 Igor Canadi 提交于
Summary: AllocateFromHugePage() can return nullptr, and then we need to try to allocate the block with AllocateNewBlock() Test Plan: arena_test Reviewers: sdong Reviewed By: sdong Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47607
-
由 Yueh-Hsuan Chiang 提交于
Summary: Fixed a bug which causes rocksdb.flush.write.bytes stat is always zero Test Plan: augment existing db_test Reviewers: sdong, anthony, IslamAbdelRahman, igor Reviewed By: igor Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47595
-
由 Igor Canadi 提交于
Summary: clang is a bit confused, see here: https://travis-ci.org/facebook/rocksdb/jobs/82214750 Test Plan: travis CI Reviewers: sdong Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D47601
-