• Maysam Yabandeh's avatar
    Extend Transaction::GetForUpdate with do_validate (#4680) · b878f93c
    Maysam Yabandeh authored
    Summary:
    Transaction::GetForUpdate is extended with a do_validate parameter with default value of true. If false it skips validating the snapshot (if there is any) before doing the read. After the read it also returns the latest value (expects the ReadOptions::snapshot to be nullptr). This allows RocksDB applications to use GetForUpdate similarly to how InnoDB does. Similarly ::Merge, ::Put, ::Delete, and ::SingleDelete are extended with assume_exclusive_tracked with default value of false. It true it indicates that call is assumed to be after a ::GetForUpdate(do_validate=false).
    The Java APIs are accordingly updated.
    Pull Request resolved: https://github.com/facebook/rocksdb/pull/4680
    
    Differential Revision: D13068508
    
    Pulled By: maysamyabandeh
    
    fbshipit-source-id: f0b59db28f7f6a078b60844d902057140765e67d
    b878f93c