Hello community,

here is the log from the commit of package mariadb for openSUSE:Factory checked 
in at 2013-07-27 15:48:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mariadb (Old)
 and      /work/SRC/openSUSE:Factory/.mariadb.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "mariadb"

Changes:
--------
--- /work/SRC/openSUSE:Factory/mariadb/mariadb.changes  2013-03-22 
12:01:43.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.mariadb.new/mariadb.changes     2013-07-27 
15:48:15.000000000 +0200
@@ -1,0 +2,55 @@
+Thu Jul 25 13:08:06 CEST 2013 - [email protected]
+
+- avoiding file conflicts with mytop
+
+-------------------------------------------------------------------
+Tue Jul 23 10:28:10 CEST 2013 - [email protected]
+
+- updated to MariaDB 5.5.32
+  * Release notes:
+    http://kb.askmonty.org/v/mariadb-5532-release-notes
+  * Changelog:
+    http://kb.askmonty.org/v/mariadb-5532-changelog
+
+-------------------------------------------------------------------
+Thu Jun  6 13:22:37 UTC 2013 - [email protected]
+
+- enable support for libaio (bnc#796164)
+- better rights for logdir (bnc#789263)
+
+-------------------------------------------------------------------
+Wed Jun  5 08:48:42 UTC 2013 - [email protected]
+
+- Moving directory with configuration to upstream default
+  (/etc/mysql -> /etc/my.cnf.d)
+
+-------------------------------------------------------------------
+Wed Jun  5 05:51:45 UTC 2013 - [email protected]
+
+- New default config file
+
+-------------------------------------------------------------------
+Fri May 24 08:27:48 CEST 2013 - [email protected]
+
+- updated to MariaDB 5.5.31
+  * Release notes:
+    http://kb.askmonty.org/v/mariadb-5531-release-notes
+  * Changelog:
+    http://kb.askmonty.org/v/mariadb-5531-changelog
+- cleanups in upgrade procedure
+
+-------------------------------------------------------------------
+Tue Mar 26 13:56:50 CET 2013 - [email protected]
+
+- little cleanup of systemd
+
+-------------------------------------------------------------------
+Tue Mar 26 11:11:37 CET 2013 - [email protected]
+
+- updated to MariaDB 5.5.30
+  * Release notes:
+    http://kb.askmonty.org/v/mariadb-5530-release-notes
+  * Changelog:
+    http://kb.askmonty.org/v/mariadb-5530-changelog
+
+-------------------------------------------------------------------

Old:
----
  mariadb-5.5.29.tar.bz2

New:
----
  mariadb-5.5.32.tar.bz2
  my.ini

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

Other differences:
------------------
++++++ mariadb.spec ++++++
--- /var/tmp/diff_new_pack.Y1AN4R/_old  2013-07-27 15:48:16.000000000 +0200
+++ /var/tmp/diff_new_pack.Y1AN4R/_new  2013-07-27 15:48:16.000000000 +0200
@@ -35,9 +35,9 @@
 Summary:        Server part of MariaDB
 License:        SUSE-GPL-2.0-with-FLOSS-exception
 Group:          Productivity/Databases/Servers
-Version:        5.5.29
+Version:        5.5.32
 Release:        0
-%define srv_vers 5.5.29
+%define srv_vers 5.5.32
 Url:            http://www.mariab.org
 Source:         mariadb-%{version}.tar.bz2
 Source2:        baselibs.conf
@@ -51,6 +51,7 @@
 Source11:       install.inc
 Source12:       series
 Source13:       configuration-tweaks.tar.bz2
+Source14:       my.ini
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 %if 0%{?suse_version}
 PreReq:         pwdutils
@@ -60,6 +61,8 @@
 BuildRequires:  automake
 BuildRequires:  cmake
 BuildRequires:  gcc-c++
+BuildRequires:  libaio-devel
+BuildRequires:  libedit-devel
 BuildRequires:  libtool
 BuildRequires:  ncurses-devel
 BuildRequires:  openssl-devel
@@ -77,9 +80,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 +91,7 @@
 Requires:       perl-base
 # systemd requirements for openSUSE >= 12.1
 %if 0%{?suse_version} >= 1210
+BuildRequires:  systemd
 %{?systemd_requires}
 %endif
 Provides:       mysql = %{srv_vers}
@@ -171,6 +172,9 @@
 Summary:        Client for MariaDB
 Group:          Productivity/Databases/Clients
 Provides:       mysql-client = %{srv_vers}
+%if 0%{?suse_version}
+PreReq:         pwdutils
+%endif
 %if 0%{?use_extra_provides} > 0
 Provides:       %{extra_provides}-client = %{version}
 Obsoletes:      %{extra_provides}-client < %{version}
@@ -385,6 +389,12 @@
 %service_add_pre mysql.service
 %endif
 
+%pre client
+/usr/sbin/groupadd -r mysql >/dev/null 2>/dev/null || :
+/usr/sbin/useradd -r -o -g mysql -u 60 -c "MySQL database admin" \
+                  -s /bin/false -d /var/lib/mysql mysql 2> /dev/null || :
+/usr/sbin/usermod -g mysql -s /bin/false mysql || :
+
 %post
 # systemd requirment 
 %if 0%{?suse_version} >= 1210
@@ -396,10 +406,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
@@ -411,16 +417,8 @@
   end
 end
 
-dbfile="var/mysql/mysql/db.ISM"
-olddir="var/mysql"
-newdir="var/lib/mysql"
--- Do the database files still belong to root (very old installation)?
--- Change ownerships
-if posix.stat(dbfile, "uid") == 0 then
-  os.execute("/bin/chown -Rv mysql:mysql var/mysql/")
-end
-
 %posttrans
+[ -z "`ls %{_infodir}/mysql.info.* 2> /dev/null`" ] || \
 %install_info --info-dir=%{_infodir} %{_infodir}/mysql.info.*
 if [ -d /var/lib/mysql ]; then
        touch /var/lib/mysql/.run-mysql_upgrade
@@ -463,11 +461,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                                                       #
@@ -476,8 +474,8 @@
 %files -f mysql.files
 %defattr(-, root, root)
 %config(noreplace) %attr(0640, root, mysql) /etc/my.cnf
-%dir %attr(0750, root, mysql) /etc/mysql
-%config(noreplace) %attr(0640, root, mysql) /etc/mysql/*
+%dir %attr(0750, root, mysql) /etc/my.cnf.d
+%config(noreplace) %attr(0640, root, mysql) /etc/my.cnf.d/*
 %config /etc/logrotate.d/mysql
 %doc %{_defaultdocdir}/%{name}
 %doc %{_infodir}/mysql.info.*
@@ -486,8 +484,6 @@
 %dir /usr/share/%{name}
 %dir /usr/share/mysql
 /usr/share/%{name}/charsets/
-/usr/share/mysql/*.cnf
-/usr/share/mysql/*.ini
 /usr/share/%{name}/*.sql
 %ghost %dir %attr(755,mysql,mysql)/var/run/mysql
 %dir %{_libdir}/mysql

++++++ build.inc ++++++
--- /var/tmp/diff_new_pack.Y1AN4R/_old  2013-07-27 15:48:16.000000000 +0200
+++ /var/tmp/diff_new_pack.Y1AN4R/_new  2013-07-27 15:48:16.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 ++++++

++++++ install.inc ++++++
--- /var/tmp/diff_new_pack.Y1AN4R/_old  2013-07-27 15:48:17.000000000 +0200
+++ /var/tmp/diff_new_pack.Y1AN4R/_new  2013-07-27 15:48:17.000000000 +0200
@@ -10,6 +10,9 @@
 # remove handler socket client
 rm -f %buildroot%_libdir/libhsclient*
 rm -f %buildroot%_bindir/hsclient*
+if [ -f "%{buildroot}%{_bindir}/mytop" ]; then
+       mv %{buildroot}%{_bindir}/mytop %{buildroot}%{_bindir}/%{name}_mytop
+fi
 rm -f %buildroot%_libdir/mysql/plugin/handlersocket.so
 # remove most static libs (FIXME: don't build them at all...)
 rm -f %buildroot%_libdir/libmysqlclient*a
@@ -56,11 +59,14 @@
 filelist mysql_client_test mysql_client_test_embedded mysql_waitpid mysqltest 
mysqltest_embedded >mysql-test.files
 # all binaries that don't need to be in a "default" install (mysql.rpm +
 # mysql-client.rpm)
-filelist msql2mysql mysql_plugin mysql_convert_table_format mysql_find_rows 
mysql_setpermission mysql_tzinfo_to_sql mysql_zap mysqlaccess mysqlhotcopy 
perror replace mysql_embedded mytop hsclient >mysql-tools.files
+filelist msql2mysql mysql_config_editor mysql_plugin 
mysql_convert_table_format mysql_find_rows mysql_setpermission 
mysql_tzinfo_to_sql mysql_zap mysqlaccess mysqlhotcopy perror replace 
mysql_embedded %{name}_mytop hsclient >mysql-tools.files
 filelist ndbd ndbmtd ndbd_redo_log_reader >mysql-ndb-storage.files
 filelist ndb_mgmd >mysql-ndb-management.files
 filelist 
ndb_{config,desc,error_reporter,mgm,print_backup_file,print_schema_file,print_sys_file,restore,select_all,select_count,show_tables,size.pl,test_platform,waiter}
 >mysql-ndb-tools.files
 filelist 
ndb_{cpcd,delete_all,drop_index,index_stat,print_file,redo_log_reader,drop_table}
 ndbinfo_select_all memcached >mysql-ndb-extra.files
+[ -z "`ls -1 "%buildroot/usr/share/mysql/"*.ini`" ]   || echo 
'/usr/share/mysql/*.ini' >> mysql.files 
+[ -z "`ls -1 "%buildroot/usr/share/mysql/"*.cnf`" ]   || echo 
'/usr/share/mysql/*.cnf' >> mysql.files 
+[ \! -f "%buildroot/usr/share/%name"/dictionary.txt ] || echo 
"/usr/share/%name/dictionary.txt" >> mysql.files 
 errmsg_list()
 {
        echo '%%defattr(-, root, root)'
@@ -87,7 +93,7 @@
 ln -s libmysqld.so.0.0.1 %buildroot%_libdir/libmysqld.so.0
 ln -s libmysqld.so.0.0.1 %buildroot%_libdir/libmysqld.so
 %endif
-install -m 660 _build/support-files/my-medium.cnf %buildroot/etc/my.cnf
+install -m 660 %{S:14} %buildroot/etc/my.cnf
 install -m 640 scripts/mysqlaccess.conf %buildroot/etc/mysqlaccess.conf
 for i in "${DOCS[@]}"; do
        install -m 644 "${i}" "${DOCDIR}" || true
@@ -129,15 +135,15 @@
 done
 %endif
 %if ! 0%{prefered} > 0
-cat libmysqlclient-devel.files | while read tmp; do
+cat libmysqlclient-devel.files | sed 's|%%doc\ ||' | while read tmp; do
        cd '%buildroot'
-       rm -f .$tmp
+       rm -f ."$tmp"
 done
 rm -rf '%buildroot'/%_libdir/libmysqld.*
 rm -rf '%buildroot'/%_libdir/*.la
 rm -rf '%buildroot'/%_libdir/*.so
+rm -rf '%buildroot'/%_datadir/man/*/mysql_config.1*
 rm -rf '%buildroot'/%_includedir  
-rm -rf '%buildroot'/%_datadir/man/*/mysql_config*  
 rm -rf '%buildroot'/%_datadir/aclocal
 rm -rf '%buildroot'/%_libdir/*.a
 %endif
@@ -152,8 +158,9 @@
 if [ -f '%buildroot'/usr/bin/mysqlaccess.conf ]; then
        mv '%buildroot'/usr/bin/mysqlaccess.conf 
'%buildroot'/etc/mysqlaccess.conf
 fi
-mkdir -p '%buildroot'/etc/mysql
-bzip2 -cd '%_sourcedir'/configuration-tweaks.tar.bz2 | tar -C 
'%buildroot'/etc/mysql -xvf -
+mkdir -p '%buildroot'/etc/my.cnf.d
+rm -rf '%buildroot'/etc/my.cnf.d/*
+bzip2 -cd '%_sourcedir'/configuration-tweaks.tar.bz2 | tar -C 
'%buildroot'/etc/my.cnf.d -xvf -
 if [ -z "`ls '%buildroot'/usr/share/info/mysql.info*`" ]; then
        install -D -m 0644 Docs/mysql.info 
"%buildroot/usr/share/info/mysql.info"
        gzip -9 "%buildroot/usr/share/info/mysql.info"
@@ -163,6 +170,6 @@
        echo '%%dir %%_libdir/mysql/plugin'        >> mysql-client.files
        echo '%%_libdir/mysql/plugin/dialog*.so'   >> mysql-client.files
 fi
-rm -rf '%buildroot'/etc/my.cnf.d
-rm -rf '%buildroot'/usr/share/doc/%{name}-%{version}
+rm -rf '%buildroot'/usr/share/doc/{mysql,mariadb}*
+rm -rf '%buildroot'/usr/share/mysql/solaris
 rm -rf '%buildroot'/usr/share/mysql/SELinux

++++++ mariadb-5.5.29.tar.bz2 -> mariadb-5.5.32.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/mariadb/mariadb-5.5.29.tar.bz2 
/work/SRC/openSUSE:Factory/.mariadb.new/mariadb-5.5.32.tar.bz2 differ: char 11, 
line 1

++++++ my.ini ++++++
# This is default example of MySQL/MariaDB configuration provided with openSUSE 
package
# It is based on upstream defaults with some additional examples.


# The following options will be passed to all MariaDB clients
[client]
# password  = your_password
# port       = 3306
# socket     = /var/run/mysql/mysql.sock

[mysqld]

# Remove leading # if you don't want to listen on network (only socket - safer)
# skip-networking

# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M

# Using newer file format that supports dynamic and compressed row formats.
# If you are using replication you have to make sure, that these options are
# set everywhere the same way (probably comment them out is the easiest way)
innodb_file_format=Barracuda
innodb_file_per_table=ON

# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin=mysql-bin
# binlog_format=mixed

# Remove leading # if you want to store your database elsewhere
# datadir       = /var/lib/mysql

# required unique id between 1 and 2^32 - 1
# defaults to 1 if master-host is not set
# but will not function as a master if omitted
server-id       = 1

# These are commonly set, remove the # and set as required.
# port = 3306
# socket = /var/run/mysql/mysql.sock

# Don't listen on a TCP/IP port at all. This can be a security enhancement,
# if all processes that need to connect to mysqld run on the same host.
# All interaction with mysqld must be made via Unix sockets or named pipes.
# Note that using this option without enabling named pipes on Windows
# (via the "enable-named-pipe" option) will render mysqld useless!
# 
# skip-networking

# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M 

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[mysqld_multi]
mysqld     = /usr/bin/mysqld_safe
mysqladmin = /usr/bin/mysqladmin
log        = /var/log/mysqld_multi.log

# If you want to use mysqld_multi uncomment 1 or more mysqld sections
# below or add your own ones.

# WARNING
# --------
# If you uncomment mysqld1 than make absolutely sure, that database mysql,
# configured above, is not started.  This may result in corrupted data!
#
# [mysqld1]
# port       = 3306
# datadir    = /var/lib/mysql
# pid-file   = /var/lib/mysql/mysqld.pid
# socket     = /var/lib/mysql/mysql.sock
# user       = mysql

# [mysqld2]
# port       = 3307
# datadir    = /var/lib/mysql-databases/mysqld2
# pid-file   = /var/lib/mysql-databases/mysqld2/mysql.pid
# socket     = /var/lib/mysql-databases/mysqld2/mysql.sock
# user       = mysql

# [mysqld3]
# port       = 3308
# datadir    = /var/lib/mysql-databases/mysqld3
# pid-file   = /var/lib/mysql-databases/mysqld3/mysql.pid
# socket     = /var/lib/mysql-databases/mysqld3/mysql.sock
# user       = mysql

# [mysqld6]
# port       = 3309
# datadir    = /var/lib/mysql-databases/mysqld6
# pid-file   = /var/lib/mysql-databases/mysqld6/mysql.pid
# socket     = /var/lib/mysql-databases/mysqld6/mysql.sock
# user       = mysql

!include_dir /etc/mysql
!include_dir /etc/my.cnf.d

++++++ mysql-patches.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mysql-patches/mysql-patches/mariadb-5.1.50-upgrade-exit-status.patch 
new/mysql-patches/mysql-patches/mariadb-5.1.50-upgrade-exit-status.patch
--- old/mysql-patches/mysql-patches/mariadb-5.1.50-upgrade-exit-status.patch    
2012-06-02 20:28:21.000000000 +0200
+++ new/mysql-patches/mysql-patches/mariadb-5.1.50-upgrade-exit-status.patch    
1970-01-01 01:00:00.000000000 +0100
@@ -1,35 +0,0 @@
-PATCH-P0-FEATURE-SUSE: Returning 0 when already upgraded.
-
-Returning non-zero exit status in this case is not nice to scripts using
-mysql_upgrade (eg. our init script)
-
-Maintainer: Michal Hrusecky <[email protected]>
-
-Index: client/mysql_upgrade.c
-===================================================================
---- client/mysql_upgrade.c.orig
-+++ client/mysql_upgrade.c
-@@ -878,7 +878,9 @@ int main(int argc, char **argv)
-     printf("This installation of MySQL is already upgraded to %s, "
-            "use --force if you still need to run mysql_upgrade\n",
-            MYSQL_SERVER_VERSION);
--    die(NULL);
-+    free_used_memory();
-+    my_end(MY_CHECK_ERROR);
-+    exit(0);
-   }
- 
-   /*
-Index: mysql-test/t/mysql_upgrade.test
-===================================================================
---- mysql-test/t/mysql_upgrade.test.orig
-+++ mysql-test/t/mysql_upgrade.test
-@@ -41,7 +41,7 @@ file_exists $MYSQLD_DATADIR/mysql_upgrad
- 
- --echo Run it again - should say already completed
- --replace_result $MYSQL_SERVER_VERSION VERSION
----error 1
-+--error 0
- --exec $MYSQL_UPGRADE 2>&1
- 
- # It should have created a file in the MySQL Servers datadir
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mysql-patches/mysql-patches/mariadb-5.5.32-upgrade-exit-status.patch 
new/mysql-patches/mysql-patches/mariadb-5.5.32-upgrade-exit-status.patch
--- old/mysql-patches/mysql-patches/mariadb-5.5.32-upgrade-exit-status.patch    
1970-01-01 01:00:00.000000000 +0100
+++ new/mysql-patches/mysql-patches/mariadb-5.5.32-upgrade-exit-status.patch    
2013-07-23 10:00:51.000000000 +0200
@@ -0,0 +1,35 @@
+PATCH-P0-FEATURE-SUSE: Returning 0 when already upgraded.
+
+Returning non-zero exit status in this case is not nice to scripts using
+mysql_upgrade (eg. our init script)
+
+Maintainer: Michal Hrusecky <[email protected]>
+
+Index: client/mysql_upgrade.c
+===================================================================
+--- client/mysql_upgrade.c.orig
++++ client/mysql_upgrade.c
+@@ -976,7 +976,9 @@ int main(int argc, char **argv)
+     printf("This installation of MySQL is already upgraded to %s, "
+            "use --force if you still need to run mysql_upgrade\n",
+            MYSQL_SERVER_VERSION);
+-    die(NULL);
++    free_used_memory();
++    my_end(MY_CHECK_ERROR);
++    exit(0);
+   }
+ 
+   if (opt_version_check && check_version_match())
+Index: mysql-test/t/mysql_upgrade.test
+===================================================================
+--- mysql-test/t/mysql_upgrade.test.orig
++++ mysql-test/t/mysql_upgrade.test
+@@ -14,7 +14,7 @@ file_exists $MYSQLD_DATADIR/mysql_upgrad
+ 
+ --echo Run it again - should say already completed
+ --replace_result $MYSQL_SERVER_VERSION VERSION
+---error 1
++--error 0
+ --exec $MYSQL_UPGRADE 2>&1
+ 
+ # It should have created a file in the MySQL Servers datadir

++++++ rc.mysql-multi ++++++
--- /var/tmp/diff_new_pack.Y1AN4R/_old  2013-07-27 15:48:17.000000000 +0200
+++ /var/tmp/diff_new_pack.Y1AN4R/_new  2013-07-27 15:48:17.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
 }
 
@@ -324,7 +329,7 @@
                        log_dir="`dirname "$i"`"
                        if [ \! -d "$log_dir" ]; then
                                mkdir -p "$log_dir"
-                               chmod 660 "$log_dir"
+                               chmod 770 "$log_dir"
                        fi
                done
 
@@ -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\nskip-external-locking|' \
+                              -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"

++++++ series ++++++
--- /var/tmp/diff_new_pack.Y1AN4R/_old  2013-07-27 15:48:17.000000000 +0200
+++ /var/tmp/diff_new_pack.Y1AN4R/_new  2013-07-27 15:48:17.000000000 +0200
@@ -5,7 +5,7 @@
 mariadb-5.5.28-install_db-quiet.patch
 mysql-community-server-5.1.51-mysql_config.patch
 mariadb-5.5.25-mysqld_multi-features.patch
-mariadb-5.1.50-upgrade-exit-status.patch
+mariadb-5.5.32-upgrade-exit-status.patch
 mariadb-5.2.3-cnf.patch
 mysql-community-server-5.5.6-safe-process-in-bin.patch
 mariadb-5.5.28-group.patch

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to