1. 24 8月, 2016 6 次提交
  2. 23 8月, 2016 4 次提交
    • A
      Fold function for thread-local data · 6584cec8
      Andrew Kryczka 提交于
      Summary:
      This function allows the user to provide a custom function to fold all
      threads' local data. It will be used in my next diff for aggregating statistics
      stored in thread-local data. Note the test case uses atomics as thread-local
      values due to the synchronization requirement (documented in code).
      
      Test Plan: unit test
      
      Reviewers: yhchiang, sdong, kradhakrishnan
      
      Reviewed By: kradhakrishnan
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D62049
      6584cec8
    • A
      Add singleDelete to RocksJava (#1275) · 817eeb29
      Adam Retter 提交于
      * Rename RocksDB#remove -> RocksDB#delete to match C++ API; Added deprecated versions of RocksDB#remove for backwards compatibility.
      
      * Add missing experimental feature RocksDB#singleDelete
      817eeb29
    • A
      Add Status to RocksDBException so that meaningful function result Status from... · ffdf6eee
      Adam Retter 提交于
      Add Status to RocksDBException so that meaningful function result Status from the C++ API isn't lost (#1273)
      
      ffdf6eee
    • A
      Fix bug in printing values for block-based table · ecf90038
      Andrew Kryczka 提交于
      Summary: value is not an InternalKey, we do not need to decode it
      
      Test Plan:
      setup:
      
        $ ldb put --create_if_missing=true k v
        $ ldb put --db=./tmp --create_if_missing k v
        $ ldb compact --db=./tmp
      
      before:
      
        $ sst_dump --command=raw --file=./tmp/000004.sst
        ...
        terminate called after throwing an instance of 'std::length_error'
      
      after:
      
        $ ./sst_dump --command=raw --file=./tmp/000004.sst
        $ cat tmp/000004_dump.txt
        ...
        ASCII  k : v
        ...
      
      Reviewers: sdong, yhchiang, IslamAbdelRahman
      
      Reviewed By: IslamAbdelRahman
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D62301
      ecf90038
  3. 20 8月, 2016 4 次提交
    • Y
      LRU cache mid-point insertion · 72f8cc70
      Yi Wu 提交于
      Summary:
      Add mid-point insertion functionality to LRU cache. Caller of `Cache::Insert()` can set an additional parameter to make a cache entry have higher priority. The LRU cache will reserve at most `capacity * high_pri_pool_pct` bytes for high-pri cache entries. If `high_pri_pool_pct` is zero, the cache degenerates to normal LRU cache.
      
      Context: If we are to put index and filter blocks into RocksDB block cache, index/filter block can be swap out too early. We want to add an option to RocksDB to reserve some capacity in block cache just for index/filter blocks, to mitigate the issue.
      
      In later diffs I'll update block based table reader to use the interface to cache index/filter blocks at high priority, and expose the option to `DBOptions` and make it dynamic changeable.
      
      Test Plan: unit test.
      
      Reviewers: IslamAbdelRahman, sdong, lightmark
      
      Reviewed By: lightmark
      
      Subscribers: andrewkr, dhruba, march, leveldb
      
      Differential Revision: https://reviews.facebook.net/D61977
      72f8cc70
    • I
      Add TablePropertiesCollector support in SstFileWriter · 6a17b07c
      Islam AbdelRahman 提交于
      Summary: Update SstFileWriter to use user TablePropertiesCollectors that are passed in Options
      
      Test Plan: unittests
      
      Reviewers: sdong
      
      Reviewed By: sdong
      
      Subscribers: jkedgar, andrewkr, hermanlee4, dhruba, yoshinorim
      
      Differential Revision: https://reviews.facebook.net/D62253
      6a17b07c
    • W
      TableBuilder / TableReader support for range deletion · 78837f5d
      Wanning Jiang 提交于
      Summary: 1. Range Deletion Tombstone structure 2. Modify Add() in table_builder to make it usable for adding range del tombstones 3. Expose NewTombstoneIterator() API in table_reader
      
      Test Plan: table_test.cc (now BlockBasedTableBuilder::Add() only accepts InternalKey. I make table_test only pass InternalKey to BlockBasedTableBuidler. Also test writing/reading range deletion tombstones in table_test )
      
      Reviewers: sdong, IslamAbdelRahman, lightmark, andrewkr
      
      Reviewed By: andrewkr
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D61473
      78837f5d
    • Y
      Introduce ClockCache · 4cc37f59
      Yi Wu 提交于
      Summary:
      Clock-based cache implemenetation aim to have better concurreny than
      default LRU cache. See inline comments for implementation details.
      
      Test Plan:
      Update cache_test to run on both LRUCache and ClockCache. Adding some
      new tests to catch some of the bugs that I fixed while implementing the
      cache.
      
      Reviewers: kradhakrishnan, sdong
      
      Reviewed By: sdong
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D61647
      4cc37f59
  4. 19 8月, 2016 1 次提交
    • Y
      Adding TBB as dependency. · ff17a2ab
      Yi Wu 提交于
      Summary: Splitting the makefile part of D55581.
      
      Test Plan:
        make all check -j32
        ROCKSDB_FBCODE_BUILD_WITH_481=1 make all check -j32
        ROCKSDB_NO_FBCODE=1 make all check -j32
      
        export TBB_BASE=/mnt/gvfs/third-party2/tbb/afa54b33cfcf93f1d90a3160cdb894d6d63d5dca/4.0_update2/gcc-4.9-glibc-2.20/e9936bf;
        ROCKSDB_NO_FBCODE=1 CFLAGS="-I $TBB_BASE/include" LDFLAGS="-L $TBB_BASE/lib -Wl,-rpath=$TBB_BASE/lib" make all check -j32
      
      Reviewers: IslamAbdelRahman, sdong
      
      Reviewed By: sdong
      
      Subscribers: kradhakrishnan, yhchiang, IslamAbdelRahman, andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D56979
      ff17a2ab
  5. 18 8月, 2016 2 次提交
  6. 17 8月, 2016 2 次提交
    • D
      Small nits (#1280) · 3981345b
      Dmitri Smirnov 提交于
      * Create rate limiter using factory function in the test.
      
      * Convert function local statics in option helper to a C array
        that does not perform dynamic memory allocation. This is helpful
        when you try to memory isolate different DB instances.
      3981345b
    • Y
      Move LRUCache structs to lru_cache.h header · 2a2ebb6f
      Yi Wu 提交于
      Summary: ... so that I can include the header and create LRUCache specific tests for D61977
      
      Test Plan:
         make check
      
      Reviewers: lightmark, IslamAbdelRahman, sdong
      
      Reviewed By: sdong
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D62145
      2a2ebb6f
  7. 16 8月, 2016 9 次提交
  8. 13 8月, 2016 2 次提交
    • P
      Added min/max/avg data block size output to sst_dump · deda159b
      Philipp Unterbrunner 提交于
      Summary: Added min/max/avg data block size output to sst_dump. Output was added to the end of BlockBasedTable::DumpDataBlocks, so it appears after the data block details, at the very end of the dump file.
      
      Test Plan:
      ```
      ./db_bench --benchmarks=fillrandom
      ./sst_dump --file=/tmp/rocksdbtest-xyz/dbbench/000007.sst --command=raw
      tail -n 6 /tmp/rocksdbtest-xyz/dbbench/000007_dump.txt
      ```
      ```
      Data Block Summary:
      --------------------------------------
        # data blocks: 11336
        min data block size: 903
        max data block size: 2268
        avg data block size: 2245.363356
      ```
      
      Reviewers: IslamAbdelRahman
      
      Reviewed By: IslamAbdelRahman
      
      Subscribers: andrewkr, dhruba
      
      Differential Revision: https://reviews.facebook.net/D61815
      deda159b
    • A
      add Name() to Cache · e408e98c
      Aaron Gao 提交于
      Summary: preparation for detecting Cache type. If SimCache, we then may trigger some command like "setSimCapacity()" with setOptions()
      
      Test Plan: make all check
      
      Reviewers: yiwu, sdong
      
      Reviewed By: sdong
      
      Subscribers: andrewkr, dhruba, leveldb
      
      Differential Revision: https://reviews.facebook.net/D61953
      e408e98c
  9. 12 8月, 2016 10 次提交