1. 19 1月, 2016 2 次提交
    • B
      Simple changes to support builds for ppc64[le] consistent with X86 · f423f05d
      bcbrock 提交于
      These simple changes are required to allow builds on ppc64[le] systems
      consistent with X86. The Makefile now recognizes both ppc64 and ppc64le, and
      in the absence of PORTABLE=1, the code will be built analogously to the X86
      -march=native.
      
      Note that although GCC supports -mcpu=native -mtune=native on POWER, it
      doesn't work correctly on all systems. This is why we need to get the actual
      machine model from the AUX vector.
      f423f05d
    • D
      Changes for build on solaris · d78c6b28
      David Bernard 提交于
      Makefile adjust paths for solaris build
      Makefile enable _GLIBCXX_USE_C99 so that std::to_string is available
      db_compaction_test.cc Initialise a variable to avoid a compilation error
      db_impl.cc Include <alloca.h>
      db_test.cc Include <alloca.h>
      Environment.java recognise solaris envrionment
      options_bulder.cc Make log unambiguous
      geodb_impl.cc Make log and floor unambiguous
      d78c6b28
  2. 31 12月, 2015 2 次提交
    • I
      Fix clang build · bae5b0a1
      Islam AbdelRahman 提交于
      Summary:
      GTEST dont compile under clang when -Werror=missing-field-initializers is set
      revert this change
      
      Test Plan:
      USE_CLANG=1 make check
      make check
      
      Reviewers: rven
      
      Reviewed By: rven
      
      Subscribers: dhruba
      
      Differential Revision: https://reviews.facebook.net/D52455
      bae5b0a1
    • N
      use -Werror=missing-field-initializers, to closer match MyRocks build · ac16663b
      Nathan Bronson 提交于
      Summary:
      myrocks seems to build rocksdb using
      -Wmissing-field-initializers (and treats warnings as errors).  This diff
      adds that flag to the rocksdb build, and fixes the compilation failures
      that result.  I have not checked for any other differences in the build
      flags for rocksdb build as part of myrocks.
      
      Test Plan: make check
      
      Reviewers: sdong, rven
      
      Reviewed By: rven
      
      Subscribers: dhruba
      
      Differential Revision: https://reviews.facebook.net/D52443
      ac16663b
  3. 15 12月, 2015 1 次提交
  4. 11 12月, 2015 1 次提交
    • S
      env: add EnvMirror · 2074ddd6
      Sage Weil 提交于
      This is an Env implementation that mirrors all storage-related methods on
      two different backend Env's and verifies that they return the same
      results (return status and read results).  This is useful for implementing
      a new Env and verifying its correctness.
      Signed-off-by: NSage Weil <sage@redhat.com>
      2074ddd6
  5. 09 12月, 2015 1 次提交
  6. 25 11月, 2015 1 次提交
    • N
      InlineSkipList - part 1/3 · 78812ec6
      Nathan Bronson 提交于
      Summary:
      This diff is 1/3 in a sequence that introduces a skip list optimized for
      a key that is a freshly-allocated const char*.  The diff is broken into
      pieces to make it easier to review.  This piece only introduces the new
      type by copying the existing SkipList, with mechanical naming changes
      and reformatting.
      
      Test Plan: new unit test
      
      Reviewers: igor, sdong
      
      Reviewed By: sdong
      
      Subscribers: dhruba
      
      Differential Revision: https://reviews.facebook.net/D51279
      78812ec6
  7. 19 11月, 2015 1 次提交
    • S
      Not to build forward_iterator_bench now · c4ebb66d
      sdong 提交于
      Summary: forward_iterator_bench is not stable enough for build. Remove it for now.
      
      Test Plan: Build it with both of CLANG and non-CLANG and make sure it builds.
      
      Reviewers: rven, kradhakrishnan, anthony, yhchiang, igor, IslamAbdelRahman
      
      Reviewed By: igor, IslamAbdelRahman
      
      Subscribers: leveldb, dhruba
      
      Differential Revision: https://reviews.facebook.net/D50991
      c4ebb66d
  8. 18 11月, 2015 1 次提交
    • Y
      Fix Java Makefile · 4189c0f9
      Yueh-Hsuan Chiang 提交于
      Summary:
      In case rocksdb java package is built using make rocksdbjavastaticrelease, then
      only those rocksdb binary built under the virtual environments is release build.
      
      This patch fix this issue.
      
      Test Plan:
      PORTABLE=1 V=2 make rocksdbjavastaticrelease -j32
      and make sure -O2 and -NDEBUG is included when compiling all source files.
      
      Reviewers: sdong, anthony, IslamAbdelRahman, rven, kradhakrishnan, igor
      
      Reviewed By: igor
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D50895
      4189c0f9
  9. 14 11月, 2015 1 次提交
    • V
      Reuse file iterators in tailing iterator when memtable is flushed · 7824444b
      Venkatesh Radhakrishnan 提交于
      Summary:
      Under a tailing workload, there were increased block cache
      misses when a memtable was flushed because we were rebuilding iterators
      in that case since the version set changed. This was exacerbated in the
      case of iterate_upper_bound, since file iterators which were over the
      iterate_upper_bound would have been deleted and are now brought back as
      part of the Rebuild, only to be deleted again. We now renew the iterators
      and only build iterators for files which are added and delete file
      iterators for files which are deleted.
      Refer to https://reviews.facebook.net/D50463 for previous version
      
      Test Plan: DBTestTailingIterator.TailingIteratorTrimSeekToNext
      
      Reviewers: anthony, IslamAbdelRahman, igor, tnovak, yhchiang, sdong
      
      Reviewed By: sdong
      
      Subscribers: yhchiang, march, dhruba, leveldb, lovro
      
      Differential Revision: https://reviews.facebook.net/D50679
      7824444b
  10. 12 11月, 2015 1 次提交
    • Y
      Add OptionsUtil::LoadOptionsFromFile() API · e11f676e
      Yueh-Hsuan Chiang 提交于
      Summary:
      This patch adds OptionsUtil::LoadOptionsFromFile() and
      OptionsUtil::LoadLatestOptionsFromDB(), which allow developers
      to construct DBOptions and ColumnFamilyOptions from a RocksDB
      options file.  Note that most pointer-typed options such as
      merge_operator will not be constructed.
      
      With this API, developers no longer need to remember all the
      options in order to reopen an existing rocksdb instance like
      the following:
      
        DBOptions db_options;
        std::vector<std::string> cf_names;
        std::vector<ColumnFamilyOptions> cf_opts;
      
        // Load primitive-typed options from an existing DB
        OptionsUtil::LoadLatestOptionsFromDB(
            dbname, &db_options, &cf_names, &cf_opts);
      
        // Initialize necessary pointer-typed options
        cf_opts[0].merge_operator.reset(new MyMergeOperator());
        ...
      
        // Construct the vector of ColumnFamilyDescriptor
        std::vector<ColumnFamilyDescriptor> cf_descs;
        for (size_t i = 0; i < cf_opts.size(); ++i) {
          cf_descs.emplace_back(cf_names[i], cf_opts[i]);
        }
      
        // Open the DB
        DB* db = nullptr;
        std::vector<ColumnFamilyHandle*> cf_handles;
        auto s = DB::Open(db_options, dbname, cf_descs,
                          &handles, &db);
      
      Test Plan:
      Augment existing tests in column_family_test
      options_test
      db_test
      
      Reviewers: igor, IslamAbdelRahman, sdong, anthony
      
      Reviewed By: anthony
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D49095
      e11f676e
  11. 11 11月, 2015 1 次提交
    • Y
      Enable RocksDB to persist Options file. · e114f0ab
      Yueh-Hsuan Chiang 提交于
      Summary:
      This patch allows rocksdb to persist options into a file on
      DB::Open, SetOptions, and Create / Drop ColumnFamily.
      Options files are created under the same directory as the rocksdb
      instance.
      
      In addition, this patch also adds a fail_if_missing_options_file in DBOptions
      that makes any function call return non-ok status when it is not able to
      persist options properly.
      
        // If true, then DB::Open / CreateColumnFamily / DropColumnFamily
        // / SetOptions will fail if options file is not detected or properly
        // persisted.
        //
        // DEFAULT: false
        bool fail_if_missing_options_file;
      
      Options file names are formatted as OPTIONS-<number>, and RocksDB
      will always keep the latest two options files.
      
      Test Plan:
      Add options_file_test.
      
      options_test
      column_family_test
      
      Reviewers: igor, IslamAbdelRahman, sdong, anthony
      
      Reviewed By: anthony
      
      Subscribers: dhruba
      
      Differential Revision: https://reviews.facebook.net/D48285
      e114f0ab
  12. 10 11月, 2015 1 次提交
    • N
      Revert "Fix TSAN build for fbcode" · 986230b8
      Nathan Bronson 提交于
      Summary:
      Reverting c745f1d2 because it
      was based on an incorrect understanding of the correct way to enable
      TSAN tests (it assumes "make COMPILE_WITH_TSAN=1 check" but in fact only
      "COMPILE_WITH_TSAN=1 make check" is supported).
      
      Test Plan: COMPILE_WITH_TSAN=1 make check
      
      Reviewers: kradhakrishnan
      
      Reviewed By: kradhakrishnan
      
      Subscribers: dhruba
      
      Differential Revision: https://reviews.facebook.net/D50445
      986230b8
  13. 07 11月, 2015 1 次提交
    • N
      Fix TSAN build for fbcode · c745f1d2
      Nathan Bronson 提交于
      Summary:
      TSAN builds for gcc 4.9 need a PIC version of the libraries
      taken from the fbcode platform.  This is accomplished by assuming every
      .a has a _pic.a sibling, and by fixing the third-party2 zlib build.
      
      Test Plan: make COMPILE_WITH_TSAN=1 check
      
      Reviewers: sdong, igor
      
      Reviewed By: igor
      
      Subscribers: dhruba
      
      Differential Revision: https://reviews.facebook.net/D50331
      c745f1d2
  14. 04 11月, 2015 1 次提交
    • Y
      Add Memory Insight support to utilities · 7d7ee2b6
      Yueh-Hsuan Chiang 提交于
      Summary:
      This patch introduces utilities/memory, which currently includes
      GetApproximateMemoryUsageByType that reports different types of
      rocksdb memory usage given a list of input DBs.
      
      The API also take care of the case where Cache could be shared
      across multiple column families / multiple db instances.
      
      Currently, it reports memory usage of memtable, table-readers
      and cache.
      
      Test Plan: utilities/memory/memory_test.cc
      
      Reviewers: igor, anthony, IslamAbdelRahman, sdong
      
      Reviewed By: sdong
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D49257
      7d7ee2b6
  15. 29 10月, 2015 1 次提交
    • I
      Write stress test · 4b66d953
      Igor Canadi 提交于
      Summary:
      The goal of this diff is to create a simple stress test with focus on catching:
      * bugs in compaction/flush processes, especially the ones that cause assertion errors
      * bugs in the code that deletes obsolete files
      
      There are two parts of the test:
      * write_stress, a binary that writes to the database
      * write_stress_runner.py, a script that invokes and kills write_stress
      
      Here are some interesting parts of write_stress:
      * Runs with very high concurrency of compactions and flushes (32 threads total) and tries to create a huge amount of small files
      * The keys written to the database are not uniformly distributed -- there is a 3-character prefix that mutates occasionally (in prefix mutator thread), in such a way that the first character mutates slower than second, which mutates slower than third character. That way, the compaction stress tests some interesting compaction features like trivial moves and bottommost level calculation
      * There is a thread that creates an iterator, holds it for couple of seconds and then iterates over all keys. This is supposed to test RocksDB's abilities to keep the files alive when there are references to them.
      * Some writes trigger WAL sync. This is stress testing our WAL sync code.
      * At the end of the run, we make sure that we didn't leak any of the sst files
      
      write_stress_runner.py changes the mode in which we run write_stress and also kills and restarts it. There are some interesting characteristics:
      * At the beginning we divide the full test runtime into smaller parts -- shorter runtimes (couple of seconds) and longer runtimes (100, 1000) seconds
      * The first time we run write_stress, we destroy the old DB. Every next time during the test, we use the same DB.
      * We can run in kill mode or clean-restart mode. Kill mode kills the write_stress violently.
      * We can run in mode where delete_obsolete_files_with_fullscan is true or false
      * We can run with low_open_files mode turned on or off. When it's turned on, we configure table cache to only hold a couple of files -- that way we need to reopen files every time we access them.
      
      Another goal was to create a stress test without a lot of parameters. So tools/write_stress_runner.py should only take one parameter -- runtime_sec and it should figure out everything else on its own.
      
      In a separate diff, I'll add this new test to our nightly legocastle runs.
      
      Test Plan:
      The goal of this test was to retroactively catch the following bugs: D33045, D48201, D46899, D42399. I failed to reproduce D48201, but all others have been caught!
      
      When i reverted https://reviews.facebook.net/D33045:
      
           ./write_stress --runtime_sec=200 --low_open_files_mode=true
           Iterator statuts not OK: IO error: /fast-rocksdb-tmp/rocksdb_test/write_stress/089166.sst: No such file or directory
      
      When i reverted https://reviews.facebook.net/D42399:
      
          python tools/write_stress_runner.py --runtime_sec=5000
          Running write_stress, will kill after 5 seconds: ./write_stress --runtime_sec=-1
          Running write_stress, will kill after 2 seconds: ./write_stress --runtime_sec=-1 --destroy_db=false --delete_obsolete_files_with_fullscan=true
          Running write_stress, will kill after 7 seconds: ./write_stress --runtime_sec=-1 --destroy_db=false
          Running write_stress, will kill after 5 seconds: ./write_stress --runtime_sec=-1 --destroy_db=false
          Running write_stress, will kill after 8 seconds: ./write_stress --runtime_sec=-1 --destroy_db=false --low_open_files_mode=true
          Write to DB failed: IO error: /fast-rocksdb-tmp/rocksdb_test/write_stress/019250.sst: No such file or directory
          ERROR: write_stress died with exitcode=-6
      
      When i reverted https://reviews.facebook.net/D46899:
      
          python tools/write_stress_runner.py --runtime_sec=1000
          runtime: 1000
          Going to execute write stress for [3, 3, 100, 3, 2, 100, 1, 788]
          Running write_stress for 3 seconds: ./write_stress --runtime_sec=3 --low_open_files_mode=true
          Running write_stress for 3 seconds: ./write_stress --runtime_sec=3 --destroy_db=false --delete_obsolete_files_with_fullscan=true
          Running write_stress, will kill after 100 seconds: ./write_stress --runtime_sec=-1 --destroy_db=false --delete_obsolete_files_with_fullscan=true
          write_stress: db/db_impl.cc:2070: void rocksdb::DBImpl::MarkLogsSynced(uint64_t, bool, const rocksdb::Status&): Assertion `log.getting_synced' failed.
          ERROR: write_stress died with exitcode=-6
      
      Reviewers: IslamAbdelRahman, yhchiang, rven, kradhakrishnan, sdong, anthony
      
      Reviewed By: anthony
      
      Subscribers: leveldb, dhruba
      
      Differential Revision: https://reviews.facebook.net/D49533
      4b66d953
  16. 21 10月, 2015 1 次提交
  17. 20 10月, 2015 2 次提交
    • S
      #7916298: merge tools/db_crashtest2.py into tools/db_crashtest.py · 4575de5b
      Shusen Liu 提交于
      Summary:
      merge tools/db_crashtest2.py into tools/db_crashtest.py
      
      python tools/db_crashtest.py -h  # show help message, ALL parameters can be overwrite by arguments
      
      Example usages:
      python tools/db_crashtest.py blackbox  # run blackbox with default parameters
      python tools/db_crashtest.py blackbox --simple
      python tools/db_crashtest.py whitebox  # run whitebox with default parameters
      python tools/db_crashtest.py whitebox --simple
      
      all default parameters are identical to previous version.
      
      Test Plan: `make crash_test` and make sure it can run with expected parameters pased to db_stress.
      
      Reviewers: igor, rven, anthony, IslamAbdelRahman, yhchiang, sdong
      
      Reviewed By: sdong
      
      Subscribers: dhruba
      
      Differential Revision: https://reviews.facebook.net/D48567
      4575de5b
    • Y
      Fix the default assignment of DEBUG_LEVEL in Makefile · ec1f8354
      Yueh-Hsuan Chiang 提交于
      Summary:
      In the current make file, DEBUG_LEVEL is forced to set to 1
      instead of default to 1.  This patch fix this issue.
      
      Test Plan:
      DEBUG_LEVEL=2 make db_bench -j32
      DEBUG_LEVEL=0 make db_bench -j32
      
      DEBUG_LEVEL=0 make release -j32
      And see whether there's a warning pops up.
      
      Reviewers: MarkCallaghan, igor
      
      Reviewed By: igor
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D48933
      ec1f8354
  18. 18 10月, 2015 1 次提交
  19. 16 10月, 2015 1 次提交
  20. 15 10月, 2015 2 次提交
  21. 13 10月, 2015 3 次提交
  22. 11 10月, 2015 1 次提交
    • J
      Modify the way java static builds are done so that: · 4a7970d7
      James Lent 提交于
      1) There is no need to download and install the compression libraries twice
      just to get access to their header files during the compile phase.
      2) Ensure that the compression library headers files used during the
      compile phase are the same ones used to build the static library that
      is linked into the library.
      4a7970d7
  23. 10 10月, 2015 1 次提交
  24. 09 10月, 2015 1 次提交
    • I
      Make it harder for users to run debug builds in production · 831101b5
      Igor Canadi 提交于
      Summary:
      I see a lot of users compiling RocksDB with `make` or `make all` and then using those binaries in production. They end up running debug builds :(
      
      This diff makes it harder for them:
      1. I added an explicit warning to INSTALL.md
      2. When you compile with `make all`, your resulting library will be librocksdb_debug.a
      3. I also print out a warning when you compile in debug mode.
      
      Hopefully should be enough :)
      
      Test Plan: none
      
      Reviewers: rven, yhchiang, kradhakrishnan, anthony, sdong, dhruba, IslamAbdelRahman
      
      Reviewed By: IslamAbdelRahman
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D48093
      831101b5
  25. 08 10月, 2015 1 次提交
    • I
      Create Makefile target unity_test · f925208f
      Igor Canadi 提交于
      Summary: unity_test will compile db_test with unity.a instead of librocksdb.a. This will test both the compilation and some small amount of runtime.
      
      Test Plan: This is a test :)
      
      Reviewers: kradhakrishnan
      
      Reviewed By: kradhakrishnan
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D48297
      f925208f
  26. 01 10月, 2015 1 次提交
    • E
      New amalgamation target · 7a23e4d8
      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
      7a23e4d8
  27. 24 9月, 2015 2 次提交
    • K
      Simplifying valgrind testing · 628216fc
      krad 提交于
      Summary: Our valgrind testing is buggy and cumbersome in terms of locating the
      error. It originates from the fact we accumulate all output for the tests. It is
      extremely hard to locate the point of error.
      
      The communication between valgrind and the script is not sturdy. We are
      experiencing bugs.
      
      Simplifying to stop on first error.
      
      Test Plan: Run manually
      
      Reviewers: sdong igor
      
      CC: leveldb@
      
      Task ID: #6968635
      
      Blame Rev:
      628216fc
    • A
      Remove ldb HexToString method's usage of sscanf · 4805fa0e
      Assaf Sela 提交于
      Summary:
      Fix hex2String performance issues by removing sscanf dependency.
      Also fixed some edge case handling (odd length, bad input).
      
      Test Plan: Created a test file which called old and new implementation, and validated results are the same. I'll paste results in the phabricator diff.
      
      Reviewers: igor, rven, anthony, IslamAbdelRahman, kradhakrishnan, yhchiang, sdong
      
      Reviewed By: sdong
      
      Subscribers: thatsafunnyname, leveldb, dhruba
      
      Differential Revision: https://reviews.facebook.net/D46785
      4805fa0e
  28. 18 9月, 2015 1 次提交
    • A
      Support for SingleDelete() · 014fd55a
      Andres Noetzli 提交于
      Summary:
      This patch fixes #7460559. It introduces SingleDelete as a new database
      operation. This operation can be used to delete keys that were never
      overwritten (no put following another put of the same key). If an overwritten
      key is single deleted the behavior is undefined. Single deletion of a
      non-existent key has no effect but multiple consecutive single deletions are
      not allowed (see limitations).
      
      In contrast to the conventional Delete() operation, the deletion entry is
      removed along with the value when the two are lined up in a compaction. Note:
      The semantics are similar to @igor's prototype that allowed to have this
      behavior on the granularity of a column family (
      https://reviews.facebook.net/D42093 ). This new patch, however, is more
      aggressive when it comes to removing tombstones: It removes the SingleDelete
      together with the value whenever there is no snapshot between them while the
      older patch only did this when the sequence number of the deletion was older
      than the earliest snapshot.
      
      Most of the complex additions are in the Compaction Iterator, all other changes
      should be relatively straightforward. The patch also includes basic support for
      single deletions in db_stress and db_bench.
      
      Limitations:
      - Not compatible with cuckoo hash tables
      - Single deletions cannot be used in combination with merges and normal
        deletions on the same key (other keys are not affected by this)
      - Consecutive single deletions are currently not allowed (and older version of
        this patch supported this so it could be resurrected if needed)
      
      Test Plan: make all check
      
      Reviewers: yhchiang, sdong, rven, anthony, yoshinorim, igor
      
      Reviewed By: igor
      
      Subscribers: maykov, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D43179
      014fd55a
  29. 17 9月, 2015 1 次提交
    • Y
      Fix the verbosity issue in Java makefile · 2e8e7eb3
      Yueh-Hsuan Chiang 提交于
      Summary:
      When running `make rocksdbjava V=1`, it currently does
      not print out the original command but something odd instead:
      
          mkdir -p jl/db
      
      This patch tries to fix this issue.
      
      Test Plan: make rocksdbjava V=1
      
      Reviewers: igor, sdong, IslamAbdelRahman, meyering
      
      Reviewed By: meyering
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D47061
      2e8e7eb3
  30. 02 9月, 2015 1 次提交
  31. 14 8月, 2015 1 次提交
    • M
      Add a 'tools' target. · 9f0dd222
      maurice barnum 提交于
      My use case is to build the rocksdb static library and tools, and
      ideally I'd like to not spend time building the shared library and other
      targets that I won't use.
      9f0dd222
  32. 12 8月, 2015 1 次提交
    • A
      Pessimistic Transactions · c2f2cb02
      agiardullo 提交于
      Summary:
      Initial implementation of Pessimistic Transactions.  This diff contains the api changes discussed in D38913.  This diff is pretty large, so let me know if people would prefer to meet up to discuss it.
      
      MyRocks folks:  please take a look at the API in include/rocksdb/utilities/transaction[_db].h and let me know if you have any issues.
      
      Also, you'll notice a couple of TODOs in the implementation of RollbackToSavePoint().  After chatting with Siying, I'm going to send out a separate diff for an alternate implementation of this feature that implements the rollback inside of WriteBatch/WriteBatchWithIndex.  We can then decide which route is preferable.
      
      Next, I'm planning on doing some perf testing and then integrating this diff into MongoRocks for further testing.
      
      Test Plan: Unit tests, db_bench parallel testing.
      
      Reviewers: igor, rven, sdong, yhchiang, yoshinorim
      
      Reviewed By: sdong
      
      Subscribers: hermanlee4, maykov, spetrunia, leveldb, dhruba
      
      Differential Revision: https://reviews.facebook.net/D40869
      c2f2cb02
  33. 06 8月, 2015 1 次提交
    • S
      valgrind_check to exit on test failures · fca88f8e
      sdong 提交于
      Summary: Currently, valgrind_check doesn't fail on test failures, which creates confusion. valgrind_check should fail if test fails.
      
      Test Plan: Manually change tests to return test failure or cause memory leak and see valgrind_check has the correct behavior.
      
      Reviewers: anthony, yhchiang, IslamAbdelRahman, igor, kradhakrishnan, rven
      
      Reviewed By: rven
      
      Subscribers: leveldb, dhruba
      
      Differential Revision: https://reviews.facebook.net/D43629
      fca88f8e