1. 28 7月, 2017 1 次提交
    • Y
      Blob DB TTL extractor · 6083bc79
      Yi Wu 提交于
      Summary:
      Introducing blob_db::TTLExtractor to replace extract_ttl_fn. The TTL
      extractor can be use to extract TTL from keys insert with Put or
      WriteBatch. Change over existing extract_ttl_fn are:
      * If value is changed, it will be return via std::string* (rather than Slice*). With Slice* the new value has to be part of the existing value. With std::string* the limitation is removed.
      * It can optionally return TTL or expiration.
      
      Other changes in this PR:
      * replace `std::chrono::system_clock` with `Env::NowMicros` so that I can mock time in tests.
      * add several TTL tests.
      * other minor naming change.
      Closes https://github.com/facebook/rocksdb/pull/2659
      
      Differential Revision: D5512627
      
      Pulled By: yiwu-arbug
      
      fbshipit-source-id: 0dfcb00d74d060b8534c6130c808e4d5d0a54440
      6083bc79
  2. 16 7月, 2017 1 次提交
  3. 13 7月, 2017 1 次提交
  4. 15 6月, 2017 2 次提交
    • Y
      Fix blob db compression bug · ae8571f5
      Yi Wu 提交于
      Summary:
      `CompressBlock()` will return the uncompressed slice (i.e. `Slice(value_unc)`) if compression ratio is not good enough. This is undesired. We need to always assign the compressed slice to `value`.
      Closes https://github.com/facebook/rocksdb/pull/2447
      
      Differential Revision: D5244682
      
      Pulled By: yiwu-arbug
      
      fbshipit-source-id: 6989dd8852c9622822ba9acec9beea02007dff09
      ae8571f5
    • Y
      Update blob_db_test · 7a380def
      Yi Wu 提交于
      Summary:
      I'm trying to improve unit test of blob db. I'm rewriting blob db test. In this patch:
      * Rewrite tests of basic put/write/delete operations.
      * Add disable_background_tasks to BlobDBOptionsImpl to allow me not running any background job for basic unit tests.
      * Move DestroyBlobDB out from BlobDBImpl to be a standalone function.
      * Remove all garbage collection related tests. Will rewrite them in following patch.
      * Disabled compression test since it is failing. Will fix in a followup patch.
      Closes https://github.com/facebook/rocksdb/pull/2446
      
      Differential Revision: D5243306
      
      Pulled By: yiwu-arbug
      
      fbshipit-source-id: 157c71ad3b699307cb88baa3830e9b6e74f8e939
      7a380def
  5. 01 6月, 2017 1 次提交
    • Y
      Fixing blob db sequence number handling · ad19eb86
      Yi Wu 提交于
      Summary:
      Blob db rely on base db returning sequence number through write batch after DB::Write(). However after recent changes to the write path, DB::Writ()e no longer return sequence number in some cases. Fixing it by have WriteBatchInternal::InsertInto() always encode sequence number into write batch.
      
      Stacking on #2375.
      Closes https://github.com/facebook/rocksdb/pull/2385
      
      Differential Revision: D5148358
      
      Pulled By: yiwu-arbug
      
      fbshipit-source-id: 8bda0aa07b9334ed03ed381548b39d167dc20c33
      ad19eb86
  6. 11 5月, 2017 1 次提交