-
Notifications
You must be signed in to change notification settings - Fork 6.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Avoid deadlock between mutex_ and log_write_mutex_ #5437
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the fix!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@maysamyabandeh has imported this pull request. If you are a Facebook employee, you can view this diff on Phabricator.
@maysamyabandeh merged this pull request in c8c1a54. |
Summary: To avoid deadlock mutex_ should never be acquired before log_write_mutex_. The patch documents that and also fixes one case in ::FlushWAL that acquires mutex_ through ::WriteStatusCheck when it already holds lock on log_write_mutex_. Pull Request resolved: #5437 Differential Revision: D15749722 Pulled By: maysamyabandeh fbshipit-source-id: f57b69c44b4b80cc6d7ddf3d3fdf4a9eb5a5a45a (cherry picked from commit c8c1a54)
Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7
Summary: To avoid deadlock mutex_ should never be acquired before log_write_mutex_. The patch documents that and also fixes one case in ::FlushWAL that acquires mutex_ through ::WriteStatusCheck when it already holds lock on log_write_mutex_. Pull Request resolved: facebook#5437 Differential Revision: D15749722 Pulled By: maysamyabandeh fbshipit-source-id: f57b69c44b4b80cc6d7ddf3d3fdf4a9eb5a5a45a
Summary: To avoid deadlock mutex_ should never be acquired before log_write_mutex_. The patch documents that and also fixes one case in ::FlushWAL that acquires mutex_ through ::WriteStatusCheck when it already holds lock on log_write_mutex_. Pull Request resolved: facebook#5437 Differential Revision: D15749722 Pulled By: maysamyabandeh fbshipit-source-id: f57b69c44b4b80cc6d7ddf3d3fdf4a9eb5a5a45a
Summary: To avoid deadlock mutex_ should never be acquired before log_write_mutex_. The patch documents that and also fixes one case in ::FlushWAL that acquires mutex_ through ::WriteStatusCheck when it already holds lock on log_write_mutex_. Pull Request resolved: facebook#5437 Differential Revision: D15749722 Pulled By: maysamyabandeh fbshipit-source-id: f57b69c44b4b80cc6d7ddf3d3fdf4a9eb5a5a45a
Summary: To avoid deadlock mutex_ should never be acquired before log_write_mutex_. The patch documents that and also fixes one case in ::FlushWAL that acquires mutex_ through ::WriteStatusCheck when it already holds lock on log_write_mutex_. Pull Request resolved: facebook#5437 Differential Revision: D15749722 Pulled By: maysamyabandeh fbshipit-source-id: f57b69c44b4b80cc6d7ddf3d3fdf4a9eb5a5a45a
Summary: To avoid deadlock mutex_ should never be acquired before log_write_mutex_. The patch documents that and also fixes one case in ::FlushWAL that acquires mutex_ through ::WriteStatusCheck when it already holds lock on log_write_mutex_. Pull Request resolved: facebook#5437 Differential Revision: D15749722 Pulled By: maysamyabandeh fbshipit-source-id: f57b69c44b4b80cc6d7ddf3d3fdf4a9eb5a5a45a
Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: 5b0aa04
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: 5b0aa04
Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: 5b0aa04
Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: 5b0aa04
Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: 5b0aa04
Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: 5b0aa04
Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Differential Revision: D15753718 (603097e) fbshipit-source-id: 4638342286c
Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Differential Revision: D15753718 (facebook@603097e) fbshipit-source-id: 4638342286c
Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Differential Revision: D15753718 (facebook@603097e) fbshipit-source-id: 4638342286c
Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Differential Revision: D15753718 (facebook@603097e) fbshipit-source-id: 4638342286c
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 @update-submodule: rocksdb Differential Revision: D15753718
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
Upstream commit ID : fb-mysql-5.6.35/603097e97d615c141f21f61b4bf440ad2a40557c PS-6867 : Merge fb-prod201905 Summary: This includes two RocksDB deadlock fixes: 1. Avoid deadlock between mutex_ and log_write_mutex_: facebook/rocksdb#5437 2. WritePrepared: Fix deadlock in WriteRecoverableState: facebook/rocksdb#5306 update-submodule: rocksdb Reviewed By: hermanlee Differential Revision: D15753718 fbshipit-source-id: ec6b9b7e381
To avoid deadlock mutex_ should never be acquired before log_write_mutex_. The patch documents that and also fixes one case in ::FlushWAL that acquires mutex_ through ::WriteStatusCheck when it already holds lock on log_write_mutex_.