• Maysam Yabandeh's avatar
    Extend Transaction::GetForUpdate with do_validate (#4680) · b878f93c
    Maysam Yabandeh authored
    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