1. 08 12月, 2016 6 次提交
  2. 07 12月, 2016 3 次提交
  3. 06 12月, 2016 6 次提交
    • M
      Implement non-exclusive locks · 2005c88a
      Manuel Ung 提交于
      Summary:
      This is an implementation of non-exclusive locks for pessimistic transactions. It is relatively simple and does not prevent starvation (ie. it's possible that request for exclusive access will never be granted if there are always threads holding shared access). It is done by changing `KeyLockInfo` to hold an set a transaction ids, instead of just one, and adding a flag specifying whether this lock is currently held with exclusive access or not.
      
      Some implementation notes:
      - Some lock diagnostic functions had to be updated to return a set of transaction ids for a given lock, eg. `GetWaitingTxn` and `GetLockStatusData`.
      - Deadlock detection is a bit more complicated since a transaction can now wait on multiple other transactions. A BFS is done in this case, and deadlock detection depth is now just a limit on the number of transactions we visit.
      - Expirable transactions do not work efficiently with shared locks at the moment, but that's okay for now.
      Closes https://github.com/facebook/rocksdb/pull/1573
      
      Differential Revision: D4239097
      
      Pulled By: lth
      
      fbshipit-source-id: da7c074
      2005c88a
    • Y
      Mention IngestExternalFile changes in HISTORY.md · 0b0f2357
      Yi Wu 提交于
      Summary:
      I hit the land button too fast and didn't include the line.
      Closes https://github.com/facebook/rocksdb/pull/1622
      
      Differential Revision: D4281316
      
      Pulled By: yiwu-arbug
      
      fbshipit-source-id: c7b38e0
      0b0f2357
    • Y
      Update HISTORY.md for 5.0 branch · 23db48e8
      Yi Wu 提交于
      Summary:
      These changes are included in the new branch-cut.
      Closes https://github.com/facebook/rocksdb/pull/1621
      
      Differential Revision: D4281015
      
      Pulled By: yiwu-arbug
      
      fbshipit-source-id: d88858b
      23db48e8
    • M
      Fixed CompactionFilter::Decision::kRemoveAndSkipUntil · beb36d9c
      Mike Kolupaev 提交于
      Summary:
      Embarassingly enough, the first time I tried to use my new feature in logdevice it crashed with this assertion failure:
      
        db/pinned_iterators_manager.h:30: void rocksdb::PinnedIteratorsManager::StartPinning(): Assertion `pinning_enabled == false' failed
      
      The issue was that `pinned_iters_mgr_.StartPinning()` was called but `pinned_iters_mgr_.ReleasePinnedData()` wasn't.
      Closes https://github.com/facebook/rocksdb/pull/1611
      
      Differential Revision: D4265622
      
      Pulled By: al13n321
      
      fbshipit-source-id: 747b10f
      beb36d9c
    • I
      Allow user to specify a CF for SST files generated by SstFileWriter · 67f37cf1
      Islam AbdelRahman 提交于
      Summary:
      Allow user to explicitly specify that the generated file by SstFileWriter will be ingested in a specific CF.
      This allow us to persist the CF id in the generated file
      Closes https://github.com/facebook/rocksdb/pull/1615
      
      Differential Revision: D4270422
      
      Pulled By: IslamAbdelRahman
      
      fbshipit-source-id: 7fb954e
      67f37cf1
    • A
      Made delete_obsolete_files_period_micros option dynamic · 9053fe2a
      Anton Safonov 提交于
      Summary:
      Made delete_obsolete_files_period_micros option dynamic. It can be updating using DB::SetDBOptions().
      Closes https://github.com/facebook/rocksdb/pull/1595
      
      Differential Revision: D4246569
      
      Pulled By: tonek
      
      fbshipit-source-id: d23f560
      9053fe2a
  4. 02 12月, 2016 6 次提交
  5. 01 12月, 2016 3 次提交
  6. 30 11月, 2016 6 次提交
  7. 29 11月, 2016 9 次提交
  8. 24 11月, 2016 1 次提交
    • S
      Improve Write Stalling System · cd7c4143
      Siying Dong 提交于
      Summary:
      Current write stalling system has the problem of lacking of positive feedback if the restricted rate is already too low. Users sometimes stack in very low slowdown value. With the diff, we add a positive feedback (increasing the slowdown value) if we recover from slowdown state back to normal. To avoid the positive feedback to keep the slowdown value to be to high, we add issue a negative feedback every time we are close to the stop condition. Experiments show it is easier to reach a relative balance than before.
      
      Also increase level0_stop_writes_trigger default from 24 to 32. Since level0_slowdown_writes_trigger default is 20, stop trigger 24 only gives four files as the buffer time to slowdown writes. In order to avoid stop in four files while 20 files have been accumulated, the slowdown value must be very low, which is amost the same as stop. It also doesn't give enough time for the slowdown value to converge. Increase it to 32 will smooth out the system.
      Closes https://github.com/facebook/rocksdb/pull/1562
      
      Differential Revision: D4218519
      
      Pulled By: siying
      
      fbshipit-source-id: 95e4088
      cd7c4143