1. 03 5月, 2014 2 次提交
  2. 02 5月, 2014 5 次提交
    • I
      Improve ttl_test · 3b5fa6bd
      Igor Canadi 提交于
      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
      3b5fa6bd
    • I
      Include version in options · 82042f45
      Igor Canadi 提交于
      82042f45
    • I
      fix release build · d28ed693
      Igor Canadi 提交于
      d28ed693
    • I
      fix compile warning · d29e48bb
      Igor Canadi 提交于
      d29e48bb
    • I
      xxHash · 0afc8bc2
      Igor Canadi 提交于
      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
      0afc8bc2
  3. 01 5月, 2014 7 次提交
  4. 30 4月, 2014 11 次提交
    • I
      More s/us fixes · d6d67c0e
      Igor Canadi 提交于
      d6d67c0e
    • Y
      Merge pull request #131 from ankgup87/master · 2e11e47c
      Yueh-Hsuan Chiang 提交于
      [Java] Add multiget JNI bindings
      2e11e47c
    • I
      Merge pull request #132 from kjk/master · 046a85af
      Igor Canadi 提交于
      Improve building of shared library so that it e.g. works with Go bindings
      046a85af
    • Y
      Add a new mem-table representation based on cuckoo hash. · 9d9d2965
      Yueh-Hsuan Chiang 提交于
      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
      9d9d2965
    • K
      Update Makefile · 2b7cf03e
      Krzysztof Kowalczyk 提交于
      2b7cf03e
    • I
      More unsigned/signed compare fixes · f1c9aa6e
      Igor Canadi 提交于
      f1c9aa6e
    • I
      Fix more signed/unsigned comparsions · 38693d99
      Igor Canadi 提交于
      38693d99
    • I
      Fix unsigned and signed integer compare · d0b006ab
      Igor Canadi 提交于
      d0b006ab
    • I
      Make ttl_test a bit more robust · 76c3dbf5
      Igor Canadi 提交于
      76c3dbf5
    • I
      Cache result of ReadFirstRecord() · dd9eb7a7
      Igor Canadi 提交于
      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
      dd9eb7a7
    • I
      Create new branch instead of tag in make_new_version · de825e73
      Igor Canadi 提交于
      de825e73
  5. 29 4月, 2014 7 次提交
  6. 28 4月, 2014 4 次提交
  7. 27 4月, 2014 2 次提交
  8. 26 4月, 2014 2 次提交