Package: mysql-server-5.0
Version: 5.0.24a-1
Severity: minor
Tags: patch

Hi,

the attached patch changes the mysql-server-5.0 init.d script(s) to use lsb
logging functions.

Regards,
David

--
David Härdeman
diff -ur ./mysql-dfsg-5.0-5.0.24a.orig/debian/control 
./mysql-dfsg-5.0-5.0.24a/debian/control
--- ./mysql-dfsg-5.0-5.0.24a.orig/debian/control        2006-09-03 
17:27:46.000000000 +0200
+++ ./mysql-dfsg-5.0-5.0.24a/debian/control     2006-09-03 18:04:56.000000000 
+0200
@@ -67,7 +67,7 @@
 Architecture: any                                                              
 
 Suggests: tinyca
 Recommends: mailx
-Depends: mysql-common (>= ${Source-Version}), mysql-client-5.0 (>= 
${Source-Version}), libdbi-perl, perl (>= 5.6), ${shlibs:Depends}, 
${misc:Depends}, adduser (>= 3.40), psmisc, passwd
+Depends: mysql-common (>= ${Source-Version}), mysql-client-5.0 (>= 
${Source-Version}), libdbi-perl, perl (>= 5.6), ${shlibs:Depends}, 
${misc:Depends}, adduser (>= 3.40), psmisc, passwd, lsb-base (>= 3.0-10)
 Conflicts: mysql-server (<< ${Source-Version}), mysql-server-4.1
 Provides: mysql-server, virtual-mysql-server, mysql-server-4.1
 Replaces: mysql-server (<< ${Source-Version}), mysql-server-4.1
diff -ur ./mysql-dfsg-5.0-5.0.24a.orig/debian/mysql-server-5.0.mysql.init 
./mysql-dfsg-5.0-5.0.24a/debian/mysql-server-5.0.mysql.init
--- ./mysql-dfsg-5.0-5.0.24a.orig/debian/mysql-server-5.0.mysql.init    
2006-09-03 17:27:46.000000000 +0200
+++ ./mysql-dfsg-5.0-5.0.24a/debian/mysql-server-5.0.mysql.init 2006-09-03 
17:59:29.000000000 +0200
@@ -10,6 +10,8 @@
 
 test -x /usr/sbin/mysqld || exit 0
 
+. /lib/lsb/init-functions
+
 SELF=$(cd $(dirname $0); pwd -P)/$(basename $0)
 CONF=/etc/mysql/my.cnf
 MYADMIN="/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf"
@@ -41,12 +43,14 @@
 sanity_checks() {
   # check for config file
   if [ ! -r /etc/mysql/my.cnf ]; then
-    /bin/echo "WARNING: /etc/mysql/my.cnf cannot be read. See 
README.Debian.gz" | $ERR_LOGGER -s
-  fi 
+    log_warning_msg "$0: WARNING: /etc/mysql/my.cnf cannot be read. See 
README.Debian.gz"
+    echo "WARNING: /etc/mysql/my.cnf cannot be read. See README.Debian.gz" | 
$ERR_LOGGER
+  fi
 
   datadir=`mysqld_get_param datadir`
   if LC_ALL=C BLOCKSIZE= df --portability $datadir/. | tail -n 1 | awk '{ exit 
($4>4096) }'; then
-    /bin/echo "ERROR: The partition with $datadir is too full!" | $ERR_LOGGER 
-s
+    log_failure_msg "$0: ERROR: The partition with $datadir is too full!"
+    echo "ERROR: The partition with $datadir is too full!" | $ERR_LOGGER
     exit 1
   fi
 }
@@ -69,7 +73,7 @@
        return 0 # EXIT_SUCCESS
     else
        if [ "$2" = "warn" ]; then
-           /bin/echo -e "$ps_alive processes alive and '$MYADMIN ping' 
resulted in\n$ping_output\n" | $ERR_LOGGER -p daemon.debug
+           echo -e "$ps_alive processes alive and '$MYADMIN ping' resulted 
in\n$ping_output\n" | $ERR_LOGGER -p daemon.debug
        fi
        return 1 # EXIT_FAILURE
     fi
@@ -83,33 +87,35 @@
   'start')
        sanity_checks;
        # Start daemon
