Bug #34235 | Random failure of wait_condition.inc with information_schema.processlist | ||
---|---|---|---|
Submitted: | 1 Feb 2008 15:26 | Modified: | 21 Jul 2008 16:31 |
Reporter: | Chuck Bell | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Information schema | Severity: | S3 (Non-critical) |
Version: | 6.0 | OS: | Any |
Assigned to: | Ingo Strüwing | CPU Architecture: | Any |
[1 Feb 2008 15:26]
Chuck Bell
[5 Feb 2008 16:23]
Chuck Bell
Some more information...and a possible fix. It appears this is a race condition between the show processlist code and the thread shutdown. Adding the following to THD::~THD() seems to treat the problem (but may not be a complete solution). ===== sql_class.cc 1.364 vs edited ===== --- 1.364/sql/sql_class.cc 2007-12-06 12:31:04 -05:00 +++ edited/sql_class.cc 2008-02-05 11:11:00 -05:00 @@ -737,7 +737,8 @@ { THD_CHECK_SENTRY(this); DBUG_ENTER("~THD()"); - /* Ensure that no one is using THD */ + mysys_var= 0; // Safety (shouldn't be needed) + /* Ensure that no one is using THD */ pthread_mutex_lock(&LOCK_delete); pthread_mutex_unlock(&LOCK_delete); add_to_status(&global_status_var, &status_var);
[22 May 2008 13:08]
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/46949 ChangeSet@1.2624, 2008-05-22 15:07:55+02:00, istruewing@stella.local +4 -0 Bug#34235 - Random failure of wait_condition.inc with information_schema.processlist Small test case fixes.
[17 Jun 2008 7:30]
Ingo Strüwing
We agreed on fixing this by converting the backup tests from BACKUP_BREAKPOINT to DEBUG_SYNC.
[20 Jun 2008 15:46]
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/48254 2638 Ingo Struewing 2008-06-20 Bug#34235 - Random failure of wait_condition.inc with information_schema.processlist Changed synchronization point calls. Adapted backup test cases and re-enabled them. Removed all unused BACKUP_BREAKPOINTs. None is left. Removed sql/backup/debug.h as it is now obsolete. Removed inclusion of debug.h from many files. Cleaned mysql-test/t/disabled.def. Fixed some random failures of wait_condition.inc with information_schema.processlist. Small fixes of the Debug Sync Facility: Added extern "C" to improve linkability on some platforms. Fixed compiler warnings. Moved locking of the mutex out of the SIGNAL and WAIT_FOR branches. Made a more verbose proc_info.
[25 Jun 2008 13:39]
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/48489 2640 Ingo Struewing 2008-06-25 Bug#34235 - Random failure of wait_condition.inc with information_schema.processlist Changed synchronization point calls. Adapted backup test cases and re-enabled them. Removed all unused BACKUP_BREAKPOINTs. None is left. Removed sql/backup/debug.h as it is now obsolete. Removed inclusion of debug.h from many files. Cleaned mysql-test/t/disabled.def. Fixed some random failures of wait_condition.inc with information_schema.processlist. Small fixes of the Debug Sync Facility: Added extern "C" to improve linkability on some platforms. Fixed compiler warnings. Moved locking of the mutex out of the SIGNAL and WAIT_FOR branches. Made a more verbose proc_info.
[25 Jun 2008 13:42]
Ingo Strüwing
Patch has been approved by both reviewers. Set status accordingly.
[26 Jun 2008 16:27]
Ingo Strüwing
Queued to mysql-6.0-backup.
[19 Jul 2008 16:01]
Ingo Strüwing
Pushed to 6.0.7. Mainly test case changes. Conversion from BACKUP_BREAKPOINT to DEBUG_SYNC. This is internal stuff. IMHO no need for documentation.
[21 Jul 2008 16:31]
Paul DuBois
No changelog entry needed.
[14 Sep 2008 5:10]
Bugs System
Pushed into 6.0.7-alpha (revid:ingo.struewing@sun.com-20080625133904-bx56g35rg2exwpv9) (version source revid:john.embretsen@sun.com-20080724122511-9c0oudz1xrdrs6y6) (pib:3)
[8 Jan 2010 15:13]
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/96399 3042 Ingo Struewing 2010-01-08 WL#5101 - MySQL Backup back port Merged revid:ingo.struewing@sun.com-20080625133904-bx56g35rg2exwpv9 Bug#34235 - Random failure of wait_condition.inc with information_schema.processlist Changed synchronization point calls. Adapted backup test cases and re-enabled them. Removed all unused BACKUP_BREAKPOINTs. None is left. Removed sql/backup/debug.h as it is now obsolete. Removed inclusion of debug.h from many files. Cleaned mysql-test/t/disabled.def. Fixed some random failures of wait_condition.inc with information_schema.processlist. Small fixes of the Debug Sync Facility: Added extern "C" to improve linkability on some platforms. Fixed compiler warnings. Moved locking of the mutex out of the SIGNAL and WAIT_FOR branches. Made a more verbose proc_info. original changeset: 2599.12.3 @ sql/lock.cc WL#5101 - MySQL Backup back port Bug#34235 - Random failure of wait_condition.inc with information_schema.processlist Added new synchronization points. Added DBUG_PRINTs. @ sql/sql_insert.cc WL#5101 - MySQL Backup back port Bug#34235 - Random failure of wait_condition.inc with information_schema.processlist Removed inclusion of obsolete header file. Changed a synchronization point call.
[12 Jan 2010 22:12]
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/96679 3059 Ingo Struewing 2010-01-12 WL#5101 - MySQL Backup back port Merged revid:ingo.struewing@sun.com-20080625133904-bx56g35rg2exwpv9 again - this time included the sync point "within_ha_commit_trans" Bug#34235 - Random failure of wait_condition.inc with information_schema.processlist Changed synchronization point calls. Adapted backup test cases and re-enabled them. Removed all unused BACKUP_BREAKPOINTs. None is left. Removed sql/backup/debug.h as it is now obsolete. Removed inclusion of debug.h from many files. Cleaned mysql-test/t/disabled.def. Fixed some random failures of wait_condition.inc with information_schema.processlist. Small fixes of the Debug Sync Facility: Added extern "C" to improve linkability on some platforms. Fixed compiler warnings. Moved locking of the mutex out of the SIGNAL and WAIT_FOR branches. Made a more verbose proc_info. original changeset: 2599.12.3 @ sql/handler.cc WL#5101 - MySQL Backup back port Included sync point "within_ha_commit_trans". Removed a compiler warning.