rocksdb/utilities/transactions
Maysam Yabandeh 7429b20e39 WritePrepared Txn: fix race condition on publishing seq
Summary:
This commit fixes a race condition on calling SetLastPublishedSequence. The function must be called only from the 2nd write queue when two_write_queues is enabled. However there was a bug that would also call it from the main write queue if CommitTimeWriteBatch is provided to the commit request and yet use_only_the_last_commit_time_batch_for_recovery optimization is not enabled. To fix that we penalize the commit request in such cases by doing an additional write solely to publish the seq number from the 2nd queue.
Closes https://github.com/facebook/rocksdb/pull/3641

Differential Revision: D7361508

Pulled By: maysamyabandeh

fbshipit-source-id: bf8f7a27e5cccf5425dccbce25eb0032e8e5a4d7
2018-03-22 14:43:36 -07:00
..
optimistic_transaction_db_impl.cc Refactor PessimisticTransaction 2017-08-07 16:12:29 -07:00
optimistic_transaction_db_impl.h Change RocksDB License 2017-07-15 16:11:23 -07:00
optimistic_transaction_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
optimistic_transaction.cc Update WritePrepared with the pseudo code 2017-08-16 16:57:47 -07:00
optimistic_transaction.h Update WritePrepared with the pseudo code 2017-08-16 16:57:47 -07:00
pessimistic_transaction_db.cc Fix some typos in comments and docs. 2018-03-08 10:27:25 -08:00
pessimistic_transaction_db.h WritePrepared Txn: Fix bug with duplicate keys during recovery 2018-03-05 10:57:59 -08:00
pessimistic_transaction.cc WritePrepared Txn: Duplicate Keys, Txn Part 2018-02-05 18:43:24 -08:00
pessimistic_transaction.h WritePrepared Txn: Duplicate Keys, Txn Part 2018-02-05 18:43:24 -08:00
snapshot_checker.cc WritePrepared Txn: Move DB class to its own file 2017-11-02 11:14:30 -07:00
transaction_base.cc Suppress unused warnings 2018-02-02 12:27:07 -08:00
transaction_base.h Comment out unused variables 2018-03-05 13:13:41 -08:00
transaction_db_mutex_impl.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
transaction_db_mutex_impl.h Change RocksDB License 2017-07-15 16:11:23 -07:00
transaction_lock_mgr.cc save redundant key lookup in map of locked keys 2018-02-20 17:44:44 -08:00
transaction_lock_mgr.h Added mechanism to track deadlock chain 2017-08-17 18:56:21 -07:00
transaction_test.cc WritePrepared Txn: Fix bug with duplicate keys during recovery 2018-03-05 10:57:59 -08:00
transaction_test.h WritePrepared Txn: Fix bug with duplicate keys during recovery 2018-03-05 10:57:59 -08:00
transaction_util.cc WritePrepared Txn: ValidateSnapshot 2017-11-01 19:11:09 -07:00
transaction_util.h WritePrepared Txn: ValidateSnapshot 2017-11-01 19:11:09 -07:00
write_prepared_transaction_test.cc Fix some typos in comments and docs. 2018-03-08 10:27:25 -08:00
write_prepared_txn_db.cc Comment out unused variables 2018-03-05 13:13:41 -08:00
write_prepared_txn_db.h WritePrepared Txn: fix race condition on publishing seq 2018-03-22 14:43:36 -07:00
write_prepared_txn.cc WritePrepared Txn: fix race condition on publishing seq 2018-03-22 14:43:36 -07:00
write_prepared_txn.h Fix some typos in comments and docs. 2018-03-08 10:27:25 -08:00