-       echo -n "Starting MySQL database server: mysqld"
+       log_daemon_msg "Starting MySQL database server" "mysqld"
        if mysqld_status check_alive nowarn; then
-          echo "...already running."
+          log_progress_msg "already running"
+          log_end_msg 0
        else
            /usr/bin/mysqld_safe > /dev/null 2>&1 &
            # 6s was reported in #352070 to be too few when using ndbcluster
            for i in 1 2 3 4 5 6 7 8 9 10 11 12 13 14; do
                 sleep 1
                if mysqld_status check_alive nowarn ; then break; fi
-                echo "."
-            done
+               log_progress_msg "."
+           done
            if mysqld_status check_alive warn; then
-                echo "."
+                log_end_msg 0
                # Now start mysqlcheck or whatever the admin wants.
-               /etc/mysql/debian-start
+               output=$(/etc/mysql/debian-start)
+               [ -n "$output" ] && log_action_msg "$output"
            else
-               echo "...failed or took more than 6s."
-               /bin/echo -e "\tPlease take a look at the syslog."
+               log_end_msg 1
+               log_failure_msg "Please take a look at the syslog"
            fi
        fi
 
        # Some warnings
         if $MYADMIN variables | egrep -q have_bdb.*YES; then
-            /bin/echo "BerkeleyDB is obsolete, see 
/usr/share/doc/mysql-server-5.0/README.Debian.gz" | $ERR_LOGGER -p daemon.info
+            echo "BerkeleyDB is obsolete, see 
/usr/share/doc/mysql-server-5.0/README.Debian.gz" | $ERR_LOGGER -p daemon.info
         fi
         if [ -f /etc/mysql/debian-log-rotate.conf ]; then
-            /bin/echo "/etc/mysql/debian-log-rotate.conf is obsolete, see 
/usr/share/doc/mysql-server-5.0/NEWS.Debian.gz" | $ERR_LOGGER -p daemon.info
+            echo "/etc/mysql/debian-log-rotate.conf is obsolete, see 
/usr/share/doc/mysql-server-5.0/NEWS.Debian.gz" | $ERR_LOGGER -p daemon.info
         fi
        ;;
 
@@ -118,13 +124,15 @@
        # at least for cron, we can rely on it here, too. (although we have 
        # to specify it explicit as e.g. sudo environments points to the normal
        # users home and not /root)
-       echo -n "Stopping MySQL database server: mysqld"        
+       log_daemon_msg "Stopping MySQL database server" "mysqld"
        if ! mysqld_status check_dead nowarn; then
          set +e
          shutdown_out=`$MYADMIN shutdown 2>&1`; r=$?
          set -e
          if [ "$r" -ne 0 ]; then
-           /bin/echo -e -n "...failed.\n$shutdown_out\nKilling MySQL database 
server by signal: mysqld"
+           log_end_msg 1
+           [ "$VERBOSE" != "no" ] && log_failure_msg "Error: $shutdown_out"
+           log_daemon_msg "Killing MySQL database server by signal" "mysqld"
            killall -15 mysqld
             server_down=
            for i in 1 2 3 4 5 6 7 8 9 10; do
@@ -136,11 +144,11 @@
         fi
 
         if ! mysqld_status check_dead warn; then
-         echo "...failed."
-         echo "Please stop MySQL manually and read 
/usr/share/doc/mysql-server-5.0/README.Debian.gz!"
+         log_end_msg 1
+         log_failure_msg "Please stop MySQL manually and read 
/usr/share/doc/mysql-server-5.0/README.Debian.gz!"
          exit -1
        else
-         echo "."
+         log_end_msg 0
         fi
        ;;
 
@@ -150,16 +158,16 @@
        ;;
 
   'reload'|'force-reload')
-       echo -n "Reloading MySQL database server: mysqld"
+       log_daemon_msg "Reloading MySQL database server" "mysqld"
        $MYADMIN reload
-       echo "."
+       log_end_msg 0
        ;;
 
   'status')
        if mysqld_status check_alive nowarn; then
-         $MYADMIN version
+         log_action_msg "$($MYADMIN version)"
        else
-         echo "MySQL is stopped."
+         log_action_msg "MySQL is stopped."
          exit 3
        fi
        ;;
