← Back to team overview

ourdelta-developers team mailing list archive

[Bug 290190] Re: mysqld_safe does not honour underscores in options like mysqld does

 

This ought to do it:


--- ./mysql-5.0.67-sail-erik-build/scripts/mysqld_safe  2008-10-20 02:13:55.000000000 +0100
+++ mysqld_safe 2008-10-28 11:19:51.000000000 +0000
@@ -63,6 +63,10 @@
   fi
 
   for arg do
+    substr_a=$(echo $arg | sed -e 's/\(...\)\(.*\)=\(.*\)/\2/');
+    substr_b=$(echo $substr_a | sed s/_/-/g);
+    arg=`echo $arg | sed s/$substr_a/$substr_b/g`
+    
     case "$arg" in
       --skip-kill-mysqld*)
         KILL_MYSQLD=0;

It replaces all underscores with dashes, apart from the two initial
dashes and any underscores trailing the = character

So --some_option=argument_to_option would become --some-
option=argument_to_option

Can anyone see an issue with this?

-- 
mysqld_safe does not honour underscores in options like mysqld does
https://bugs.launchpad.net/bugs/290190
You received this bug notification because you are a member of OurDelta-
developers, which is the registrant for OurDelta.

Status in OurDelta - Builds for MySQL: Confirmed

Bug description:
mysqld accepts both dashes and underscores in server options, however mysqld_safe does not.
Since it's unclear from the user's perspective (and they shouldn't NEED to know!) which options get processed only by mysqld_safe, this can mean that they use an option in the wrong way but don't notice it.
Example... open_files_limit
When written like that, it mysqld_safe will not recognise it and thus not call ulimit -n
...
The option WILL be feed to mysqld so it shows the "correct" number in SHOW GLOBAL VARIABLES. Except, since ulimit wasn't called, it's not actually in effect!

See http://bugs.mysql.com/40368



References