Bug #34305 | show slave status handling segfaults when slave io is about to leave | ||
---|---|---|---|
Submitted: | 5 Feb 2008 11:35 | Modified: | 16 Feb 2008 10:45 |
Reporter: | Andrei Elkin | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Replication | Severity: | S2 (Serious) |
Version: | 5.x, x>=0 | OS: | Any |
Assigned to: | Andrei Elkin | CPU Architecture: | Any |
[5 Feb 2008 11:35]
Andrei Elkin
[5 Feb 2008 15:36]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/41718 ChangeSet@1.2576, 2008-02-05 17:36:26+02:00, aelkin@koti.dsl.inet.fi +2 -0 Bug #34305 show slave status handling segfaults when slave io is about to leave The artifact was caused by a flaw in concurrent accessing the slave's io thd by the io itself and a handling show slave status thread. Namely, show_master_info did not acquire mi->run_lock mutex that is specified for mi->io_thd member. Fixed with deploying the mutex locking and unlocking. The mutex is kept short time and without interleaving with mi->data_lock mutex. Todo: to report and fix an issue with sys_var_slave_skip_counter::{methods} seem to acquire incorrectly active_mi->rli.run_lock instead of the specified active_mi->rli.data_lock A test case is difficult to compose, so rpl_packet should continue serving as the indicator.
[5 Feb 2008 15:50]
Andrei Elkin
Pushed to mysql-5.0-rpl.
[15 Feb 2008 13:40]
Bugs System
Pushed into 5.0.58
[15 Feb 2008 13:40]
Bugs System
Pushed into 5.1.24-rc
[15 Feb 2008 13:41]
Bugs System
Pushed into 6.0.5-alpha
[16 Feb 2008 10:45]
Jon Stephens
Documented in the 5.0.48, 5.1.24, and 6.0.5 changelogs as follows: SHOW SLAVE STATUS failed when slave I/O was about to terminate.
[2 Apr 2008 19:41]
Jon Stephens
Also noted in the 5.1.23-ndb-6.2.14 and 5.1.23-ndb-6.3.11 changelogs.