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 - [email protected]
+
+- few fixes to init script backported form SLE
+ (mainly one race condition during update)
+
+-------------------------------------------------------------------
+Mon Apr 22 10:49:16 UTC 2013 - [email protected]
+
+- 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: [email protected]
For additional commands, e-mail: [email protected]