Hello community,

here is the log from the commit of package mysql-community-server for 
openSUSE:Factory checked in at 2013-04-23 15:11:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mysql-community-server (Old)
 and      /work/SRC/openSUSE:Factory/.mysql-community-server.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "mysql-community-server", Maintainer is ""

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/mysql-community-server/mysql-community-server.changes
    2013-03-20 11:54:50.000000000 +0100
+++ 
/work/SRC/openSUSE:Factory/.mysql-community-server.new/mysql-community-server.changes
       2013-04-23 15:11:13.000000000 +0200
@@ -1,0 +2,12 @@
+Mon Apr 22 11:36:33 UTC 2013 - mhruse...@suse.com
+
+- few fixes to init script backported form SLE
+  (mainly one race condition during update)
+
+-------------------------------------------------------------------
+Mon Apr 22 10:49:16 UTC 2013 - mhruse...@suse.com
+
+- updated to 5.5.31, see
+  http://dev.mysql.com/doc/relnotes/mysql/5.5/en/news-5-5-31.html
+
+-------------------------------------------------------------------

Old:
----
  mysql-5.5.30.tar.bz2

New:
----
  mysql-5.5.31.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ mysql-community-server.spec ++++++
--- /var/tmp/diff_new_pack.9R7xux/_old  2013-04-23 15:11:20.000000000 +0200
+++ /var/tmp/diff_new_pack.9R7xux/_new  2013-04-23 15:11:20.000000000 +0200
@@ -35,9 +35,9 @@
 Summary:        Server part of MySQL Community Server
 License:        SUSE-GPL-2.0-with-FLOSS-exception
 Group:          Productivity/Databases/Servers
-Version:        5.5.30
+Version:        5.5.31
 Release:        0
-%define srv_vers 5.5.30
+%define srv_vers 5.5.31
 Url:            http://www.mysql.com
 Source:         mysql-%{version}.tar.bz2
 Source2:        baselibs.conf
@@ -77,9 +77,6 @@
 %if 0%{?fedora_version} > 11
 BuildRequires:  sqlite
 %endif
-%if 0%{?suse_version} >= 1210
-BuildRequires:  systemd
-%endif
 %if 0%{?suse_version} > 1030
 Recommends:     logrotate
 %else
@@ -91,6 +88,7 @@
 Requires:       perl-base
 # systemd requirements for openSUSE >= 12.1
 %if 0%{?suse_version} >= 1210
+BuildRequires:  systemd
 %{?systemd_requires}
 %endif
 Provides:       mysql = %{srv_vers}
@@ -413,10 +411,6 @@
 #######################################################################
 %preun
 [ $1 = 1 ] || /usr/sbin/rcmysql stop
-# systemd requirment
-%if 0%{?suse_version} >= 1210
-%service_del_preun mysql.service
-%endif
 
 %pretrans -p <lua>
 if posix.access("/usr/sbin/rcmysql", "x") then
@@ -427,7 +421,6 @@
     os.execute("/bin/mkdir -p /var/run/mysql/restart")
   end
 end
-
 dbfile="var/mysql/mysql/db.ISM"
 olddir="var/mysql"
 newdir="var/lib/mysql"
@@ -480,11 +473,11 @@
 if [ $1 = 0 ]; then
        %install_info_delete --info-dir=%{_infodir} %{_infodir}/mysql.info.*
        %{insserv_cleanup}
+       rm -f "/var/lib/systemd/migrated/mysql.service"
+       if [ -x /usr/bin/systemctl ]; then
+               /usr/bin/systemctl daemon-reload >/dev/null 2>&1 || :
+       fi
 fi
-# systemd requirment
-%if 0%{?suse_version} >= 1210
-%service_del_postun mysql.service
-%endif
 
 #######################################################################
 # Files section                                                       #

++++++ build.inc ++++++
--- /var/tmp/diff_new_pack.9R7xux/_old  2013-04-23 15:11:20.000000000 +0200
+++ /var/tmp/diff_new_pack.9R7xux/_new  2013-04-23 15:11:20.000000000 +0200
@@ -109,6 +109,7 @@
                        -DWITH_INNOBASE_STORAGE_ENGINE=1                        
     \
                        -DWITH_PERFSCHEMA_STORAGE_ENGINE=1                      
     \
                        -DWITH_EMBEDDED_SERVER=true                             
     \
