lp:~laurynas-biveinis/percona-server/bug1407941-5.6
- Get this branch:
- bzr branch lp:~laurynas-biveinis/percona-server/bug1407941-5.6
Branch merges
- Laurynas Biveinis (community): Approve
-
Diff: 54 lines (+17/-6)1 file modifiedstorage/innobase/srv/srv0start.cc (+17/-6)
Branch information
- Owner:
- Laurynas Biveinis
- Status:
- Merged
Recent revisions
- 724. By Laurynas Biveinis
-
Merge bug 1407941 fix from 5.5. The 5.6 version of the fix is to shift
the purge worker thread ids towards the threads_id array end. Bump
srv_max_n_threads for the log tracker thread. - 718. By Alexey Kopytov
-
Bug #1405076: Deadlock in RELEASE_LOCK()
The RELEASE_LOCK() implementation introduced by the multiple user level
locks patch can result in a deadlock under the following conditions:- connection #1 calls RELEASE_LOCK() for a previously acquired lock. In
which case MDL_lock::remove_ ticket( ) is called, which write-locks
MDL_lock::m_rwlock corresponding to the user-level MDL object. With
that lock held, MDL_map_partition: :remove( ) is called which locks
MDL_map_partition: :m_mutex protecting the hash of MDL locks belonging
to an MDL partition.- connection #2 calls RELEASE_LOCK() simultaneously for the same lock
being released by connection #1. Since connection #2 did not own the
lock, it calls MDL_map_partition: :get_lock_ owner() to check if 0 or
NULL should be returned (i.e. if the lock exists). That function also
locks both MDL_map_partition: :m_mutex and MDL_lock: :m_rwlock( ), but in
the reverse order as compared to connection #1.With the right timing for the above events we get each thread waiting
for a lock acquired by the other thread, i.e. a deadlock.Fixed by avoiding to lock MDL_lock::m_rwlock with
MDL_map_partition: :m_mutex locked. There is already infrastructure to
release the latter and acquire the former and guarantee that a reference
to an MDL_lock object is valid at the same time. It is implemented in
MDL_map_partition: :move_from_ hash_to_ lock_mutex( ), so the fix utilizes
it to remove the deadlock condition. - 716. By Jenkins Master <email address hidden>
-
Merge lp:~hrvojem/percona-server/bug1218767-5.6
http://jenkins. percona. com/job/ merge-PS- 5.6-docs- kickoff/ 69/
Branch metadata
- Branch format:
- Branch format 7
- Repository format:
- Bazaar repository format 2a (needs bzr 1.16 or later)
- Stacked on:
- lp:percona-server/5.6