Merge lp:~paul-mccullagh/maria/bug-422550 into lp:~maria-captains/maria/5.1-converting

Proposed by Paul McCullagh
Status: Merged
Merged at revision: not available
Proposed branch: lp:~paul-mccullagh/maria/bug-422550
Merge into: lp:~maria-captains/maria/5.1-converting
Diff against target: None lines
To merge this branch: bzr merge lp:~paul-mccullagh/maria/bug-422550
Reviewer Review Type Date Requested Status
Kristian Nielsen Approve
Review via email: mp+11076@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Paul McCullagh (paul-mccullagh) wrote :

This patch fixes the bug reported and a few variations along the same lines.

The problem is that PBXT starts a background process to do recovery, when the engine is initialized.

The background process is necessary because MySQL holds internal locks during the init() engine call that prevent the engine from creating a MySQL THD object. PBXT needs the THD object in order to open tables, that are referenced during recovery.

If MySQL shuts down immediately after init(), due to some error, then the background recovery process must be cleaned up before the engine is de-initialized. This was the main source of the crash.

Other related crashes occur because it sometimes happens that when the background process frees up the THD, this cause the engine to be de-initialized (because the THD had the last reference to the engine). This callback situation needed to be handled correctly.

Revision history for this message
Kristian Nielsen (knielsen) wrote :

Thanks for the speedy fix!

I have pushed this into lp:maria.

review: Approve

Preview Diff

Empty

Subscribers

People subscribed via source and target branches