+                       -DCOMPILATION_COMMENT="openSUSE package"                
     \
                        -DDENABLE_DOWNLOADS=false                               
     \
                        "$@" ..
        make %{?jobs:-j%jobs}

++++++ configuration-tweaks.tar.bz2 ++++++

++++++ mysql-5.5.30.tar.bz2 -> mysql-5.5.31.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/mysql-community-server/mysql-5.5.30.tar.bz2 
/work/SRC/openSUSE:Factory/.mysql-community-server.new/mysql-5.5.31.tar.bz2 
differ: char 11, line 1

++++++ mysql-patches.tar.bz2 ++++++

++++++ rc.mysql-multi ++++++
--- /var/tmp/diff_new_pack.9R7xux/_old  2013-04-23 15:11:21.000000000 +0200
+++ /var/tmp/diff_new_pack.9R7xux/_new  2013-04-23 15:11:21.000000000 +0200
@@ -91,9 +91,14 @@
 # See https://bugzilla.novell.com/show_bug.cgi?id=223209
 kill_mysql ()
 {
-       local pid exe
-       test -e "$pid_file" || return 7  # not running
-       pid=`cat "$pid_file"` || return 4  # insufficient privileges
+       local pid exe test_pid_file
+       if [ "$1" ]; then
+               test_pid_file="$1"
+       else
+               test_pid_file="$pid_file"
+       fi
+       test -e "$test_pid_file" || return 7  # not running
+       pid=`cat "$test_pid_file"` || return 4  # insufficient privileges
        if ! test -e /proc/version; then
                mount -n -t proc proc /proc
                test -e /proc/version || return 100
@@ -106,10 +111,10 @@
        kill -CONT "$pid"
        for i in `seq 3000`; do
                # mysqld removes its pid file
-               test -e "$pid_file" || return 0
+               test -e "$test_pid_file" || return 0
                LC_ALL=C sleep 0.1
        done
-       test -e "$pid_file" || return 0
+       test -e "$test_pid_file" || return 0
        return 1
 }
 
@@ -339,12 +344,14 @@
                check_obsolete
                # Run mysql_upgrade on every package install/upgrade. Not 
allways
                # necessary, but doesn't do any harm.
-               if test -f "$datadir/.run-mysql_upgrade" ; then
-                       echo >> "$log_upgrade"
+               if [ -f "/var/lib/mysql/.run-mysql_upgrade" ]; then
+                       echo > "$log_upgrade"
                        echo "`LANG="" date` - upgrading MySQL..." >> 
"$log_upgrade"
                        echo >> "$log_upgrade"
                        echo "Will update MySQL now, if you encounter any 
problems, please read following file:" | tee -a "$log_upgrade"
                        echo "  /usr/share/doc/packages/mysql/README.SuSE" | 
tee -a "$log_upgrade"
+                       sed -i -e 's|^\([^#]*skip-locking\)|#\1|' \
+                              -e 's|^\([^#]*skip-federated\)|#\1|' /etc/my.cnf
                        # Check logs for inconsistencies
                        SRCLOGS=""
                        ALL_SRCLOGS=""
@@ -364,10 +371,13 @@
                                fi
                        fi
                        check_obsolete >> "$log_upgrade"
+
                        # instead of running mysqld --bootstrap, which wouldn't 
allow
                        # us to run mysql_upgrade, we start a full-featured 
server with
                        # --skip-grant-tables and restict access to it by unix
                        # permissions of the named socket
+
+
                        protected="`cat /var/run/mysql/protecteddir 2> 
/dev/null`"
                        if [ -d "$protected" ]; then
                                pid="`cat "$protected/mysqld.pid" 2> /dev/null`"
@@ -375,6 +385,7 @@
                                        [ "`readlink "/proc/$pid/exe" | grep 
"mysql"`" ]; then
                                                echo "Can't update as another 
updating process is currently running" | tee -a "$log_upgrade"
                                                echo "Please check process $pid 
and terminate it before restarting MySQL" | tee -a "$log_upgrade"
+                                               touch 
/var/lib/mysql/.run-mysql_upgrade
                                                rc_failed; rc_status -v; 
rc_exit;
                                else
                                        rm -rf "$protected"
@@ -382,9 +393,16 @@
                        fi
                        protected="`mktemp -d -p /var/tmp 
