Hello community, here is the log from the commit of package mysql-community-server for openSUSE:Factory checked in at 2014-08-20 10:50:57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mysql-community-server (Old) and /work/SRC/openSUSE:Factory/.mysql-community-server.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mysql-community-server" Changes: -------- --- /work/SRC/openSUSE:Factory/mysql-community-server/mysql-community-server.changes 2013-09-23 11:17:23.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.mysql-community-server.new/mysql-community-server.changes 2014-08-20 10:51:14.000000000 +0200 @@ -1,0 +2,19 @@ +Thu Aug 7 01:04:49 UTC 2014 - sfal...@opensuse.org + +- Removed mysql.info.* from %files section to clear build failure, as reported in declined request 235821 to openSUSE:Factory + +------------------------------------------------------------------- +Fri May 23 12:40:22 CEST 2014 - mhruse...@suse.cz + +- updated to 5.6.17 + http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-13.html + http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-14.html + http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-15.html + http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-16.html + http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-17.html +- merge latest fixes from other variants + * systemd unit file + * not enabling plugins by default + * first time install warning + +------------------------------------------------------------------- Old: ---- mysql-5.6.12.tar.bz2 rc.mysql-multi New: ---- README.install _constraints mysql-5.6.17.tar.bz2 mysql.service rc.mysql.systemd rc.mysql.sysvinit ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mysql-community-server.spec ++++++ --- /var/tmp/diff_new_pack.NdprKl/_old 2014-08-20 10:51:18.000000000 +0200 +++ /var/tmp/diff_new_pack.NdprKl/_new 2014-08-20 10:51:18.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package mysql-community-server # -# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,8 @@ # Few definitions which will alter build -%define prefered 00 +%define preferred 00 +%define use_systemd 01 %define use_cmake 01 %define cluster 00 %define have_info 01 @@ -25,6 +26,10 @@ %define use_extra_provides 1 %define extra_provides mysql-community-server_56 +%if ! %{defined _rundir} +%define _rundir %{_localstatedir}/run +%endif + %if %{?rel:0}%{!?rel:1} %define rel 1 %endif @@ -36,16 +41,16 @@ Summary: Server part of MySQL Community Server License: SUSE-GPL-2.0-with-FLOSS-exception Group: Productivity/Databases/Servers -Version: 5.6.12 +Version: 5.6.17 Release: 0 -%define srv_vers 5.6.12 +%define srv_vers 5.6.17 Url: http://www.mysql.com Source: mysql-%{version}.tar.bz2 Source2: baselibs.conf Source3: README.debug Source4: suse-test-run Source5: mysql.SuSEfirewall2 -Source7: rc.mysql-multi +Source7: README.install Source8: README.SuSE Source9: mysql-patches.tar.bz2 Source10: build.inc @@ -53,6 +58,9 @@ Source12: series Source13: configuration-tweaks.tar.bz2 Source14: my.ini +Source15: rc.mysql.sysvinit +Source16: rc.mysql.systemd +Source17: mysql.service BuildRoot: %{_tmppath}/%{name}-%{version}-build %if 0%{?suse_version} PreReq: pwdutils @@ -67,6 +75,7 @@ BuildRequires: gcc-c++ BuildRequires: libaio-devel BuildRequires: libedit-devel +BuildRequires: libevent-devel BuildRequires: libtool BuildRequires: ncurses-devel BuildRequires: openssl-devel @@ -106,7 +115,7 @@ Provides: %{extra_provides} = %{version} Obsoletes: %{extra_provides} < %{version} %endif -%if 0%{?prefered} > 0 +%if 0%{?preferred} > 0 %if "%{name}" != mysql Obsoletes: mysql < %{srv_vers} %endif @@ -138,7 +147,7 @@ This package only contains the server-side programs. -%if 0%{?prefered} > 0 +%if 0%{?preferred} > 0 %package -n libmysqlclient-devel # mysql-devel was last used in openSUSE 10.2 Provides: mysql-devel = %srv_vers-%release @@ -188,6 +197,7 @@ %package -n libmysql56client_r18 Summary: Shared Libraries for MySQL Community Server Group: Development/Libraries/Other +Requires: libmysql56client18 %description -n libmysql56client_r18 This package contains the shared libraries (.so) which certain @@ -207,7 +217,7 @@ Obsoletes: %{extra_provides}-client < %{version} %endif Requires: %{name}-errormessages = %version -%if 0%{?prefered} > 0 +%if 0%{?preferred} > 0 %if "%{name}" != mysql Obsoletes: mysql-client < %{srv_vers} %endif @@ -237,7 +247,7 @@ Provides: %{extra_provides}-bench = %{version} Obsoletes: %{extra_provides}-bench < %{version} %endif -%if 0%{?prefered} > 0 +%if 0%{?preferred} > 0 %if "%{name}" != mysql Obsoletes: mysql-bench < %{srv_vers} %endif @@ -261,7 +271,7 @@ Provides: %{extra_provides}-debug-verion = %{version} Obsoletes: %{extra_provides}-debug-version < %{version} %endif -%if 0%{?prefered} > 0 +%if 0%{?preferred} > 0 Obsoletes: mysql-debug < %{srv_vers} %endif Conflicts: otherproviders(mysql-debug) @@ -288,7 +298,7 @@ Provides: %{extra_provides}-test = %{version} Obsoletes: %{extra_provides}-test < %{version} %endif -%if 0%{?prefered} > 0 +%if 0%{?preferred} > 0 %if "%{name}" != mysql Obsoletes: mysql-test < %{srv_vers} %endif @@ -314,7 +324,7 @@ Provides: %{extra_provides}-tools = %{version} Obsoletes: %{extra_provides}-tools < %{version} %endif -%if 0%{?prefered} > 0 +%if 0%{?preferred} > 0 %if "%{name}" != mysql Obsoletes: mysql-tools < %{srv_vers} %endif @@ -414,13 +424,18 @@ # breaks VPATH builds when in sourcedir, is generated in the builddirs rm -f sql/sql_builtin.cc sed -i 's|@localstatedir@|/var/log|' support-files/mysql-log-rotate.sh -%if 0%{prefered} < 1 +%if 0%{preferred} < 1 for i in `grep -Rl mysqlclient .`; do sed -i 's|mysqlclient|mysql56client|g' $i + sed -i 's|-libmysql56client-symbols.patch|-libmysqlclient-symbols.patch|g' $i done %endif # Broken test that needs sources rm -f mysql-test/t/file_contents.test mysql-test/r/file_contents.result +# Specify perl path on shebangs +for i in `grep -Rl '^#!@PERL@$' .`; do + sed -i 's|@PERL@|/usr/bin/perl|' $i +done %build %{expand:%(cat %_sourcedir/build.inc)} @@ -454,15 +469,14 @@ # preun and posttran takes care of restart # ####################################################################### %preun -[ $1 = 1 ] || /usr/sbin/rcmysql stop +[ $1 = 1 ] || /usr/sbin/rcmysql stop || true %pretrans -p <lua> if posix.access("/usr/sbin/rcmysql", "x") then restart = os.execute("/usr/sbin/rcmysql status > /dev/null") - os.execute("/usr/sbin/rcmysql stop") - if restart == 0 then - os.execute("/bin/mkdir -p /var/run/mysql/restart") + os.execute("/usr/sbin/rcmysql stop") + os.execute("/bin/mkdir -p %{_rundir}/mysql/restart") end end @@ -479,9 +493,21 @@ ( [ -d "$i" ] && rmdir "$i" ) || : done # start mysql again if it should run -if [ "`ls /etc/rc.d/rc*.d/S*mysql 2> /dev/null`" ] || [ -d /var/run/mysql/restart ]; then +if [ "`ls /etc/rc.d/rc*.d/S*mysql 2> /dev/null`" ] || [ -d %{_rundir}/mysql/restart ]; then [ -x /usr/sbin/rcmysql ] && /usr/sbin/rcmysql start - rmdir /var/run/mysql/restart || : + rmdir %{_rundir}/mysql/restart || : + rmdir %{_rundir}/mysql || : +fi +# warn on first run +datadir="/var/lib/mysql" +if [ -x /usr/bin/my_print_defaults ]; then + datadir="`/usr/bin/my_print_defaults mysqld mysql_server | sed -n 's|--datadir=||p'`" + [ "$datadir" ] || datadir="/var/lib/mysql" +fi +if [ \! -d "$datadir/mysql" ]; then +cat > /var/adm/update-messages/%{name}-%{version}-%{release} << EOF +%(cat %_sourcedir/README.install) +EOF fi ####################################################################### @@ -502,7 +528,7 @@ %postun -n libndbclient6 -p /sbin/ldconfig %endif -%if 0%{prefered} > 0 +%if 0%{preferred} > 0 %post -n libmysqld18 -p /sbin/ldconfig %postun -n libmysqld18 -p /sbin/ldconfig @@ -531,16 +557,18 @@ %config(noreplace) %attr(0640, root, mysql) /etc/my.cnf.d/* %config /etc/logrotate.d/mysql %doc %{_defaultdocdir}/%{name} -%if %have_info -%doc %{_infodir}/mysql.info.* -%endif +%if 0%{?suse_version} >= 1210 && 0%{?use_systemd} > 0 +%dir /usr/lib/mysql +/usr/lib/mysql/rcmysql +/usr/lib/systemd/system/mysql.service +%else /etc/init.d/mysql +%endif /usr/sbin/rcmysql %dir /usr/share/%{name} %dir /usr/share/mysql /usr/share/%{name}/charsets/ /usr/share/%{name}/*.sql -%ghost %dir %attr(755,mysql,mysql)/var/run/mysql %dir %{_libdir}/mysql %{_libdir}/mysql/mysqld.sym %config /etc/sysconfig/SuSEfirewall2.d/services/mysql @@ -553,9 +581,8 @@ %files client -f mysql-client.files %defattr(-, root, root) -%config(noreplace) %attr(0640, root, mysql) /etc/mysqlaccess.conf -%if 0%{prefered} > 0 +%if 0%{preferred} > 0 %files -n libmysqlclient-devel -f libmysqlclient-devel.files %defattr(-, root, root) /usr/include/mysql ++++++ README.install ++++++ You just installed MySQL server for the first time. You can start it using: rcmysql start During first start empty database will be created for your automatically. PLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER ! To do so, start the server, then issue the following commands: '/usr/bin/mysqladmin' -u root password 'new-password' '/usr/bin/mysqladmin' -u root -h misibook password 'new-password' Alternatively you can run: '/usr/bin/mysql_secure_installation' which will also give you the option of removing the test databases and anonymous user created by default. This is strongly recommended for production servers. ++++++ _constraints ++++++ <constraints> <hardware> <disk> <size unit="G">9</size> </disk> </hardware> </constraints> ++++++ build.inc ++++++ --- /var/tmp/diff_new_pack.NdprKl/_old 2014-08-20 10:51:18.000000000 +0200 +++ /var/tmp/diff_new_pack.NdprKl/_new 2014-08-20 10:51:18.000000000 +0200 @@ -10,7 +10,7 @@ export EXTRA_FLAGS=" -mminimal-toc " %endif export CFLAGS="$RPM_OPT_FLAGS -DOPENSSL_LOAD_CONF -DPIC -fPIC -DFORCE_INIT_OF_VARS $EXTRA_FLAGS " -export CXXFLAGS="$CFLAGS -fno-exceptions -fno-rtti" +export CXXFLAGS="$CFLAGS" %if 0%{use_cmake} < 1 autoreconf -f -i @@ -73,7 +73,7 @@ popd } # Build the client, extra tools, libraries -%if 0%{?prefered} > 0 +%if 0%{?preferred} > 0 BuildMySQL "" --with-embedded-server %else BuildMySQL "" --without-embedded-server @@ -81,7 +81,7 @@ # build mysqld-debug BuildMySQL "-debug" --with-debug --without-embedded-server -%if 0%{?prefered} > 0 +%if 0%{?preferred} > 0 mkdir -p _buildlibmysqld/tmp cd _buildlibmysqld/tmp ar -x ../../_build/libmysqld/libmysqld.a @@ -101,6 +101,8 @@ shift cmake -DWITH_SSL=system \ -DWITH_ZLIB=system \ + -DWITH_LIBEVENT=system \ + -DWITH_JEMALLOC=no \ -DWITH_READLINE=0 \ -DWITH_LIBEDIT=0 \ -DINSTALL_LAYOUT=RPM \ @@ -116,12 +118,13 @@ -DDENABLE_DOWNLOADS=false \ -DINSTALL_PLUGINDIR_RPM="%{_lib}/mysql/plugin" \ -DINSTALL_LIBDIR_RPM="%{_lib}" \ - "$@" .. + -Wno-dev "$@" .. make %{?jobs:-j%jobs} nm --numeric-sort sql/mysqld > sql/mysqld.sym popd } BuildMySQL "" -DCMAKE_BUILD_TYPE=Release -DINSTALL_SQLBENCHDIR=share -BuildMySQL "-debug" -DCMAKE_BUILD_TYPE=Debug +# TokuDB can't be compiled without optimisations turned on +BuildMySQL "-debug" -DCMAKE_BUILD_TYPE=Debug -DWITHOUT_TOKUDB=1 %endif ++++++ configuration-tweaks.tar.bz2 ++++++ --- old/default_plugins.cnf 2013-09-09 10:35:18.000000000 +0200 +++ new/default_plugins.cnf 2014-05-23 12:51:58.000000000 +0200 @@ -1,4 +1,4 @@ [server] -plugin-load=blackhole=ha_blackhole.so -plugin-load=federated=ha_federated.so -plugin-load=archive=ha_archive.so +#plugin-load=blackhole=ha_blackhole.so +#plugin-load=federated=ha_federated.so +#plugin-load=archive=ha_archive.so ++++++ install.inc ++++++ --- /var/tmp/diff_new_pack.NdprKl/_old 2014-08-20 10:51:18.000000000 +0200 +++ /var/tmp/diff_new_pack.NdprKl/_new 2014-08-20 10:51:18.000000000 +0200 @@ -41,14 +41,14 @@ done popd >/dev/null } -filelist innochecksum my_print_defaults myisam_ftdump myisamchk myisamlog myisampack mysql_fix_extensions mysql_fix_privilege_tables mysql_install_db mysql_secure_installation mysql_upgrade mysqlbug mysqld mysqld_multi mysqld_safe mysqlbinlog mysqldumpslow mysqlmanager resolve_stack_dump resolveip {m,}aria_chk {m,}aria_dump_log {m,}aria_ftdump {m,}aria_pack {m,}aria_read_log xtstat >mysql.files -filelist mysql mysqladmin mysqlcheck mysqldump mysqlimport mysqlshow >mysql-client.files +filelist innochecksum my_print_defaults myisam_ftdump myisamchk myisamlog myisampack mysql_fix_extensions mysql_fix_privilege_tables mysql_install_db mysql_secure_installation mysql_upgrade mysqlbug mysqld mysqld_multi mysqld_safe mysqlbinlog mysqldumpslow mysqlmanager resolve_stack_dump resolveip {m,}aria_chk {m,}aria_dump_log {m,}aria_ftdump {m,}aria_pack {m,}aria_read_log xtstat tokuftdump >mysql.files +filelist mysql mysqladmin mysqlcheck mysqldump mysqlimport mysqlshow mysql_config_editor >mysql-client.files filelist mysql_config >libmysqlclient-devel.files filelist mysqlslap >mysql-bench.files 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_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 msql2mysql 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 @@ -75,23 +75,31 @@ DOCDIR=%buildroot%_defaultdocdir/%name install -d -m 755 ${DOCDIR} install -d -m 755 %buildroot/etc/logrotate.d -install -d -m 755 %buildroot/etc/init.d install -m 644 _build/support-files/mysql-log-rotate %buildroot/etc/logrotate.d/mysql -%if 0%{?prefered} > 0%{?use_cmake} +%if 0%{?preferred} > 0%{?use_cmake} install -m 644 _buildlibmysqld/*.so* %buildroot%_libdir 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 %{S:14} %buildroot/etc/my.cnf -install -m 640 scripts/mysqlaccess.conf %buildroot/etc/mysqlaccess.conf +[ \! -f scripts/mysqlaccess.conf ] || install -m 640 scripts/mysqlaccess.conf %buildroot/etc/mysqlaccess.conf for i in "${DOCS[@]}"; do install -m 644 "${i}" "${DOCDIR}" || true done -install -m 755 %_sourcedir/rc.mysql-multi %buildroot/etc/init.d/mysql -sed -i 's|@MYSQLVER@|%{version}|' %buildroot/etc/init.d/mysql -ln -sf ../../etc/init.d/mysql %buildroot/usr/sbin/rcmysql -# this is used by the init script -install -m 755 -d %buildroot/var/run/mysql +%if 0%{?suse_version} >= 1210 && 0%{?use_systemd} > 0 +install -D -m 755 %_sourcedir/rc.mysql.systemd '%buildroot'/usr/lib/mysql/rcmysql +sed -i 's|@MYSQLVER@|%{version}|' '%buildroot'/usr/lib/mysql/rcmysql +ln -sf service '%buildroot'/usr/sbin/rcmysql +install -D -m 644 %_sourcedir/mysql.service '%buildroot'/usr/lib/systemd/system/mysql.service +sed -i 's|doc/packages/mysql|doc/packages/%{name}|g' '%buildroot'/usr/lib/mysql/rcmysql +rm -rf '%buildroot'/etc/init.d +%else +install -d -m 755 '%buildroot'/etc/init.d +install -m 755 '%_sourcedir'/rc.mysql.sysvinit '%buildroot'/etc/init.d/mysql +sed -i 's|@MYSQLVER@|%{version}|' '%buildroot'/etc/init.d/mysql +ln -sf ../../etc/init.d/mysql '%buildroot'/usr/sbin/rcmysql +sed -i 's|doc/packages/mysql|doc/packages/%{name}|g' '%buildroot'/etc/init.d/mysql +%endif # SuSEfirewall service description install -D -m 644 %_sourcedir/mysql.SuSEfirewall2 \ %buildroot/etc/sysconfig/SuSEfirewall2.d/services/mysql @@ -121,7 +129,7 @@ rm -f .$tmp done %endif -%if ! 0%{prefered} > 0 +%if ! 0%{preferred} > 0 cat libmysqlclient-devel.files | sed 's|%%doc\ ||' | while read tmp; do cd '%buildroot' rm -f ."$tmp" @@ -132,7 +140,6 @@ rm -rf '%buildroot'/%_includedir rm -rf '%buildroot'/%_datadir/aclocal %endif -sed -i 's|doc/packages/mysql|doc/packages/%{name}|g' '%buildroot'/etc/init.d/mysql ln -s mysqlcheck '%buildroot'%_bindir/mysqlrepair ln -s mysqlcheck '%buildroot'%_bindir/mysqlanalyze ln -s mysqlcheck '%buildroot'%_bindir/mysqloptimize @@ -143,16 +150,19 @@ if [ -f '%buildroot'/usr/bin/mysqlaccess.conf ]; then mv '%buildroot'/usr/bin/mysqlaccess.conf '%buildroot'/etc/mysqlaccess.conf fi +[ \! -f '%buildroot'/etc/mysqlaccess.conf ] || echo '%config(noreplace) %attr(0640, root, mysql) /etc/mysqlaccess.conf' >> mysql-client.files rm -rf '%buildroot'/etc/my.cnf.d mkdir -p '%buildroot'/etc/my.cnf.d bzip2 -cd '%_sourcedir'/configuration-tweaks.tar.bz2 | tar -C '%buildroot'/etc/my.cnf.d -xvf - %if %have_info < 1 [ -z "`ls '%buildroot'/usr/share/info/mysql.info* 2> /dev/null`" ] || rm -f '%buildroot'/usr/share/info/mysql.info* %endif +[ -z "`ls '%buildroot'/usr/share/mysql-test/suite/innodb/t/*.zip`" ] || chmod a-x '%buildroot'/usr/share/mysql-test/suite/innodb/t/*.zip if [ "`ls '%buildroot'%_libdir/mysql/plugin/dialog*.so 2> /dev/null`" ]; then echo '%%dir %%_libdir/mysql' >> mysql-client.files echo '%%dir %%_libdir/mysql/plugin' >> mysql-client.files echo '%%_libdir/mysql/plugin/dialog*.so' >> mysql-client.files fi rm -rf '%buildroot'/usr/share/doc/{mysql,mariadb}* +rm -f '%buildroot'/usr/share/doc/* 2> /dev/null || true rm -rf '%buildroot'/usr/share/mysql/{solaris,SELinux} ++++++ mysql-5.6.12.tar.bz2 -> mysql-5.6.17.tar.bz2 ++++++ /work/SRC/openSUSE:Factory/mysql-community-server/mysql-5.6.12.tar.bz2 /work/SRC/openSUSE:Factory/.mysql-community-server.new/mysql-5.6.17.tar.bz2 differ: char 11, line 1 ++++++ mysql-patches.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/mysql-patches/mysql-5.5-dump.patch new/mysql-patches/mysql-patches/mysql-5.5-dump.patch --- old/mysql-patches/mysql-patches/mysql-5.5-dump.patch 2013-08-14 09:05:39.000000000 +0200 +++ new/mysql-patches/mysql-patches/mysql-5.5-dump.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,85 +0,0 @@ -PATCH-P1-FIX-UPSTREAM: Fix mysql dump - -In mysql-5.0.x tables `general_log` and `slow_log` don't have to exist. -When we try to get dump of mysql database of mysql-5.0.x server using -client mysql-5.1.x or newer, which expect these tables to exist, mysqldump -will crash with the following error: - - mysqldump: Couldn't execute 'show create table `general_log`': Table - 'mysql.general_log' doesn't exist (1146) - -This is reported at http://bugs.mysql.com/bug.php?id=65670 - -This patch adds checking if tables `general_log` and `slow_log` exist before -reading their structure. - -diff -up mysql-5.1.66/client/mysqldump.c.logs mysql-5.1.66/client/mysqldump.c ---- mysql-5.1.66/client/mysqldump.c.logs 2012-09-07 16:14:06.000000000 +0200 -+++ mysql-5.1.66/client/mysqldump.c 2012-11-28 15:33:00.116328380 +0100 -@@ -4269,6 +4269,31 @@ my_bool include_table(const uchar *hash_ - } - - -+/* Return 1 if table exists in db */ -+ -+static my_bool get_table_exists(char *table, char *db) -+{ -+ char query_buff[QUERY_LENGTH]; -+ MYSQL_RES *result; -+ MYSQL_ROW row; -+ my_bool return_value = 0; -+ -+ DBUG_ENTER("get_table_exists"); -+ my_snprintf(query_buff, sizeof(query_buff), -+ "SELECT COUNT(0) AS `Exists` " -+ "FROM `INFORMATION_SCHEMA`.`TABLES` WHERE " -+ "TABLE_SCHEMA = '%s' AND TABLE_NAME = '%s'", -+ db, table); -+ -+ mysql_query_with_error_report(mysql, &result, query_buff); -+ if (row= mysql_fetch_row(result)) -+ return_value = (strcmp(row[0], "0") != 0); -+ -+ mysql_free_result(result); -+ DBUG_RETURN(return_value); -+} -+ -+ - static int dump_all_tables_in_db(char *database) - { - char *table; -@@ -4292,17 +4317,24 @@ static int dump_all_tables_in_db(char *d - char table_type[NAME_LEN]; - char ignore_flag; - uint num_fields; -- num_fields= get_table_structure((char *) "general_log", -- database, table_type, &ignore_flag); -- if (num_fields == 0) -- verbose_msg("-- Warning: get_table_structure() failed with some internal " -- "error for 'general_log' table\n"); -- num_fields= get_table_structure((char *) "slow_log", -- database, table_type, &ignore_flag); -- if (num_fields == 0) -- verbose_msg("-- Warning: get_table_structure() failed with some internal " -- "error for 'slow_log' table\n"); -+ if (get_table_exists((char *) "general_log", database)) -+ { -+ num_fields= get_table_structure((char *) "general_log", -+ database, table_type, &ignore_flag); -+ if (num_fields == 0) -+ verbose_msg("-- Warning: get_table_structure() failed with some internal " -+ "error for 'general_log' table\n"); -+ } -+ if (get_table_exists((char *) "slow_log", database)) -+ { -+ num_fields= get_table_structure((char *) "slow_log", -+ database, table_type, &ignore_flag); -+ if (num_fields == 0) -+ verbose_msg("-- Warning: get_table_structure() failed with some internal " -+ "error for 'slow_log' table\n"); -+ } - } -+ - if (lock_tables) - { - DYNAMIC_STRING query; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/mysql-patches/mysql-5.5.31-upgrade-datadir.patch new/mysql-patches/mysql-patches/mysql-5.5.31-upgrade-datadir.patch --- old/mysql-patches/mysql-patches/mysql-5.5.31-upgrade-datadir.patch 2013-08-14 09:05:39.000000000 +0200 +++ new/mysql-patches/mysql-patches/mysql-5.5.31-upgrade-datadir.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,69 +0,0 @@ -PATCH-P0-FEATURE-UPSTREAM: Keep datadir across multiple calls - -mysql_upgrade script asks for datadir multiple times during update but at some -point privileges gets updated and if --skip-grant-tables was used (like in SUSE -init scripts), datadir is no longer queryable. So we cache the value. - -Maintainer: Michal Hrusecky <michal.hruse...@opensuse.org> - -Index: client/mysql_upgrade.c -=================================================================== ---- client/mysql_upgrade.c.orig -+++ client/mysql_upgrade.c -@@ -557,21 +557,37 @@ static int extract_variable_from_show(DY - - static int get_upgrade_info_file_name(char* name) - { -- DYNAMIC_STRING ds_datadir; -- DBUG_ENTER("get_upgrade_info_file_name"); -+ static char *data_dir = NULL; -+ static size_t len; - -- if (init_dynamic_string(&ds_datadir, NULL, 32, 32)) -- die("Out of memory"); -+ DBUG_ENTER("get_upgrade_info_file_name"); - -- if (run_query("show variables like 'datadir'", -- &ds_datadir, FALSE) || -- extract_variable_from_show(&ds_datadir, name)) -+ if(data_dir==NULL) - { -+ DYNAMIC_STRING ds_datadir; -+ -+ if (init_dynamic_string(&ds_datadir, NULL, 32, 32)) -+ die("Out of memory"); -+ -+ if (run_query("show variables like 'datadir'", -+ &ds_datadir, FALSE) || -+ extract_variable_from_show(&ds_datadir, name) -+ ) -+ { -+ dynstr_free(&ds_datadir); -+ DBUG_RETURN(1); /* Query failed */ -+ } - dynstr_free(&ds_datadir); -- DBUG_RETURN(1); /* Query failed */ -- } -+ len = strlen(name)+1; -+ if ((data_dir=(char*)malloc(sizeof(char)*len))==NULL) -+ { -+ die("Out of memory"); -+ } -+ strncpy(data_dir,name,len); - -- dynstr_free(&ds_datadir); -+ } else { -+ strncpy(name, data_dir, len); -+ } - - fn_format(name, "mysql_upgrade_info", name, "", MYF(0)); - DBUG_PRINT("exit", ("name: %s", name)); -@@ -880,7 +896,7 @@ int main(int argc, char **argv) - Read the mysql_upgrade_info file to check if mysql_upgrade - already has been run for this installation of MySQL - */ -- if (!opt_force && upgrade_already_done()) -+ if (upgrade_already_done() && !opt_force) - { - printf("This installation of MySQL is already upgraded to %s, " - "use --force if you still need to run mysql_upgrade\n", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/mysql-patches/mysql-community-server-5.6.12-upgrade-datadir.patch new/mysql-patches/mysql-patches/mysql-community-server-5.6.12-upgrade-datadir.patch --- old/mysql-patches/mysql-patches/mysql-community-server-5.6.12-upgrade-datadir.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/mysql-patches/mysql-patches/mysql-community-server-5.6.12-upgrade-datadir.patch 2014-05-20 15:56:19.000000000 +0200 @@ -0,0 +1,81 @@ +PATCH-P0-FEATURE-UPSTREAM: Keep datadir across multiple calls + +mysql_upgrade script asks for datadir multiple times during update but at some +point privileges gets updated and if --skip-grant-tables was used (like in SUSE +init scripts), datadir is no longer queryable. So we cache the value. + +Maintainer: Michal Hrusecky <michal.hruse...@opensuse.org> + +Index: client/mysql_upgrade.c +=================================================================== +--- client/mysql_upgrade.c.orig ++++ client/mysql_upgrade.c +@@ -582,21 +582,37 @@ static int extract_variable_from_show(DY + + static int get_upgrade_info_file_name(char* name) + { +- DYNAMIC_STRING ds_datadir; +- DBUG_ENTER("get_upgrade_info_file_name"); ++ static char *data_dir = NULL; ++ static size_t len; + +- if (init_dynamic_string(&ds_datadir, NULL, 32, 32)) +- die("Out of memory"); ++ DBUG_ENTER("get_upgrade_info_file_name"); + +- if (run_query("show variables like 'datadir'", +- &ds_datadir, FALSE) || +- extract_variable_from_show(&ds_datadir, name)) ++ if(data_dir==NULL) + { ++ DYNAMIC_STRING ds_datadir; ++ ++ if (init_dynamic_string(&ds_datadir, NULL, 32, 32)) ++ die("Out of memory"); ++ ++ if (run_query("show variables like 'datadir'", ++ &ds_datadir, FALSE) || ++ extract_variable_from_show(&ds_datadir, name) ++ ) ++ { ++ dynstr_free(&ds_datadir); ++ DBUG_RETURN(1); /* Query failed */ ++ } + dynstr_free(&ds_datadir); +- DBUG_RETURN(1); /* Query failed */ +- } ++ len = strlen(name)+1; ++ if ((data_dir=(char*)malloc(sizeof(char)*len))==NULL) ++ { ++ die("Out of memory"); ++ } ++ strncpy(data_dir,name,len); + +- dynstr_free(&ds_datadir); ++ } else { ++ strncpy(name, data_dir, len); ++ } + + fn_format(name, "mysql_upgrade_info", name, "", MYF(0)); + DBUG_PRINT("exit", ("name: %s", name)); +@@ -1009,7 +1025,7 @@ int main(int argc, char **argv) + Read the mysql_upgrade_info file to check if mysql_upgrade + already has been run for this installation of MySQL + */ +- if (!opt_force && upgrade_already_done()) ++ if (upgrade_already_done() && !opt_force) + { + printf("This installation of MySQL is already upgraded to %s, " + "use --force if you still need to run mysql_upgrade\n", +@@ -1030,9 +1046,9 @@ int main(int argc, char **argv) + */ + if ((!opt_systables_only && + (run_mysqlcheck_mysql_db_fixnames() || run_mysqlcheck_mysql_db_upgrade())) || +- run_sql_fix_privilege_tables() || + (!opt_systables_only && +- (run_mysqlcheck_fixnames() || run_mysqlcheck_upgrade()))) ++ (run_mysqlcheck_fixnames() || run_mysqlcheck_upgrade())) ++ || run_sql_fix_privilege_tables()) + { + /* + The upgrade failed to complete in some way or another, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/mysql-patches/mysql-community-server-5.6.12-va_list.patch new/mysql-patches/mysql-patches/mysql-community-server-5.6.12-va_list.patch --- old/mysql-patches/mysql-patches/mysql-community-server-5.6.12-va_list.patch 2013-09-17 11:47:01.000000000 +0200 +++ new/mysql-patches/mysql-patches/mysql-community-server-5.6.12-va_list.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,79 +0,0 @@ -PATCH-P1-FIX-UPSTREAM: va_list is not compatible with int - -Backport from 5.6.13 - -Index: mysql-5.6.12/sql-common/client_plugin.c -=================================================================== ---- mysql-5.6.12.orig/sql-common/client_plugin.c -+++ mysql-5.6.12/sql-common/client_plugin.c -@@ -117,8 +117,9 @@ find_plugin(const char *name, int type) - @retval a pointer to an installed plugin or 0 - */ - static struct st_mysql_client_plugin * --add_plugin(MYSQL *mysql, struct st_mysql_client_plugin *plugin, void *dlhandle, -- int argc, va_list args) -+do_add_plugin(MYSQL *mysql, struct st_mysql_client_plugin *plugin, -+ void *dlhandle, -+ int argc, va_list args) - { - const char *errmsg; - struct st_client_plugin_int plugin_int, *p; -@@ -179,6 +180,31 @@ err1: - return NULL; - } - -+ -+static struct st_mysql_client_plugin * -+add_plugin_noargs(MYSQL *mysql, struct st_mysql_client_plugin *plugin, -+ void *dlhandle, -+ int argc, ...) -+{ -+ struct st_mysql_client_plugin *retval= NULL; -+ va_list ap; -+ va_start(ap, argc); -+ retval= do_add_plugin(mysql, plugin, dlhandle, argc, ap); -+ va_end(ap); -+ return retval; -+} -+ -+ -+static struct st_mysql_client_plugin * -+add_plugin_withargs(MYSQL *mysql, struct st_mysql_client_plugin *plugin, -+ void *dlhandle, -+ int argc, va_list args) -+{ -+ return do_add_plugin(mysql, plugin, dlhandle, argc, args); -+} -+ -+ -+ - /** - Loads plugins which are specified in the environment variable - LIBMYSQL_PLUGINS. -@@ -249,7 +275,7 @@ int mysql_client_plugin_init() - mysql_mutex_lock(&LOCK_load_client_plugin); - - for (builtin= mysql_client_builtins; *builtin; builtin++) -- add_plugin(&mysql, *builtin, 0, 0, 0); -+ add_plugin_noargs(&mysql, *builtin, 0, 0); - - mysql_mutex_unlock(&LOCK_load_client_plugin); - -@@ -307,7 +333,7 @@ mysql_client_register_plugin(MYSQL *mysq - plugin= NULL; - } - else -- plugin= add_plugin(mysql, plugin, 0, 0, 0); -+ plugin= add_plugin_noargs(mysql, plugin, 0, 0); - - mysql_mutex_unlock(&LOCK_load_client_plugin); - return plugin; -@@ -420,7 +446,7 @@ have_plugin: - goto err; - } - -- plugin= add_plugin(mysql, plugin, dlhandle, argc, args); -+ plugin= add_plugin_withargs(mysql, plugin, dlhandle, argc, args); - - mysql_mutex_unlock(&LOCK_load_client_plugin); - ++++++ mysql.service ++++++ [Unit] Description=MySQL server Wants=basic.target After=basic.target network.target [Service] Type=forking ExecStart=/usr/lib/mysql/rcmysql start ExecStop=/usr/lib/mysql/rcmysql stop [Install] WantedBy=multi-user.target ++++++ rc.mysql.systemd ++++++ ++++ 679 lines (skipped) ++++++ rc.mysql.sysvinit ++++++ ++++ 628 lines (skipped) ++++++ series ++++++ --- /var/tmp/diff_new_pack.NdprKl/_old 2014-08-20 10:51:18.000000000 +0200 +++ /var/tmp/diff_new_pack.NdprKl/_new 2014-08-20 10:51:18.000000000 +0200 @@ -8,7 +8,5 @@ mysql-community-server-5.1.51-mysql_config.patch mysql-community-server-5.6.12-upgrade-exit-status.patch mysql-community-server-5.6.12-deharcode-libdir.patch -mysql-5.5.31-upgrade-datadir.patch -mysql-5.5-dump.patch +mysql-community-server-5.6.12-upgrade-datadir.patch mysql-community-server-5.6.12-srv_buf_size.patch -mysql-community-server-5.6.12-va_list.patch -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org