1. 31 3月, 2015 3 次提交
    • M
      Make the benchmark scripts configurable and add tests · 99ec2412
      Mark Callaghan 提交于
      Summary:
      This makes run_flash_bench.sh configurable. Previously it was hardwired for 1B keys and tests
      ran for 12 hours each. That kept me from using it. This makes it configuable, adds more tests,
      makes the duration per-test configurable and refactors the test scripts.
      
      Adds the seekrandomwhilemerging test to db_bench which is the same as seekrandomwhilewriting except
      the writer thread does Merge rather than Put.
      
      Forces the stall-time column in compaction IO stats to use a fixed format (H:M:S) which makes
      it easier to scrape and parse. Also adds an option to AppendHumanMicros to force a fixed format.
      Sometimes automation and humans want different format.
      
      Calls thread->stats.AddBytes(bytes); in db_bench for more tests to get the MB/sec summary
      stats in the output at test end.
      
      Adds the average ingest rate to compaction IO stats. Output now looks like:
      https://gist.github.com/mdcallag/2bd64d18be1b93adc494
      
      More information on the benchmark output is at https://gist.github.com/mdcallag/db43a58bd5ac624f01e1
      
      For benchmark.sh changes default RocksDB configuration to reduce stalls:
      * min_level_to_compress from 2 to 3
      * hard_rate_limit from 2 to 3
      * max_grandparent_overlap_factor and max_bytes_for_level_multiplier from 10 to 8
      * L0 file count triggers from 4,8,12 to 4,12,20 for (start,stall,stop)
      
      Task ID: #6596829
      
      Blame Rev:
      
      Test Plan:
      run tools/run_flash_bench.sh
      
      Revert Plan:
      
      Database Impact:
      
      Memcache Impact:
      
      Other Notes:
      
      EImportant:
      
      - begin *PUBLIC* platform impact section -
      Bugzilla: #
      - end platform impact -
      
      Reviewers: igor
      
      Reviewed By: igor
      
      Subscribers: dhruba
      
      Differential Revision: https://reviews.facebook.net/D36075
      99ec2412
    • I
      Fix clang build · 2158e0f8
      Igor Canadi 提交于
      Summary: as title
      
      Test Plan: clang builds
      
      Reviewers: leveldb
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D36183
      2158e0f8
    • I
      db_bench can now disable flashcache for background threads · d61cb0b9
      Igor Canadi 提交于
      Summary: Most of the approach is copied from WebSQL's MySQL branch. It's nice that we can do this without touching core RocksDB code.
      
      Test Plan: Compiles and runs. Didn't test flashback code, as I don't have flashback device and most if it is c/p
      
      Reviewers: MarkCallaghan, sdong
      
      Reviewed By: sdong
      
      Subscribers: rven, lgalanis, kradhakrishnan, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D35391
      d61cb0b9
  2. 28 3月, 2015 3 次提交
    • J
      build: always attempt to update util/build_version.cc · 1c47c433
      Jim Meyering 提交于
      Summary:
      This fixes two bugs: "make clean" would never remove the generated
      file, util/build_version.cc, and since D33591, would be regenerated
      only if it were absent.
      * Makefile (clean): Remove the generated file.
      (util/build_version.cc): Depend on the no-prereq FORCE target,
      so that this target's rules are always run.
      Since this is a generated file, make it read-only.
      Also, be sure to remove the temporary file when it is the same
      as the original.
      
      Test Plan:
      Ensure that we attempt regeneration every time.
      Make it empty with an up-to-date time stamp and demonstrate
      that it is rebuilt with the expected content:
      
        $ : > util/build_version.cc
        $ make util/build_version.o
         GEN      util/build_version.cc
         GEN      util/build_version.d
         GEN      util/build_version.cc
         CC       util/build_version.o
        $ cat util/build_version.cc
        #include "build_version.h"
        const char* rocksdb_build_git_sha = "rocksdb_build_git_sha:v3.10-2-gb30e72a";
        const char* rocksdb_build_git_date = "rocksdb_build_git_date:2015-03-27";
        const char* rocksdb_build_compile_date = __DATE__;
      
      Reviewers: igor.sugak, sdong, ljin, igor, rven
      
      Reviewed By: rven
      
      Subscribers: dhruba
      
      Differential Revision: https://reviews.facebook.net/D36087
      1c47c433
    • H
      Formalize the DB properties string definitions. · e018892b
      Herman Lee 提交于
      Summary:
      Assign the string properties to const string variables under the
      DB::Properties namespace. This helps catch typos during compilation and
      also consolidates the property definition in one place.
      
      Test Plan: Run rocksdb unit tests
      
      Reviewers: sdong, yoshinorim, igor
      
      Subscribers: dhruba
      
      Differential Revision: https://reviews.facebook.net/D35991
      e018892b
    • Y
      Make auto_sanity_test always use the db_sanity_test.cc of the newer commit. · cfa57640
      Yueh-Hsuan Chiang 提交于
      Summary:
      Whenever we add new tests in db_sanity_test.cc, the verification test
      will fail since the old version db_sanity_test.cc does not have the
      newly added test.  This patch makes auto_sanity_test.sh always use
      the db_sanity_test.cc of the newer commit.
      
      As a result, a macro guard is added to allow db_sanity_test.cc to be
      backward compatible.
      
      Test Plan: tools/auto_sanity_check.sh
      
      Reviewers: sdong, rven, igor
      
      Reviewed By: igor
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D35997
      cfa57640
  3. 27 3月, 2015 3 次提交
    • I
      Merge pull request #560 from xiaoxichen/patch-1 · e9fddb7a
      Igor Canadi 提交于
      Fix interger overflow on i386 arch
      e9fddb7a
    • X
      Fix interger overflow on i386 arch · bcd8a71a
      xiaoxichen 提交于
      The error was:
      
      util/logging.cc: In function 'int rocksdb::AppendHumanMicros(uint64_t, char*, int)':
      error: util/logging.cc:41:39: integer overflow in expression [-Werror=overflow]
      } else if (micros < 1000000l * 60 * 60) {
      ^
      error: util/logging.cc:41:39: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
      bcd8a71a
    • I
      Dump compression info on startup · 030859eb
      Igor Canadi 提交于
      Summary: It's useful to know if we have compression support or no
      
      Test Plan:
      Observed this in my LOG:
      
            2015/03/26-10:34:35.460681 7f5b322b7840 Snappy supported
            2015/03/26-10:34:35.460682 7f5b322b7840 Zlib supported
            2015/03/26-10:34:35.460686 7f5b322b7840 Bzip supported
            2015/03/26-10:34:35.460687 7f5b322b7840 LZ4 NOT supported
      
      Reviewers: sdong, yhchiang
      
      Reviewed By: yhchiang
      
      Subscribers: dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D35955
      030859eb
  4. 26 3月, 2015 5 次提交
    • I
      Merge pull request #558 from aamihailov/master · 3539e064
      Igor Canadi 提交于
      fix compilation error (same as fix #284)
      3539e064
    • A
      fix compilation error (same as fix #284) · a3e4b324
      Alexander.Mikhaylov 提交于
      [maa@srv2-nskb-devg2 rocksdb-master]$ CXX=/usr/local/CC/gcc-4.7.4/bin/g++ EXTRA_CXXFLAGS=-std=c++11 DISABLE_WARNING_AS_ERROR=1  make db_bench
        CC       db/db_bench.o
      db/db_bench.cc: In member function 'rocksdb::Slice rocksdb::Benchmark::AllocateKey(std::unique_ptr<const char []>*)':
      db/db_bench.cc:1434:41: error: use of deleted function 'void std::unique_ptr<_Tp [], _Dp>::reset(_Up) [with _Up = char*; _Tp = const char; _Dp = std::default_delete<const char []>]'
      In file included from /usr/local/CC/gcc-4.7.4/lib/gcc/x86_64-unknown-linux-gnu/4.7.4/../../../../include/c++/4.7.4/memory:86:0,
                       from ./include/rocksdb/db.h:14,
                       from ./db/dbformat.h:14,
                       from ./db/db_impl.h:21,
                       from db/db_bench.cc:33:
      a3e4b324
    • J
      TSAN: avoid new link failure with -pg · ff1ff7c6
      Jim Meyering 提交于
      Summary:
      * Makefile (COMPILE_WITH_TSAN): Avoid a link failure by disabling
      -pg when building with TSAN enabled.
      Now that "make check" builds all $(PROGRAMS), it is linking
      a few programs that were not normally linked before.
      For example, this would fail to link with the following diagnostic:
      
        COMPILE_WITH_TSAN=1 make -j40 log_and_apply_bench
      
          CCLD     log_and_apply_bench
        ld: /usr/lib/../lib64/gcrt1.o: relocation R_X86_64_32S against `__libc_csu_fini' can not be used when making a shared object; recompile with -fPIC
        /usr/lib/../lib64/gcrt1.o: error adding symbols: Bad value
        collect2: error: ld returned 1 exit status
        Makefile:511: recipe for target 'log_and_apply_bench' failed
        make: *** [log_and_apply_bench] Error 1
      
      Since removing -pg is sufficient to get past this link
      failure, and no one cares about profiling TSAN-enabled
      binaries anyway, we will refrain from linking with -pg
      when TSAN testing is enabled.  Use a new variable, "pg"
      which is set to "-pg" in most cases, but that is made
      empty when COMPILE_WITH_TSAN is set.
      
      Test Plan:
        Now, this succeeds:
      
          rm -f log_and_apply_bench
          COMPILE_WITH_TSAN=1 make -j40 log_and_apply_bench
      
      Reviewers: igor.sugak, rven, sdong, ljin, igor
      
      Reviewed By: igor
      
      Subscribers: dhruba
      
      Differential Revision: https://reviews.facebook.net/D35943
      ff1ff7c6
    • Y
      Add a missing section title in HISTORY.md · 39d508e3
      Yueh-Hsuan Chiang 提交于
      Summary:
      Add a missing section title in HISTORY.md
      
      Test Plan:
      no code change
      39d508e3
    • Y
      Fixed a typo in RocksDBSample.java · 727684bf
      Yueh-Hsuan Chiang 提交于
      Summary:
      Fixed a typo in RocksDBSample.java
      
      Test Plan:
      make clean
      make rocksdbjava -j32
      make jtest
      727684bf
  5. 25 3月, 2015 16 次提交
  6. 24 3月, 2015 10 次提交