Bug #33345 | loading example handler from command line kills server | ||
---|---|---|---|
Submitted: | 18 Dec 2007 20:33 | Modified: | 7 Apr 2008 17:25 |
Reporter: | Oleksandr Byelkin | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server | Severity: | S6 (Debug Builds) |
Version: | 5.1 | OS: | Any |
Assigned to: | Oleksandr Byelkin | CPU Architecture: | Any |
Tags: | plugin |
[18 Dec 2007 20:33]
Oleksandr Byelkin
[19 Dec 2007 6:07]
Oleksandr Byelkin
This patch fixes the problem: ===== sql/sql_plugin.cc 1.78 vs edited ===== --- 1.78/sql/sql_plugin.cc 2007-12-13 13:49:55 +02:00 +++ edited/sql/sql_plugin.cc 2007-12-19 08:02:27 +02:00 @@ -1422,6 +1422,7 @@ #endif case ';': name.str[name.length]= '\0'; + pthread_mutex_lock(&LOCK_plugin); if (str != &dl) // load all plugins in named module { dl= name; @@ -1445,6 +1446,7 @@ if (plugin_add(tmp_root, &name, &dl, argc, argv, REPORT_TO_LOG)) goto error; } + pthread_mutex_unlock(&LOCK_plugin); name.length= dl.length= 0; dl.str= NULL; name.str= p= buffer; str= &name; @@ -1464,6 +1466,7 @@ } DBUG_RETURN(FALSE); error: + pthread_mutex_unlock(&LOCK_plugin); sql_print_error("Couldn't load plugin named '%s' with soname '%s'.", name.str, dl.str); DBUG_RETURN(TRUE);
[19 Dec 2007 8: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/40177 ChangeSet@1.2680, 2007-12-19 10:13:13+02:00, bell@desktop.sanja.is.com.ua +1 -0 Mutex protection added for loading plugins. (BUG#33345)
[29 Mar 2008 16:11]
Bugs System
Pushed into 5.1.24-rc
[1 Apr 2008 19:09]
Paul DuBois
Noted in 5.1.24 changelog. Loading plugins via command-line options to mysqld could cause an assertion failure. Resetting report to Patch queued waiting for push into 6.0.x.
[3 Apr 2008 13:01]
Bugs System
Pushed into 6.0.5-alpha
[7 Apr 2008 17:25]
Paul DuBois
Noted in 6.0.5 changelog.