• Julien Muchembled's avatar
    storage: defer commit when unlocking a transaction (-> better performance) · eaa07e25
    Julien Muchembled authored
    Before this change, a storage node did 3 commits per transaction:
    - once all data are stored
    - when locking the transaction
    - when unlocking the transaction
    
    The last one is not important for ACID. In case of a crash, the transaction
    is unlocked again (verification phase). By deferring it by 1 second, we
    only have 2 commits per transaction during high activity because all pending
    changes are merged with the commits caused by other transactions.
    
    This change compensates the extra commit(s) per transaction that were
    introduced in commit 7eb7cf1b
    ("Minimize the amount of work during tpc_finish").
    eaa07e25
testTransactions.py 16.7 KB