diff -ur ./mysql-dfsg-5.0-5.0.24a.orig/debian/mysql-server-5.0.mysql-ndb.init 
./mysql-dfsg-5.0-5.0.24a/debian/mysql-server-5.0.mysql-ndb.init
--- ./mysql-dfsg-5.0-5.0.24a.orig/debian/mysql-server-5.0.mysql-ndb.init        
2006-09-03 17:27:46.000000000 +0200
+++ ./mysql-dfsg-5.0-5.0.24a/debian/mysql-server-5.0.mysql-ndb.init     
2006-09-03 18:01:58.000000000 +0200
@@ -24,6 +24,7 @@
 # See /usr/share/doc/mysql-server-*/README.Debian for more information.
 test -x $DAEMON || exit 0
 if $DAEMON --help | grep -q '^ndb-connectstring.*No default value'; then exit 
0; fi
+. /lib/lsb/init-functions
 
 #
 # main()
@@ -33,30 +34,30 @@
        # Start daemon
         # Creatign a PID file does not work as the master process forks
         # a child with different PID and then terminates itself.
-       echo -n "Starting MySQL NDB cluster server: ndbd"
+       log_daemon_msg "Starting MySQL NDB cluster server" "ndbd"
        if start-stop-daemon \
                --start \
                --exec $DAEMON \
                --user mysql
        then
-         echo "."
+         log_end_msg 0
        else
-         echo "...failed."
-         /bin/echo -e "\tPlease take a look at the syslog."
+         log_end_msg 1
+         log_warning_msg "Please take a look at the syslog."
          exit 1
        fi                        
        ;;
 
   'stop')
-       echo -n "Stopping MySQL NDB cluster management server: ndbd"    
+       log_daemon_msg "Stopping MySQL NDB cluster management server" "ndbd"    
        if start-stop-daemon \
                --stop \
                --oknodo \
                --exec $DAEMON
        then
-         echo "."
+         log_end_msg 0
        else
-         echo "...failed."
+         log_end_msg 1
          exit 1
         fi
        ;;
diff -ur 
./mysql-dfsg-5.0-5.0.24a.orig/debian/mysql-server-5.0.mysql-ndb-mgm.init 
./mysql-dfsg-5.0-5.0.24a/debian/mysql-server-5.0.mysql-ndb-mgm.init
--- ./mysql-dfsg-5.0-5.0.24a.orig/debian/mysql-server-5.0.mysql-ndb-mgm.init    
2006-09-03 17:27:46.000000000 +0200
+++ ./mysql-dfsg-5.0-5.0.24a/debian/mysql-server-5.0.mysql-ndb-mgm.init 
2006-09-03 18:03:39.000000000 +0200
@@ -24,6 +24,7 @@
 # See /usr/share/doc/mysql-server-*/README.Debian for more information.
 test -x $DAEMON || exit 0
 test -r $CONF || exit 0
+. /lib/lsb/init-functions
 
 #
 # main()
@@ -31,7 +32,7 @@
 case "${1:-''}" in
   'start')
        # Start daemon
-       echo -n "Starting MySQL NDB cluster management server: ndb_mgmd"
+       log_daemon_msg "Starting MySQL NDB cluster management server" "ndb_mgmd"
        # --pid-file does not work as the daemon forks itself with $PID=$PID+1
        if start-stop-daemon \
                --start \
@@ -40,24 +41,24 @@
                -- \
                -f $CONF
        then
-         echo "."
+         log_end_msg 0
        else
-         echo "...failed."
-         /bin/echo -e "\tPlease take a look at the syslog."
+         log_end_msg 1
+         log_warning_msg "Please take a look at the syslog."
          exit 1
        fi                        
        ;;
 
   'stop')
-       echo -n "Stopping MySQL NDB cluster management server: ndb_mgmd"        
+       log_daemon_msg "Stopping MySQL NDB cluster management server" 
"ndb_mgmd"        
        if start-stop-daemon \
                --stop \
                --oknodo \
                --exec $DAEMON
        then
-         echo "."
+         log_end_msg 0
        else
-         echo "...failed."
+         log_end_msg 1
          exit 1
         fi
        ;;

Reply via email to