[MDEV-5597] Reduce usage of LOCK_open: LOCK_flush Created: 2014-01-31 Updated: 2014-03-14 Resolved: 2014-02-13 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | None |
| Fix Version/s: | 10.0.9 |
| Type: | Task | Priority: | Major |
| Reporter: | Sergey Vojtovich | Assignee: | Sergey Vojtovich |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||||||||||||||||||||||
| Description |
|
There is relationship between LOCK_flush and LOCK_open. Even though it is not on a hot path, it indirectly interferes with TABLE_SHARE::tdc.flushed. The latter is on hot path and will eventually be moved out of LOCK_open. The sole purpose of LOCK_flush is to let tdc_remove_table() wait for concurrent FLUSH TABLES. Replace global rwlock with per-share condition variable. |
| Comments |
| Comment by Sergey Vojtovich [ 2014-01-31 ] |
|
Sergei, please review patch for this task. |
| Comment by Sergey Vojtovich [ 2014-02-13 ] |
|
Pushed to 10.0.9, revno: 4005, revision-id: svoj@mariadb.org-20140213071355-psk0jpsarx2u7myc |