Skip to content
  • Maysam Yabandeh's avatar
    WritePrepared: Clarify the need for two_write_queues in unordered_write (#5313) · 5c0e3041
    Maysam Yabandeh authored
    Summary:
    WritePrepared transactions when configured with two_write_queues=true offers higher throughput with unordered_write feature without however compromising the rocksdb guarantees. This is because it performs ordering among writes in a 2nd step that is not tied to memtable write speed. The 2nd step is naturally provided by 2PC when the commit phase does the ordering as well. Without 2PC, the 2nd step would only be provided when we use two_write_queues=true, where WritePrepared after performing the writes, in a 2nd step uses the 2nd queue to assign order to the writes.
    The patch clarifies the need for two_write_queues=true in the HISTORY and inline comments of unordered_writes. Moreover it extends the stress tests of WritePrepared to unordred_write.
    Pull Request resolved: https://github.com/facebook/rocksdb/pull/5313
    
    Differential Revision: D15379977
    
    Pulled By: maysamyabandeh
    
    fbshipit-source-id: 5b6f05b9b59285dcbf3b0532215ba9fe7d926e00
    5c0e3041