List:Commits« Previous MessageNext Message »
From:Guilhem Bichot Date:April 29 2009 2:23pm
Subject:bzr commit into mysql-5.1 branch Bug#40368
View as plain text  
  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 ].
Thread
bzr commit into mysql-5.1 branch Bug#40368Guilhem Bichot29 Apr