mysql-protected.XXXXXX | tee /var/run/mysql/protecteddir`"
                        export TMPDIR="$TEMPDIR"
+                       
+                       # Run upgrade, double check
+                       # We need to restart mysql every time as programs
+                       # reloads privileges tables, so we can get lock out
+                       for cmd in "/usr/bin/mysql_upgrade"                  \
+                                  "/usr/bin/mysql_upgrade"; do
                        [ -z "$protected" ] || chown 
"$mysql_daemon_user:$mysql_daemon_group" "$protected"
                        [ "`ls -ld "$protected" | grep 
"^drwx------[\\.\+]\?[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`"
 ] || {
                                echo "Can't create secure $protected" | tee -a 
"$log_upgrade"
+                               touch /var/lib/mysql/.run-mysql_upgrade
                                rc_failed; rc_status -v; rc_exit;
                        }
 
@@ -403,21 +421,49 @@
                        wait_for_socket "$protected/mysql.sock" || {
                                echo "error: $protected/mysql.sock file didn't 
appeared... " | tee -a "$log_upgrade"
                                echo "       Try checking 
\"$log_upgrade_run\"... " | tee -a "$log_upgrade"
+                               touch /var/lib/mysql/.run-mysql_upgrade
                                rc_failed; rc_status -v; rc_exit;
                        }
-                       echo "Upgrading MySQL... " | tee -a "$log_upgrade"
-                       /usr/bin/mysql_upgrade \
-                               --socket="$protected/mysql.sock" | tee -a 
"$log_upgrade"
+                       if [ "`grep "Upgrading MySQL..." "$log_upgrade"`" ]; 
then
+                               echo "Rechecking whether everything is Ok... " 
| tee -a "$log_upgrade"
+                               LANG=C $cmd --no-defaults --force \
+                                       --socket="$protected/mysql.sock" | \
+                                       sed -e 's|^|\ \ \ |'             | \
+                                       tee -a "$log_upgrade"
+                       else
+                               echo "Upgrading MySQL... " | tee -a 
"$log_upgrade"
+                                       LANG=C $cmd --no-defaults --force \
+                                               
--socket="$protected/mysql.sock"               | \
+                                               sed -e 's|^|\ \ \ |'            
                 \
+                                                   -e 's|error|info|'          
                 \
+                                                   -e 's|\(Table\ upgrade\ 
required.\).*|\1|' | \
+                                               tee -a "$log_upgrade"
+                       fi
                        [ "$PIPESTATUS" -ne 0 ] && {
                                rc_failed; rc_status -v;
-                               kill -TERM "`cat $protected/mysqld.pid`"
+                               kill_mysql "$protected/mysqld.pid"
                                rc_exit; }
-                       kill -TERM "`cat $protected/mysqld.pid`"
+
+                       kill_mysql "$protected/mysqld.pid" || {
+                               echo "error: Can't stop protected MySQL... " | 
tee -a "$log_upgrade"
+                               rc_failed; rc_status -v;
+                               kill_mysql "$protected/mysqld.pid"
+                               rc_exit; }
+
+                       # Everything went fine
+                       if [ -z "`grep REPAIR "$log_upgrade"`" ] && \
+                          [ -z "`grep "Table\ upgrade\ required" 
"$log_upgrade"`" ]; then
+                               break
+                       fi
+
+                       done # end of upgrade
+
                        rm -rf "$protected"
                        # Fix ownerships and permissions for $datadir
                        chmod 750 "$datadir"
                        chown -R "$mysql_daemon_user:$mysql_daemon_group" 
"$datadir"
-                       rm -f "$datadir/.run-mysql_upgrade" \
+                       rm -f /var/lib/mysql/.run-mysql_upgrade \
+                       rm -f /var/lib/mysql/.force_upgrade     \
                        "$datadir"/{update-stamp-*,mysql/stamp-4.1} # used in 
the past
                        chown "$mysql_daemon_user:$mysql_daemon_group" 
"$log_upgrade"
                        chmod 640 "$log_upgrade"

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to