From: Date: April 29 2009 4:23pm Subject: bzr commit into mysql-5.1 branch Bug#40368 List-Archive: http://lists.mysql.com/commits/73031 Message-Id: <49F862DF.6080006@sun.com> MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset=ISO-8859-1 Content-Transfer-Encoding: 7BIT 2854 Guilhem Bichot 2009-04-29 revision-id:guilhem@stripped Fix for BUG#40368 "mysqld_safe not honouring underscore same as dash on server options". Such bug led "mysqld_safe --core_file_size=#" to not work because mysqld_safe wouldn't recognize that "ulimit" is needed; only --core-file-size=# worked. Same for --open_files_limit and other options with _ where mysqld_safe needs to do something more than passing to mysqld. Original fix by Erik Ljungstrom erik at ibiblio dot org ; slightly modified here. Tested on all internally accessible Unix. === modified file 'scripts/mysqld_safe.sh' --- scripts/mysqld_safe.sh 2009-03-16 19:28:06 +0000 +++ scripts/mysqld_safe.sh 2009-04-29 14:18:24 +0000 @@ -155,7 +155,13 @@ fi for arg do - val=`echo "$arg" | sed -e "s;--[^=]*=;;"` + # the parameter after "=", or the whole $arg if no match + val=`echo "$arg" | sed -e 's;^--[^=]*=;;'` + # what's before "=", or the whole $arg if no match + optname=`echo "$arg" | sed -e 's/^\(--[^=]*\)=.*$/\1/'` + # replace "_" by "-" ; mysqld_safe must accept "_" like mysqld does. + optname_subst=`echo "$optname" | sed 's/_/-/g'` + arg=`echo $arg | sed "s/^$optname/$optname_subst/"` case "$arg" in # these get passed explicitly to mysqld --basedir=*) MY_BASEDIR_VERSION="$val" ;; [ sent this mail by hand; issues with the automatic commit emailer ].