From 1aed2f4d634e456bf44ad20d3d3fed934960b9c6 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 22 Dec 2009 14:27:41 +0100 Subject: [PATCH 1/7] Raise version number after cloning 5.5.1-m2 --- configure.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.in b/configure.in index a5b2c5c001a..309341b6a2d 100644 --- a/configure.in +++ b/configure.in @@ -10,7 +10,7 @@ AC_CANONICAL_SYSTEM # # When changing major version number please also check switch statement # in client/mysqlbinlog.cc:check_master_version(). -AM_INIT_AUTOMAKE(mysql, 5.5.1-m2) +AM_INIT_AUTOMAKE(mysql, 5.5.2-m2) AM_CONFIG_HEADER([include/config.h:config.h.in]) # Request support for automake silent-rules if available. From 7a84896d711a30b3412c962633b7596710e1f806 Mon Sep 17 00:00:00 2001 From: Joerg Bruehe Date: Tue, 22 Dec 2009 23:22:42 +0100 Subject: [PATCH 2/7] Change RPM file naming: - Suffix like "-m2", "-rc" becomes part of version as "_m2", "_rc". - Release counts from 1, not 0. This is done for both the "generic" RPMs and the "shared-compat" ones. It includes introducing a new version variable "MYSQL_U_SCORE_VERSION" in "configure.in", where the dash is replaced by an underscore: 5.5.1-m2 -> 5.5.1_m2 --- configure.in | 13 +++++++---- support-files/MySQL-shared-compat.spec.sh | 28 +++++++++++++++-------- support-files/mysql.spec.sh | 14 ++++++++---- 3 files changed, 37 insertions(+), 18 deletions(-) diff --git a/configure.in b/configure.in index a5b2c5c001a..2533e43ebf9 100644 --- a/configure.in +++ b/configure.in @@ -31,12 +31,14 @@ NDB_SHARED_LIB_VERSION=$NDB_SHARED_LIB_MAJOR_VERSION:0:0 # Remember that regexps needs to quote [ and ] since this is run through m4 # We take some made up examples # -# VERSION 5.1.40sp1-alpha 5.0.34a -# MYSQL_NO_DASH_VERSION 5.1.40sp1 5.0.34a -# MYSQL_NUMERIC_VERSION 5.1.40 5.0.34 -# MYSQL_BASE_VERSION 5.1 5.0 -# MYSQL_VERSION_ID 50140 50034 +# VERSION 5.1.40sp1-alpha 5.0.34a 5.5.1-m2 +# MYSQL_U_SCORE_VERSION 5.1.40sp1_alpha 5.0.34a 5.5.1_m2 +# MYSQL_NO_DASH_VERSION 5.1.40sp1 5.0.34a 5.5.1 +# MYSQL_NUMERIC_VERSION 5.1.40 5.0.34 5.5.1 +# MYSQL_BASE_VERSION 5.1 5.0 5.5 +# MYSQL_VERSION_ID 50140 50034 50501 # +MYSQL_U_SCORE_VERSION=`echo $VERSION | sed -e "s|-|_|"` MYSQL_NO_DASH_VERSION=`echo $VERSION | sed -e "s|-.*$||"` MYSQL_NUMERIC_VERSION=`echo $MYSQL_NO_DASH_VERSION | sed -e "s|[[a-z]][[a-z0-9]]*$||"` MYSQL_BASE_VERSION=`echo $MYSQL_NUMERIC_VERSION | sed -e "s|\.[[^.]]*$||"` @@ -74,6 +76,7 @@ romanian russian serbian slovak spanish swedish ukrainian" ##### ##### +AC_SUBST(MYSQL_U_SCORE_VERSION) AC_SUBST(MYSQL_NO_DASH_VERSION) AC_SUBST(MYSQL_BASE_VERSION) AC_SUBST(MYSQL_VERSION_ID) diff --git a/support-files/MySQL-shared-compat.spec.sh b/support-files/MySQL-shared-compat.spec.sh index 14a98616863..72654a22d87 100644 --- a/support-files/MySQL-shared-compat.spec.sh +++ b/support-files/MySQL-shared-compat.spec.sh @@ -1,3 +1,4 @@ +# Copyright 2003-2008 MySQL AB, 2009 Sun Microsystems, Inc. # # MySQL-shared-compat.spec # @@ -7,8 +8,6 @@ # separate "MySQL-shared" package. This spec file simply repackages two # already existing MySQL-shared RPMs into a single package. # -# Copyright (C) 2003 MySQL AB -# # This program is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by the Free # Software Foundation; version 2 of the License. @@ -28,27 +27,27 @@ # # Change this to match the version of the shared libs you want to include # -%define version50 @MYSQL_NO_DASH_VERSION@ +%define version_cur @MYSQL_U_SCORE_VERSION@ %define version41 4.1.17 %define version40 4.0.26 %define version3 3.23.58 Name: MySQL-shared-compat -Packager: MySQL Product Engineering team -Vendor: MySQL AB +Packager: Sun Microsystems, Inc. Product Engineering Team +Vendor: Sun Microsystems, Inc. License: GPL Group: Applications/Databases URL: http://www.mysql.com/ Autoreqprov: on -Version: %{version50} -Release: 0 +Version: %{version_cur} +Release: 1 BuildRoot: %{_tmppath}/%{name}-%{version}-build Obsoletes: MySQL-shared, mysql-shared Provides: MySQL-shared Summary: MySQL shared client libraries for MySQL %{version}, %{version41}, %{version40} and %{version3} # We simply use the "MySQL-shared" subpackages as input sources instead of # rebuilding all from source -Source0: MySQL-shared-%{version50}-0.%{_arch}.rpm +Source0: MySQL-shared-%{version_cur}-1.%{_arch}.rpm Source1: MySQL-shared-%{version41}-1.%{_arch}.rpm Source2: MySQL-shared-%{version40}-0.%{_arch}.rpm Source3: MySQL-shared-%{version3}-1.%{_arch}.rpm @@ -62,7 +61,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build %description This package includes the shared libraries for MySQL %{version3}, -MySQL %{version40}, %{version41} as well as MySQL %{version50}. +MySQL %{version40}, %{version41} as well as MySQL %{version_cur}. Install this package instead of "MySQL-shared", if you have applications installed that are dynamically linked against older versions of the MySQL client library but you want to upgrade to MySQL %{version} without breaking the @@ -84,3 +83,14 @@ rpm2cpio %{SOURCE3} | cpio -iv --make-directories %files %defattr(-, root, root) %{_libdir}/libmysqlclient* + +# The spec file changelog only includes changes made to the spec file +# itself - note that they must be ordered by date (important when +# merging BK trees) +%changelog +* Tue Dec 22 2009 Joerg Bruehe + +- Change RPM file naming: + - Suffix like "-m2", "-rc" becomes part of version as "_m2", "_rc". + - Release counts from 1, not 0. + diff --git a/support-files/mysql.spec.sh b/support-files/mysql.spec.sh index 83d4550466b..271d0c39e55 100644 --- a/support-files/mysql.spec.sh +++ b/support-files/mysql.spec.sh @@ -1,4 +1,4 @@ -# Copyright 2000-2008 MySQL AB, 2008 Sun Microsystems, Inc. +# Copyright 2000-2008 MySQL AB, 2008-2009 Sun Microsystems, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -50,9 +50,9 @@ %{!?malloc_lib_target:%define WITH_TCMALLOC 0} %if %{STATIC_BUILD} -%define release 0 +%define release 1 %else -%define release 0.glibc23 +%define release 1.glibc23 %endif %define mysql_license GPL %define mysqld_user mysql @@ -86,7 +86,7 @@ Name: MySQL Summary: MySQL: a very fast and reliable SQL database server Group: Applications/Databases -Version: @MYSQL_NO_DASH_VERSION@ +Version: @MYSQL_U_SCORE_VERSION@ Release: %{release} License: Copyright 2000-2008 MySQL AB, @MYSQL_COPYRIGHT_YEAR@ Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Under %{mysql_license} license as shown in the Description field. Source: http://www.mysql.com/Downloads/MySQL-@MYSQL_BASE_VERSION@/mysql-%{mysql_version}.tar.gz @@ -882,6 +882,12 @@ fi # itself - note that they must be ordered by date (important when # merging BK trees) %changelog +* Tue Dec 22 2009 Joerg Bruehe + +- Change RPM file naming: + - Suffix like "-m2", "-rc" becomes part of version as "_m2", "_rc". + - Release counts from 1, not 0. + * Mon Nov 16 2009 Joerg Bruehe - Fix some problems with the directives around "tcmalloc" (experimental), From f7c24a2e208b0b606d9671c4cecd90a8eeb1f2e2 Mon Sep 17 00:00:00 2001 From: Joerg Bruehe Date: Wed, 23 Dec 2009 13:06:41 +0100 Subject: [PATCH 3/7] The "semisync" plugin file name has lost its introductory "lib", adapt the file lists for the subpackages. This is a part missing from the fix for bug#48351. --- support-files/mysql.spec.sh | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/support-files/mysql.spec.sh b/support-files/mysql.spec.sh index 271d0c39e55..d1f364766ea 100644 --- a/support-files/mysql.spec.sh +++ b/support-files/mysql.spec.sh @@ -715,8 +715,8 @@ fi %attr(755, root, root) %{_bindir}/resolveip %attr(755, root, root) %{_libdir}/mysql/plugin/ha_example.so* -%attr(755, root, root) %{_libdir}/mysql/plugin/libsemisync_master.so* -%attr(755, root, root) %{_libdir}/mysql/plugin/libsemisync_slave.so* +%attr(755, root, root) %{_libdir}/mysql/plugin/semisync_master.so* +%attr(755, root, root) %{_libdir}/mysql/plugin/semisync_slave.so* %if %{WITH_TCMALLOC} %attr(755, root, root) %{_libdir}/mysql/%{malloc_lib_target} @@ -849,10 +849,10 @@ fi %{_libdir}/mysql/libz.la %{_libdir}/mysql/plugin/ha_example.a %{_libdir}/mysql/plugin/ha_example.la -%{_libdir}/mysql/plugin/libsemisync_master.a -%{_libdir}/mysql/plugin/libsemisync_master.la -%{_libdir}/mysql/plugin/libsemisync_slave.a -%{_libdir}/mysql/plugin/libsemisync_slave.la +%{_libdir}/mysql/plugin/semisync_master.a +%{_libdir}/mysql/plugin/semisync_master.la +%{_libdir}/mysql/plugin/semisync_slave.a +%{_libdir}/mysql/plugin/semisync_slave.la %files shared %defattr(-, root, root, 0755) @@ -882,6 +882,12 @@ fi # itself - note that they must be ordered by date (important when # merging BK trees) %changelog +* Wed Dec 23 2009 Joerg Bruehe + +- The "semisync" plugin file name has lost its introductory "lib", + adapt the file lists for the subpackages. + This is a part missing from the fix for bug#48351. + * Tue Dec 22 2009 Joerg Bruehe - Change RPM file naming: From f62540ee25f23b89348068c01d6697714db276d7 Mon Sep 17 00:00:00 2001 From: Joerg Bruehe Date: Wed, 23 Dec 2009 13:38:19 +0100 Subject: [PATCH 4/7] Backport a fix from "trunk" into 5.5.1 which came after cloning only. Original comment: revno: 2930 | revision-id: alik@sun.com-20091223120351-m6l2t721tvtsiumu | parent: alik@sun.com-20091223104155-cq3uw9l2yvg6jmgc | committer: Alexander Nozdrin | branch nick: mysql-trunk-bugfixing | timestamp: Wed 2009-12-23 15:03:51 +0300 | message: | Backporting fix for Bug#49834 from mysql-next-mr-bugfixing | into mysql-trunk-bugfixing. | | Original revision: | ------------------------------------------------------------ | revision-id: vvaintroub@mysql.com-20091222115311-bam0xorumd8gvjyo | parent: mattias.jonsson@sun.com-20091221104426-x2e6c93x8iik4fo0 | committer: Vladislav Vaintroub | branch nick: mysql-next-mr-bugfixing | timestamp: Tue 2009-12-22 12:53:11 +0100 | message: | Bug#49834 - fixed a bug introduced by mismerge. | restore original innobase version --- storage/innobase/CMakeLists.txt | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/storage/innobase/CMakeLists.txt b/storage/innobase/CMakeLists.txt index 3f9808a2022..b63ed840f3c 100644 --- a/storage/innobase/CMakeLists.txt +++ b/storage/innobase/CMakeLists.txt @@ -86,5 +86,10 @@ IF (MYSQL_VERSION_ID GREATER "50137") SET_TARGET_PROPERTIES(ha_innobase PROPERTIES OUTPUT_NAME ha_innodb) ENDIF(LIB_LOCATION) ELSE (MYSQL_VERSION_ID GREATER "50137") - MYSQL_STORAGE_ENGINE(INNODB_PLUGIN) + IF (NOT SOURCE_SUBLIBS) + ADD_DEFINITIONS(-D_WIN32 -DMYSQL_SERVER) + ADD_LIBRARY(innobase STATIC ${INNOBASE_SOURCES}) + # Require mysqld_error.h, which is built as part of the GenError + ADD_DEPENDENCIES(innobase GenError) + ENDIF (NOT SOURCE_SUBLIBS) ENDIF (MYSQL_VERSION_ID GREATER "50137") From 3be15fa67c0d2d5cce990391832c42e4c4050417 Mon Sep 17 00:00:00 2001 From: Joerg Bruehe Date: Wed, 23 Dec 2009 22:42:44 +0100 Subject: [PATCH 5/7] Remove the "fix_privilege_tables" manual from the RPM spec file, there is none in 5.5. --- support-files/mysql.spec.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/support-files/mysql.spec.sh b/support-files/mysql.spec.sh index d1f364766ea..4e7f8cfcfb5 100644 --- a/support-files/mysql.spec.sh +++ b/support-files/mysql.spec.sh @@ -673,7 +673,7 @@ fi %doc %attr(644, root, man) %{_mandir}/man8/mysqld.8* %doc %attr(644, root, man) %{_mandir}/man1/mysqld_multi.1* %doc %attr(644, root, man) %{_mandir}/man1/mysqld_safe.1* -%doc %attr(644, root, man) %{_mandir}/man1/mysql_fix_privilege_tables.1* +#%doc %attr(644, root, man) %{_mandir}/man1/mysql_fix_privilege_tables.1* %doc %attr(644, root, man) %{_mandir}/man1/mysql_install_db.1* %doc %attr(644, root, man) %{_mandir}/man1/mysql_upgrade.1* %doc %attr(644, root, man) %{_mandir}/man1/mysqlhotcopy.1* @@ -887,6 +887,8 @@ fi - The "semisync" plugin file name has lost its introductory "lib", adapt the file lists for the subpackages. This is a part missing from the fix for bug#48351. +- Remove the "fix_privilege_tables" manual, it does not exist in 5.5 + (and likely, the whole script will go, too). * Tue Dec 22 2009 Joerg Bruehe From d54d0d3c3155c69aa4643ccf95e2f553add6aff7 Mon Sep 17 00:00:00 2001 From: Joerg Bruehe Date: Fri, 25 Dec 2009 17:02:08 +0100 Subject: [PATCH 6/7] Backport into the 5.5.1-m2 release build: | Bug#49898 - Fix for bug#37408 introduces a linker error | | the declaration of THR_LOCK_myisam_mmap in mi_static | is redundant as it accessible via the extern declaration | in include/myisam.h storage/myisam/mi_static.c: Bug#49898 - Fix for bug#37408 introduces a linker error Remove THR_LOCK_myisam_mmap declaration as it is redundant --- storage/myisam/mi_static.c | 1 - 1 file changed, 1 deletion(-) diff --git a/storage/myisam/mi_static.c b/storage/myisam/mi_static.c index a43a099663b..27485e101ff 100644 --- a/storage/myisam/mi_static.c +++ b/storage/myisam/mi_static.c @@ -41,7 +41,6 @@ my_off_t myisam_max_temp_length= MAX_FILE_SIZE; ulong myisam_bulk_insert_tree_size=8192*1024; ulong myisam_data_pointer_size=4; ulonglong myisam_mmap_size= SIZE_T_MAX, myisam_mmap_used= 0; -pthread_mutex_t THR_LOCK_myisam_mmap; static int always_valid(const char *filename __attribute__((unused))) { From c55a0048cc31d1bd3e7968c00d1f70c30b2a1c75 Mon Sep 17 00:00:00 2001 From: Joerg Bruehe Date: Mon, 4 Jan 2010 15:03:09 +0100 Subject: [PATCH 7/7] Ensure that the variable "MYSQL_U_SCORE_VERSION" is expanded whereever it is used (currently, only RPM spec files). --- support-files/Makefile.am | 1 + 1 file changed, 1 insertion(+) diff --git a/support-files/Makefile.am b/support-files/Makefile.am index 47e8c395b31..f8f6b1bb5d4 100644 --- a/support-files/Makefile.am +++ b/support-files/Makefile.am @@ -120,6 +120,7 @@ SUFFIXES = .sh -e 's!@''SHARED_LIB_VERSION''@!@SHARED_LIB_VERSION@!' \ -e 's!@''MYSQL_BASE_VERSION''@!@MYSQL_BASE_VERSION@!' \ -e 's!@''MYSQL_NO_DASH_VERSION''@!@MYSQL_NO_DASH_VERSION@!' \ + -e 's!@''MYSQL_U_SCORE_VERSION''@!@MYSQL_U_SCORE_VERSION@!' \ -e 's!@''MYSQL_COPYRIGHT_YEAR''@!@MYSQL_COPYRIGHT_YEAR@!' \ -e 's!@''MYSQL_TCP_PORT''@!@MYSQL_TCP_PORT@!' \ -e 's!@''PERL_DBI_VERSION''@!@PERL_DBI_VERSION@!' \