Merge lp:~ignacio-nin/percona-xtradb-cluster/release-5.5.29 into lp:percona-xtradb-cluster/percona-xtradb-cluster-5.5

Proposed by Ignacio Nin
Status: Merged
Approved by: Vadim Tkachenko
Approved revision: no longer in the source branch.
Merged at revision: 381
Proposed branch: lp:~ignacio-nin/percona-xtradb-cluster/release-5.5.29
Merge into: lp:percona-xtradb-cluster/percona-xtradb-cluster-5.5
Diff against target: 12020 lines (+6281/-1224)
180 files modified
Makefile (+1/-1)
Makefile.ps (+2/-2)
Percona-Server/CMakeLists.txt (+2/-0)
Percona-Server/VERSION (+1/-1)
Percona-Server/client/mysql.cc (+89/-2)
Percona-Server/cmake/configure.pl (+10/-0)
Percona-Server/cmake/create_initial_db.cmake.in (+8/-2)
Percona-Server/cmake/info_macros.cmake.in (+5/-3)
Percona-Server/cmake/install_layout.cmake (+10/-2)
Percona-Server/cmake/mysql_version.cmake (+1/-1)
Percona-Server/cmake/package_name.cmake (+1/-1)
Percona-Server/cmake/plugin.cmake (+1/-0)
Percona-Server/cmake/wsrep.cmake (+1/-1)
Percona-Server/dbug/dbug.c (+1/-1)
Percona-Server/libmysql/libmysql.c (+1/-1)
Percona-Server/mysql-test/include/have_null_audit_plugin.inc (+22/-0)
Percona-Server/mysql-test/include/plugin.defs (+1/-0)
Percona-Server/mysql-test/include/rpl_start_server.inc (+10/-5)
Percona-Server/mysql-test/lib/mtr_cases.pm (+1/-0)
Percona-Server/mysql-test/mysql-test-run.pl (+1/-0)
Percona-Server/mysql-test/r/contributors.result (+2/-0)
Percona-Server/mysql-test/r/ctype_ucs.result (+26/-0)
Percona-Server/mysql-test/r/loaddata.result (+0/-29)
Percona-Server/mysql-test/r/percona_bug1017192.result (+10/-0)
Percona-Server/mysql-test/r/plugin_auth.result (+12/-9)
Percona-Server/mysql-test/r/show_check.result (+11/-0)
Percona-Server/mysql-test/r/sp_notembedded.result (+1/-1)
Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog_row_innodb.test (+1/-1)
Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog_row_myisam.test (+1/-1)
Percona-Server/mysql-test/suite/innodb/r/innodb-autoinc.result (+88/-0)
Percona-Server/mysql-test/suite/innodb/r/innodb-zip.result (+3/-3)
Percona-Server/mysql-test/suite/innodb/r/innodb.result (+1/-1)
Percona-Server/mysql-test/suite/innodb/r/innodb_bug14704286.result (+53/-0)
Percona-Server/mysql-test/suite/innodb/r/innodb_bug53591.result (+1/-1)
Percona-Server/mysql-test/suite/innodb/r/innodb_corrupt_bit.result (+4/-4)
Percona-Server/mysql-test/suite/innodb/r/innodb_misc1.result (+1/-1)
Percona-Server/mysql-test/suite/innodb/r/innodb_prefix_index_liftedlimit.result (+1/-1)
Percona-Server/mysql-test/suite/innodb/t/innodb-autoinc.test (+39/-2)
Percona-Server/mysql-test/suite/innodb/t/innodb_bug14704286.test (+95/-0)
Percona-Server/mysql-test/suite/innodb/t/innodb_corrupt_bit.test (+3/-3)
Percona-Server/mysql-test/suite/innodb/t/innodb_prefix_index_liftedlimit.test (+1/-0)
Percona-Server/mysql-test/suite/perfschema/r/func_file_io.result (+17/-0)
Percona-Server/mysql-test/suite/perfschema/r/func_mutex.result (+25/-0)
Percona-Server/mysql-test/suite/perfschema/t/func_file_io.test (+7/-0)
Percona-Server/mysql-test/suite/perfschema/t/func_mutex.test (+13/-0)
Percona-Server/mysql-test/suite/rpl/r/rpl_semi_sync.result (+12/-11)
Percona-Server/mysql-test/suite/rpl/t/rpl_semi_sync.test (+4/-3)
Percona-Server/mysql-test/suite/sys_vars/r/innodb_change_buffering_debug_basic.result (+0/-3)
Percona-Server/mysql-test/suite/sys_vars/t/innodb_change_buffering_debug_basic.test (+3/-1)
Percona-Server/mysql-test/t/ctype_ucs.test (+32/-0)
Percona-Server/mysql-test/t/loaddata.test (+34/-30)
Percona-Server/mysql-test/t/percona_bug1017192.test (+40/-0)
Percona-Server/mysql-test/t/plugin_auth.test (+23/-9)
Percona-Server/mysql-test/t/show_check.test (+14/-0)
Percona-Server/mysql-test/t/sp_notembedded.test (+10/-8)
Percona-Server/packaging/rpm-uln/CMakeLists.txt (+38/-0)
Percona-Server/packaging/rpm-uln/README-ULN (+15/-0)
Percona-Server/packaging/rpm-uln/README.mysql-docs (+4/-0)
Percona-Server/packaging/rpm-uln/filter-requires-mysql.sh (+3/-0)
Percona-Server/packaging/rpm-uln/generate-tarball.sh (+15/-0)
Percona-Server/packaging/rpm-uln/my.cnf (+10/-0)
Percona-Server/packaging/rpm-uln/my_config.h (+29/-0)
Percona-Server/packaging/rpm-uln/mysql-5.5-errno.patch (+21/-0)
Percona-Server/packaging/rpm-uln/mysql-5.5-fix-tests.patch (+34/-0)
Percona-Server/packaging/rpm-uln/mysql-5.5-libdir.patch (+28/-0)
Percona-Server/packaging/rpm-uln/mysql-5.5-mtr1.patch (+25/-0)
Percona-Server/packaging/rpm-uln/mysql-5.5-stack-guard.patch (+140/-0)
Percona-Server/packaging/rpm-uln/mysql-5.5-testing.patch (+23/-0)
Percona-Server/packaging/rpm-uln/mysql-chain-certs.patch (+45/-0)
Percona-Server/packaging/rpm-uln/mysql-embedded-check.c (+26/-0)
Percona-Server/packaging/rpm-uln/mysql-expired-certs.patch (+555/-0)
Percona-Server/packaging/rpm-uln/mysql-install-test.patch (+33/-0)
Percona-Server/packaging/rpm-uln/mysql-strmov.patch (+32/-0)
Percona-Server/packaging/rpm-uln/mysql.init (+209/-0)
Percona-Server/packaging/rpm-uln/mysql.spec.sh (+1959/-0)
Percona-Server/packaging/rpm-uln/scriptstub.c (+32/-0)
Percona-Server/scripts/clustercheck.sh (+3/-1)
Percona-Server/scripts/mysql_install_db.pl.in (+18/-3)
Percona-Server/scripts/mysqld_multi.sh (+22/-0)
Percona-Server/scripts/mysqld_safe.sh (+59/-24)
Percona-Server/sql/CMakeLists.txt (+5/-3)
Percona-Server/sql/event_db_repository.cc (+8/-2)
Percona-Server/sql/filesort.cc (+10/-1)
Percona-Server/sql/ha_partition.cc (+175/-49)
Percona-Server/sql/ha_partition.h (+4/-0)
Percona-Server/sql/handler.cc (+38/-9)
Percona-Server/sql/handler.h (+2/-0)
Percona-Server/sql/hostname.cc (+54/-2)
Percona-Server/sql/item_cmpfunc.cc (+19/-0)
Percona-Server/sql/item_func.cc (+2/-1)
Percona-Server/sql/item_func.h (+1/-0)
Percona-Server/sql/item_subselect.cc (+22/-9)
Percona-Server/sql/log.cc (+6/-0)
Percona-Server/sql/log_event.cc (+64/-7)
Percona-Server/sql/log_event.h (+2/-2)
Percona-Server/sql/log_event_old.cc (+27/-9)
Percona-Server/sql/mysqld.cc (+10/-1)
Percona-Server/sql/opt_range.cc (+58/-12)
Percona-Server/sql/opt_sum.cc (+7/-2)
Percona-Server/sql/records.cc (+8/-2)
Percona-Server/sql/rpl_utility.cc (+1/-0)
Percona-Server/sql/sp.cc (+14/-3)
Percona-Server/sql/sp_head.cc (+27/-21)
Percona-Server/sql/sp_rcontext.cc (+3/-8)
Percona-Server/sql/sp_rcontext.h (+42/-3)
Percona-Server/sql/sql_acl.cc (+270/-136)
Percona-Server/sql/sql_connect.cc (+13/-0)
Percona-Server/sql/sql_handler.cc (+13/-12)
Percona-Server/sql/sql_help.cc (+8/-2)
Percona-Server/sql/sql_lex.cc (+1/-0)
Percona-Server/sql/sql_list.h (+9/-1)
Percona-Server/sql/sql_parse.cc (+7/-2)
Percona-Server/sql/sql_plugin.cc (+3/-2)
Percona-Server/sql/sql_priv.h (+35/-0)
Percona-Server/sql/sql_profile.cc (+19/-10)
Percona-Server/sql/sql_profile.h (+4/-2)
Percona-Server/sql/sql_select.cc (+73/-31)
Percona-Server/sql/sql_show.cc (+13/-4)
Percona-Server/sql/sql_signal.cc (+9/-3)
Percona-Server/sql/sql_table.cc (+15/-7)
Percona-Server/sql/sql_update.cc (+10/-4)
Percona-Server/sql/sql_yacc.yy (+8/-0)
Percona-Server/sql/sys_vars.cc (+1/-3)
Percona-Server/sql/tztime.cc (+14/-18)
Percona-Server/sql/uniques.cc (+6/-1)
Percona-Server/sql/wsrep_mysqld.cc (+28/-13)
Percona-Server/sql/wsrep_mysqld.h (+3/-1)
Percona-Server/sql/wsrep_var.cc (+4/-2)
Percona-Server/storage/innobase/btr/btr0btr.c (+43/-15)
Percona-Server/storage/innobase/btr/btr0cur.c (+14/-12)
Percona-Server/storage/innobase/buf/buf0buf.c (+4/-3)
Percona-Server/storage/innobase/buf/buf0lru.c (+4/-2)
Percona-Server/storage/innobase/dict/dict0dict.c (+59/-30)
Percona-Server/storage/innobase/fil/fil0fil.c (+49/-25)
Percona-Server/storage/innobase/handler/ha_innodb.cc (+27/-13)
Percona-Server/storage/innobase/handler/ha_innodb.h (+5/-4)
Percona-Server/storage/innobase/handler/handler0alter.cc (+6/-2)
Percona-Server/storage/innobase/ibuf/ibuf0ibuf.c (+34/-4)
Percona-Server/storage/innobase/include/btr0cur.h (+1/-1)
Percona-Server/storage/innobase/include/dict0dict.h (+12/-0)
Percona-Server/storage/innobase/include/dict0mem.h (+6/-1)
Percona-Server/storage/innobase/include/page0zip.h (+5/-3)
Percona-Server/storage/innobase/include/row0undo.h (+0/-7)
Percona-Server/storage/innobase/include/row0upd.ic (+3/-0)
Percona-Server/storage/innobase/include/univ.i (+19/-1)
Percona-Server/storage/innobase/log/log0online.c (+4/-4)
Percona-Server/storage/innobase/log/log0recv.c (+2/-3)
Percona-Server/storage/innobase/os/os0file.c (+13/-0)
Percona-Server/storage/innobase/page/page0cur.c (+4/-3)
Percona-Server/storage/innobase/page/page0page.c (+16/-8)
Percona-Server/storage/innobase/page/page0zip.c (+111/-46)
Percona-Server/storage/innobase/rem/rem0rec.c (+3/-2)
Percona-Server/storage/innobase/row/row0ins.c (+0/-8)
Percona-Server/storage/innobase/row/row0mysql.c (+4/-1)
Percona-Server/storage/innobase/row/row0sel.c (+20/-7)
Percona-Server/storage/innobase/row/row0umod.c (+0/-53)
Percona-Server/storage/innobase/row/row0undo.c (+0/-19)
Percona-Server/storage/innobase/row/row0upd.c (+142/-38)
Percona-Server/storage/myisam/mi_open.c (+2/-1)
Percona-Server/storage/myisam/myisamchk.c (+8/-1)
Percona-Server/support-files/mysql.spec.sh (+28/-13)
Percona-Server/tests/mysql_client_test.c (+1/-0)
WSREP-REVISION (+1/-1)
build/build-binary.sh (+50/-22)
build/build-dpkg.sh (+10/-15)
build/debian/control (+60/-103)
build/debian/patches/30_scripts__mysqld_safe.sh__signals.dpatch (+9/-14)
build/debian/percona-server-server-5.5.docs (+0/-8)
build/debian/percona-server-server-5.5.install (+0/-56)
build/debian/rules (+42/-44)
build/percona-shared-compat.spec (+1/-1)
build/percona-xtradb-cluster.spec (+2/-2)
doc-ps/source/conf.py (+5/-5)
doc-ps/source/diagnostics/slow_extended_55.rst (+33/-32)
doc-ps/source/installation/apt_repo.rst (+1/-1)
doc-ps/source/management/changed_page_tracking.rst (+13/-0)
doc-ps/source/release-notes/Percona-Server-5.5.28-29.2.rst (+4/-2)
doc-ps/source/release-notes/Percona-Server-5.5.28-29.3.rst (+32/-0)
doc-ps/source/release-notes/Percona-Server-5.5.29-29.4.rst (+14/-0)
doc-ps/source/upstream-bug-fixes.rst (+45/-15)
To merge this branch: bzr merge lp:~ignacio-nin/percona-xtradb-cluster/release-5.5.29
Reviewer Review Type Date Requested Status
Vadim Tkachenko Approve
Review via email: mp+145971@code.launchpad.net

Description of the change

Changes for release 5.5.29-23.7.1

To post a comment you must log in.
Revision history for this message
Vadim Tkachenko (vadim-tk) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== renamed file 'Makefile.pxc' => 'Makefile'
2--- Makefile.pxc 2012-12-22 02:14:09 +0000
3+++ Makefile 2013-01-31 20:19:36 +0000
4@@ -1,6 +1,6 @@
5 FETCH_CMD=wget
6 MASTER_SITE=http://s3.amazonaws.com/percona.com/downloads/community
7-MYSQL_VERSION=5.5.28
8+MYSQL_VERSION=5.5.29
9 PERCONA_SERVER_VERSION=rel29.1
10 PERCONA_XTRADB_CLUSTER ?=Percona-XtraDB-Cluster-$(MYSQL_VERSION)
11 PERCONA_SERVER ?=Percona-Server
12
13=== renamed file 'Makefile' => 'Makefile.ps'
14--- Makefile 2012-12-06 19:08:25 +0000
15+++ Makefile.ps 2013-01-31 20:19:36 +0000
16@@ -1,7 +1,7 @@
17 FETCH_CMD=wget
18 MASTER_SITE=http://s3.amazonaws.com/percona.com/downloads/community
19-MYSQL_VERSION=5.5.28
20-PERCONA_SERVER_VERSION=rel29.2
21+MYSQL_VERSION=5.5.29
22+PERCONA_SERVER_VERSION=rel29.4
23 PERCONA_SERVER ?=Percona-Server-$(MYSQL_VERSION)-$(PERCONA_SERVER_VERSION)
24 PERCONA_SERVER_SHORT_1 ?=Percona-Server-$(MYSQL_VERSION)
25 PERCONA_SERVER_SHORT_2 ?=Percona-Server
26
27=== modified file 'Percona-Server/CMakeLists.txt'
28--- Percona-Server/CMakeLists.txt 2012-10-25 21:11:01 +0000
29+++ Percona-Server/CMakeLists.txt 2013-01-31 20:19:36 +0000
30@@ -19,6 +19,7 @@
31 CMAKE_POLICY(VERSION 2.8)
32 endif()
33
34+MESSAGE(STATUS "Running cmake version ${CMAKE_VERSION}")
35
36 SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake)
37
38@@ -347,6 +348,7 @@
39 IF(EXISTS ${CMAKE_SOURCE_DIR}/internal/CMakeLists.txt)
40 ADD_SUBDIRECTORY(internal)
41 ENDIF()
42+ ADD_SUBDIRECTORY(packaging/rpm-uln)
43 ENDIF()
44
45 INCLUDE(cmake/abi_check.cmake)
46
47=== modified file 'Percona-Server/VERSION'
48--- Percona-Server/VERSION 2012-10-25 21:11:01 +0000
49+++ Percona-Server/VERSION 2013-01-31 20:19:36 +0000
50@@ -1,4 +1,4 @@
51 MYSQL_VERSION_MAJOR=5
52 MYSQL_VERSION_MINOR=5
53-MYSQL_VERSION_PATCH=28
54+MYSQL_VERSION_PATCH=29
55 MYSQL_VERSION_EXTRA=
56
57=== modified file 'Percona-Server/client/mysql.cc'
58--- Percona-Server/client/mysql.cc 2012-10-25 21:11:01 +0000
59+++ Percona-Server/client/mysql.cc 2013-01-31 20:19:36 +0000
60@@ -250,6 +250,8 @@
61 static void add_int_to_prompt(int toadd);
62 static int get_result_width(MYSQL_RES *res);
63 static int get_field_disp_length(MYSQL_FIELD * field);
64+static int normalize_dbname(const char *line, char *buff, uint buff_size);
65+static int get_quote_count(const char *line);
66
67 /* A structure which contains information on the commands this program
68 can understand. */
69@@ -4197,8 +4199,23 @@
70 int select_db;
71
72 bzero(buff, sizeof(buff));
73- strmake(buff, line, sizeof(buff) - 1);
74- tmp= get_arg(buff, 0);
75+
76+ /*
77+ In case number of quotes exceed 2, we try to get
78+ the normalized db name.
79+ */
80+ if (get_quote_count(line) > 2)
81+ {
82+ if (normalize_dbname(line, buff, sizeof(buff)))
83+ return put_error(&mysql);
84+ tmp= buff;
85+ }
86+ else
87+ {
88+ strmake(buff, line, sizeof(buff) - 1);
89+ tmp= get_arg(buff, 0);
90+ }
91+
92 if (!tmp || !*tmp)
93 {
94 put_info("USE must be followed by a database name", INFO_ERROR);
95@@ -4264,6 +4281,62 @@
96 return 0;
97 }
98
99+/**
100+ Normalize database name.
101+
102+ @param line [IN] The command.
103+ @param buff [OUT] Normalized db name.
104+ @param buff_size [IN] Buffer size.
105+
106+ @return Operation status
107+ @retval 0 Success
108+ @retval 1 Failure
109+
110+ @note Sometimes server normilizes the database names
111+ & APIs like mysql_select_db() expect normalized
112+ database names. Since it is difficult to perform
113+ the name conversion/normalization on the client
114+ side, this function tries to get the normalized
115+ dbname (indirectly) from the server.
116+*/
117+
118+static int
119+normalize_dbname(const char *line, char *buff, uint buff_size)
120+{
121+ MYSQL_RES *res= NULL;
122+
123+ /* Send the "USE db" commmand to the server. */
124+ if (mysql_query(&mysql, line))
125+ return 1;
126+
127+ /*
128+ Now, get the normalized database name and store it
129+ into the buff.
130+ */
131+ if (!mysql_query(&mysql, "SELECT DATABASE()") &&
132+ (res= mysql_use_result(&mysql)))
133+ {
134+ MYSQL_ROW row= mysql_fetch_row(res);
135+ if (row && row[0])
136+ {
137+ size_t len= strlen(row[0]);
138+ /* Make sure there is enough room to store the dbname. */
139+ if ((len > buff_size) || ! memcpy(buff, row[0], len))
140+ {
141+ mysql_free_result(res);
142+ return 1;
143+ }
144+ }
145+ mysql_free_result(res);
146+ }
147+
148+ /* Restore the original database. */
149+ if (current_db && mysql_select_db(&mysql, current_db))
150+ return 1;
151+
152+ return 0;
153+}
154+
155 static int
156 com_warnings(String *buffer __attribute__((unused)),
157 char *line __attribute__((unused)))
158@@ -4343,6 +4416,20 @@
159 return valid_arg ? start : NullS;
160 }
161
162+/*
163+ Number of quotes present in the command's argument.
164+*/
165+static int
166+get_quote_count(const char *line)
167+{
168+ int quote_count;
169+ const char *ptr= line;
170+
171+ for(quote_count= 0; ptr ++ && *ptr; ptr= strpbrk(ptr, "\"\'`"))
172+ quote_count ++;
173+
174+ return quote_count;
175+}
176
177 static int
178 sql_real_connect(char *host,char *database,char *user,char *password,
179
180=== modified file 'Percona-Server/cmake/configure.pl'
181--- Percona-Server/cmake/configure.pl 2011-10-02 12:15:17 +0000
182+++ Percona-Server/cmake/configure.pl 2013-01-31 20:19:36 +0000
183@@ -221,6 +221,16 @@
184 $cmakeargs = $cmakeargs." -DENABLE_GCOV=ON";
185 next;
186 }
187+ if ($option =~ /with-client-ldflags/)
188+ {
189+ print("configure.pl : ignoring $option\n");
190+ next;
191+ }
192+ if ($option =~ /with-mysqld-ldflags=/)
193+ {
194+ print("configure.pl : ignoring $option\n");
195+ next;
196+ }
197
198 $option = uc($option);
199 $option =~ s/-/_/g;
200
201=== modified file 'Percona-Server/cmake/create_initial_db.cmake.in'
202--- Percona-Server/cmake/create_initial_db.cmake.in 2011-06-30 15:46:53 +0000
203+++ Percona-Server/cmake/create_initial_db.cmake.in 2013-01-31 20:19:36 +0000
204@@ -69,10 +69,13 @@
205 COMMAND "@CMAKE_COMMAND@" -E echo Executing ${BOOTSTRAP_COMMAND}
206 )
207 EXECUTE_PROCESS (
208- COMMAND "@CMAKE_COMMAND@" -E echo input file bootstrap.sql, current directory ${CWD}
209+ COMMAND "@CMAKE_COMMAND@" -E
210+ echo input file bootstrap.sql, current directory ${CWD}
211 )
212 EXECUTE_PROCESS (
213- COMMAND ${BOOTSTRAP_COMMAND} INPUT_FILE bootstrap.sql OUTPUT_VARIABLE OUT
214+ COMMAND ${BOOTSTRAP_COMMAND}
215+ INPUT_FILE bootstrap.sql
216+ OUTPUT_VARIABLE OUT
217 ERROR_VARIABLE ERR
218 RESULT_VARIABLE RESULT
219 )
220@@ -81,3 +84,6 @@
221 MESSAGE(FATAL_ERROR "Could not create initial database \n ${OUT} \n ${ERR}")
222 ENDIF()
223
224+EXECUTE_PROCESS (
225+ COMMAND "@CMAKE_COMMAND@" -E touch ${CMAKE_CURRENT_BINARY_DIR}/initdb.dep
226+)
227
228=== modified file 'Percona-Server/cmake/info_macros.cmake.in'
229--- Percona-Server/cmake/info_macros.cmake.in 2012-04-20 17:56:48 +0000
230+++ Percona-Server/cmake/info_macros.cmake.in 2013-01-31 20:19:36 +0000
231@@ -1,4 +1,4 @@
232-# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
233+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
234 #
235 # This program is free software; you can redistribute it and/or modify
236 # it under the terms of the GNU General Public License as published by
237@@ -82,9 +82,11 @@
238
239 FILE(WRITE ${INFO_BIN} "===== Information about the build process: =====\n")
240 IF (WIN32)
241- EXECUTE_PROCESS(COMMAND cmd /c date /T OUTPUT_VARIABLE TMP_DATE)
242+ EXECUTE_PROCESS(COMMAND cmd /c date /T
243+ OUTPUT_VARIABLE TMP_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
244 ELSEIF(UNIX)
245- EXECUTE_PROCESS(COMMAND date "+%Y-%m-%d %H:%M:%S" OUTPUT_VARIABLE TMP_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
246+ EXECUTE_PROCESS(COMMAND date "+%Y-%m-%d %H:%M:%S"
247+ OUTPUT_VARIABLE TMP_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
248 ELSE()
249 SET(TMP_DATE "(no date command known for this platform)")
250 ENDIF()
251
252=== modified file 'Percona-Server/cmake/install_layout.cmake'
253--- Percona-Server/cmake/install_layout.cmake 2012-08-14 18:04:50 +0000
254+++ Percona-Server/cmake/install_layout.cmake 2013-01-31 20:19:36 +0000
255@@ -1,4 +1,4 @@
256-# Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
257+# Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
258 #
259 # This program is free software; you can redistribute it and/or modify
260 # it under the terms of the GNU General Public License as published by
261@@ -24,6 +24,7 @@
262 #
263 # RPM
264 # Build as per default RPM layout, with prefix=/usr
265+# Note: The layout for ULN RPMs differs, see the "RPM" section.
266 #
267 # DEB
268 # Build as per STANDALONE, prefix=/opt/mysql/server-$major.$minor
269@@ -103,7 +104,10 @@
270 # just use if(INSTALL_PLUGINTESTDIR).
271 # The plugin must set its own install path for tests
272 #
273-FILE(GLOB plugin_tests ${CMAKE_SOURCE_DIR}/plugin/*/tests)
274+FILE(GLOB plugin_tests
275+ ${CMAKE_SOURCE_DIR}/plugin/*/tests
276+ ${CMAKE_SOURCE_DIR}/internal/plugin/*/tests
277+)
278
279 #
280 # STANDALONE layout
281@@ -136,6 +140,10 @@
282 #
283 # RPM layout
284 #
285+# See "packaging/rpm-uln/mysql-5.5-libdir.patch" for the differences
286+# which apply to RPMs in ULN (Oracle Linux), that patch file will
287+# be applied at build time via "rpmbuild".
288+#
289 SET(INSTALL_BINDIR_RPM "bin")
290 SET(INSTALL_SBINDIR_RPM "sbin")
291 SET(INSTALL_SCRIPTDIR_RPM "bin")
292
293=== modified file 'Percona-Server/cmake/mysql_version.cmake'
294--- Percona-Server/cmake/mysql_version.cmake 2012-03-22 15:16:11 +0000
295+++ Percona-Server/cmake/mysql_version.cmake 2013-01-31 20:19:36 +0000
296@@ -54,7 +54,7 @@
297 ENDIF()
298
299 SET(VERSION "${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}${EXTRA_VERSION}")
300- MESSAGE("-- MySQL ${VERSION}")
301+ MESSAGE(STATUS "MySQL ${VERSION}")
302 SET(MYSQL_BASE_VERSION "${MAJOR_VERSION}.${MINOR_VERSION}" CACHE INTERNAL "MySQL Base version")
303 SET(MYSQL_NO_DASH_VERSION "${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}")
304 # Use NDBVERSION irregardless of whether this is Cluster or not, if not
305
306=== modified file 'Percona-Server/cmake/package_name.cmake'
307--- Percona-Server/cmake/package_name.cmake 2012-03-22 15:16:11 +0000
308+++ Percona-Server/cmake/package_name.cmake 2013-01-31 20:19:36 +0000
309@@ -123,7 +123,7 @@
310 SET(package_name "mysql${PRODUCT_TAG}-${VERSION}-${SYSTEM_NAME_AND_PROCESSOR}")
311 ENDIF()
312
313- MESSAGE("-- Packaging as: ${package_name}")
314+ MESSAGE(STATUS "Packaging as: ${package_name}")
315
316 # Sometimes package suffix is added (something like "-icc-glibc23")
317 IF(PACKAGE_SUFFIX)
318
319=== modified file 'Percona-Server/cmake/plugin.cmake'
320--- Percona-Server/cmake/plugin.cmake 2011-08-15 10:10:08 +0000
321+++ Percona-Server/cmake/plugin.cmake 2013-01-31 20:19:36 +0000
322@@ -39,6 +39,7 @@
323 GET_FILENAME_COMPONENT(fname ${cfile} NAME)
324 FILE(APPEND ${CMAKE_SOURCE_DIR}/mysql-test/collections/${fname} "${contents}")
325 FILE(APPEND ${fcopied} "${fname}\n")
326+ MESSAGE(STATUS "Appended ${cfile}")
327 ENDFOREACH()
328 ENDIF()
329 ENDMACRO()
330
331=== modified file 'Percona-Server/cmake/wsrep.cmake'
332--- Percona-Server/cmake/wsrep.cmake 2012-11-28 21:59:24 +0000
333+++ Percona-Server/cmake/wsrep.cmake 2013-01-31 20:19:36 +0000
334@@ -17,7 +17,7 @@
335 # so WSREP_VERSION is produced regardless
336
337 # Set the patch version
338-SET(WSREP_PATCH_VERSION "7")
339+SET(WSREP_PATCH_VERSION "7.1")
340
341 # Obtain patch revision number
342 SET(WSREP_PATCH_REVNO $ENV{WSREP_REV})
343
344=== modified file 'Percona-Server/dbug/dbug.c'
345--- Percona-Server/dbug/dbug.c 2011-07-07 11:22:43 +0000
346+++ Percona-Server/dbug/dbug.c 2013-01-31 20:19:36 +0000
347@@ -1179,7 +1179,7 @@
348 pthread_mutex_lock(&THR_LOCK_dbug);
349 DoPrefix(cs, _line_);
350 Indent(cs, cs->level);
351- (void) fprintf(cs->stack->out_file, "<%s\n", cs->func);
352+ (void) fprintf(cs->stack->out_file, "<%s %u\n", cs->func, _line_);
353 DbugFlush(cs);
354 }
355 }
356
357=== modified file 'Percona-Server/libmysql/libmysql.c'
358--- Percona-Server/libmysql/libmysql.c 2012-09-17 13:08:32 +0000
359+++ Percona-Server/libmysql/libmysql.c 2013-01-31 20:19:36 +0000
360@@ -4218,7 +4218,7 @@
361 if ((int) stmt->state < (int) MYSQL_STMT_FETCH_DONE)
362 {
363 set_stmt_error(stmt, CR_NO_DATA, unknown_sqlstate, NULL);
364- return 1;
365+ DBUG_RETURN(1);
366 }
367 if (column >= stmt->field_count)
368 {
369
370=== renamed file 'Percona-Server/mysql-test/include/mysqlbinlog_row_engine.inc' => 'Percona-Server/mysql-test/extra/binlog_tests/mysqlbinlog_row_engine.inc'
371=== added file 'Percona-Server/mysql-test/include/have_null_audit_plugin.inc'
372--- Percona-Server/mysql-test/include/have_null_audit_plugin.inc 1970-01-01 00:00:00 +0000
373+++ Percona-Server/mysql-test/include/have_null_audit_plugin.inc 2013-01-31 20:19:36 +0000
374@@ -0,0 +1,22 @@
375+disable_query_log;
376+#
377+# Check if server has support for loading plugins
378+#
379+if (`SELECT @@have_dynamic_loading != 'YES'`) {
380+ --skip Null audit plugin requires dynamic loading
381+}
382+
383+#
384+# Check if the variable AUDIT_NULL is set
385+#
386+if (!$AUDIT_NULL) {
387+ --skip Audit_null plugin requires the environment variable \$AUDIT_NULL to be set (normally done by mtr)
388+}
389+
390+#
391+# Check if --plugin-dir was setup for null_audit db
392+#
393+if (`SELECT CONCAT('--plugin-dir=', REPLACE(@@plugin_dir, '\\\\', '/')) != '$AUDIT_NULL_OPT/'`) {
394+ --skip null audit plugin requires that --plugin-dir is set to the null audit plugin dir (either the .opt file does not contain \$AUDIT_NULL_OPT or another plugin is in use)
395+}
396+enable_query_log;
397
398=== modified file 'Percona-Server/mysql-test/include/plugin.defs'
399--- Percona-Server/mysql-test/include/plugin.defs 2011-09-21 10:40:41 +0000
400+++ Percona-Server/mysql-test/include/plugin.defs 2013-01-31 20:19:36 +0000
401@@ -40,3 +40,4 @@
402 ha_federated storage/federated FEDERATED_PLUGIN
403 mypluglib plugin/fulltext SIMPLE_PARSER
404 libdaemon_example plugin/daemon_example DAEMONEXAMPLE
405+adt_null plugin/audit_null AUDIT_NULL
406
407=== modified file 'Percona-Server/mysql-test/include/rpl_start_server.inc'
408--- Percona-Server/mysql-test/include/rpl_start_server.inc 2011-01-18 11:25:07 +0000
409+++ Percona-Server/mysql-test/include/rpl_start_server.inc 2013-01-31 20:19:36 +0000
410@@ -8,6 +8,7 @@
411 # --let $rpl_server_number= N
412 # [--let $rpl_server_parameters= --flag1 --flag2 ...]
413 # [--let $rpl_debug= 1]
414+# [--let $rpl_server_error= 0]
415 # --source include/rpl_start_server.inc
416 #
417 # Parameters:
418@@ -21,6 +22,9 @@
419 # If set, extra parameters given by this variable are passed to
420 # mysqld.
421 #
422+# $rpl_server_error
423+# If set, failure of the server startup is expected.
424+#
425 # $rpl_debug
426 # See include/rpl_init.inc
427 #
428@@ -47,8 +51,9 @@
429 # Write file to make mysql-test-run.pl start up the server again
430 --exec echo "$_rpl_start_server_command" > $MYSQLTEST_VARDIR/tmp/mysqld.$rpl_server_number.expect
431
432---source include/rpl_reconnect.inc
433-
434-
435---let $include_filename= rpl_start_server.inc $_rpl_start_server_args
436---source include/end_include_file.inc
437+if (!$rpl_server_error)
438+{
439+ --source include/rpl_reconnect.inc
440+ --let $include_filename= rpl_start_server.inc $_rpl_start_server_args
441+ --source include/end_include_file.inc
442+}
443
444=== modified file 'Percona-Server/mysql-test/lib/mtr_cases.pm'
445--- Percona-Server/mysql-test/lib/mtr_cases.pm 2012-10-25 21:11:01 +0000
446+++ Percona-Server/mysql-test/lib/mtr_cases.pm 2013-01-31 20:19:36 +0000
447@@ -295,6 +295,7 @@
448 "storage/*/mtr",
449 # Look in plugin specific suite dir
450 "plugin/$suite/tests",
451+ "internal/plugin/$suite/tests",
452 ],
453 [$suite, "mtr"], ($suite =~ /^i_/));
454 return unless $suitedir;
455
456=== modified file 'Percona-Server/mysql-test/mysql-test-run.pl'
457--- Percona-Server/mysql-test/mysql-test-run.pl 2012-09-17 13:08:32 +0000
458+++ Percona-Server/mysql-test/mysql-test-run.pl 2013-01-31 20:19:36 +0000
459@@ -461,6 +461,7 @@
460
461 # Also read from any plugin local or suite specific plugin.defs
462 for (glob "$basedir/plugin/*/tests/mtr/plugin.defs".
463+ " $basedir/internal/plugin/*/tests/mtr/plugin.defs".
464 " suite/*/plugin.defs") {
465 read_plugin_defs($_);
466 }
467
468=== modified file 'Percona-Server/mysql-test/r/contributors.result'
469--- Percona-Server/mysql-test/r/contributors.result 2006-05-03 00:53:26 +0000
470+++ Percona-Server/mysql-test/r/contributors.result 2013-01-31 20:19:36 +0000
471@@ -3,3 +3,5 @@
472 Ronald Bradford Brisbane, Australia EFF contribution for UC2006 Auction
473 Sheeri Kritzer Boston, Mass. USA EFF contribution for UC2006 Auction
474 Mark Shuttleworth London, UK. EFF contribution for UC2006 Auction
475+Warnings:
476+Warning 1681 'SHOW CONTRIBUTORS' is deprecated and will be removed in a future release.
477
478=== modified file 'Percona-Server/mysql-test/r/ctype_ucs.result'
479--- Percona-Server/mysql-test/r/ctype_ucs.result 2012-06-29 10:12:21 +0000
480+++ Percona-Server/mysql-test/r/ctype_ucs.result 2013-01-31 20:19:36 +0000
481@@ -191,6 +191,32 @@
482 `r` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT ''
483 ) ENGINE=MyISAM DEFAULT CHARSET=latin1
484 DROP TABLE t1;
485+#
486+# Bug #51876 : crash/memory underrun when loading data with ucs2
487+# and reverse() function
488+#
489+# Problem # 1 (original report): wrong parsing of ucs2 data
490+SELECT '00' UNION SELECT '10' INTO OUTFILE 'tmpp.txt';
491+CREATE TABLE t1(a INT);
492+LOAD DATA INFILE 'tmpp.txt' INTO TABLE t1 CHARACTER SET ucs2
493+(@b) SET a=REVERSE(@b);
494+# should return 2 zeroes (as the value is truncated)
495+SELECT * FROM t1;
496+a
497+0
498+1
499+DROP TABLE t1;
500+# Problem # 2 : if you write and read ucs2 data to a file they're lost
501+SELECT '00' UNION SELECT '10' INTO OUTFILE 'tmpp2.txt' CHARACTER SET ucs2;
502+CREATE TABLE t1(a INT);
503+LOAD DATA INFILE 'tmpp2.txt' INTO TABLE t1 CHARACTER SET ucs2
504+(@b) SET a=REVERSE(@b);
505+# should return 0 and 1 (10 reversed)
506+SELECT * FROM t1;
507+a
508+0
509+1
510+DROP TABLE t1;
511 create table t2(f1 Char(30));
512 insert into t2 values ("103000"), ("22720000"), ("3401200"), ("78000");
513 select lpad(f1, 12, "-o-/") from t2;
514
515=== modified file 'Percona-Server/mysql-test/r/loaddata.result'
516--- Percona-Server/mysql-test/r/loaddata.result 2011-05-10 14:29:44 +0000
517+++ Percona-Server/mysql-test/r/loaddata.result 2013-01-31 20:19:36 +0000
518@@ -504,35 +504,6 @@
519 LOAD DATA LOCAL INFILE 'tb.txt' INTO TABLE t1;
520 DROP TABLE t1;
521 #
522-# Bug #51876 : crash/memory underrun when loading data with ucs2
523-# and reverse() function
524-#
525-# Problem # 1 (original report): wrong parsing of ucs2 data
526-SELECT '00' UNION SELECT '10' INTO OUTFILE 'tmpp.txt';
527-CREATE TABLE t1(a INT);
528-LOAD DATA INFILE 'tmpp.txt' INTO TABLE t1 CHARACTER SET ucs2
529-(@b) SET a=REVERSE(@b);
530-Warnings:
531-Warning 1366 Incorrect integer value: '?' for column 'a' at row 1
532-Warning 1366 Incorrect integer value: '?' for column 'a' at row 2
533-# should return 2 zeroes (as the value is truncated)
534-SELECT * FROM t1;
535-a
536-0
537-0
538-DROP TABLE t1;
539-# Problem # 2 : if you write and read ucs2 data to a file they're lost
540-SELECT '00' UNION SELECT '10' INTO OUTFILE 'tmpp2.txt' CHARACTER SET ucs2;
541-CREATE TABLE t1(a INT);
542-LOAD DATA INFILE 'tmpp2.txt' INTO TABLE t1 CHARACTER SET ucs2
543-(@b) SET a=REVERSE(@b);
544-# should return 0 and 1 (10 reversed)
545-SELECT * FROM t1;
546-a
547-0
548-1
549-DROP TABLE t1;
550-#
551 # Bug#11765139 58069: LOAD DATA INFILE: VALGRIND REPORTS INVALID MEMORY READS AND WRITES WITH U
552 #
553 CREATE TABLE t1(f1 INT);
554
555=== added file 'Percona-Server/mysql-test/r/percona_bug1017192.result'
556--- Percona-Server/mysql-test/r/percona_bug1017192.result 1970-01-01 00:00:00 +0000
557+++ Percona-Server/mysql-test/r/percona_bug1017192.result 2013-01-31 20:19:36 +0000
558@@ -0,0 +1,10 @@
559+SET DEBUG_SYNC='reset';
560+CREATE TABLE IF NOT EXISTS t1 (`a` INT) ENGINE=InnoDB;
561+INSERT INTO t1 VALUES (1),(2),(3),(4);
562+SET DEBUG_SYNC='after_copy_data_between_tables SIGNAL run_show_innodb_status
563+ WAIT_FOR show_innodb_status_done';
564+ALTER TABLE t1 PARTITION BY HASH (`a`) PARTITIONS 4 ;
565+SET DEBUG_SYNC='now WAIT_FOR run_show_innodb_status';
566+SHOW ENGINE INNODB STATUS;
567+SET DEBUG_SYNC='now SIGNAL show_innodb_status_done';
568+DROP TABLE t1;
569
570=== modified file 'Percona-Server/mysql-test/r/plugin_auth.result'
571--- Percona-Server/mysql-test/r/plugin_auth.result 2011-10-12 12:07:15 +0000
572+++ Percona-Server/mysql-test/r/plugin_auth.result 2013-01-31 20:19:36 +0000
573@@ -124,17 +124,20 @@
574 this should fail : not the same user
575 GRANT PROXY ON grant_plug TO grant_plug_dest;
576 ERROR 28000: Access denied for user 'grant_plug_dest'@'localhost'
577-this should fail : same user, but on a different host
578+This is a valid grant
579 GRANT PROXY ON grant_plug_dest TO grant_plug;
580-ERROR 28000: Access denied for user 'grant_plug_dest'@'localhost'
581-this should work : same user
582-GRANT PROXY ON grant_plug_dest@localhost TO grant_plug_dest2;
583-REVOKE PROXY ON grant_plug_dest@localhost FROM grant_plug_dest2;
584-this should work : same user
585+REVOKE PROXY ON grant_plug_dest FROM grant_plug;
586+this should work : same user
587+GRANT PROXY ON grant_plug_dest TO grant_plug_dest2;
588+REVOKE PROXY ON grant_plug_dest FROM grant_plug_dest2;
589+this should fail : not the same user
590 GRANT PROXY ON grant_plug_dest@localhost TO grant_plug WITH GRANT OPTION;
591+ERROR 28000: Access denied for user 'grant_plug_dest'@'localhost'
592+this should fail : not the same user
593 REVOKE PROXY ON grant_plug_dest@localhost FROM grant_plug;
594+ERROR 28000: Access denied for user 'grant_plug_dest'@'localhost'
595 this should fail : can't create users
596-GRANT PROXY ON grant_plug_dest@localhost TO grant_plug@localhost;
597+GRANT PROXY ON grant_plug_dest TO grant_plug@localhost;
598 ERROR 42000: You are not allowed to create a user with GRANT
599 in default connection
600 # test what root can grant
601@@ -152,12 +155,12 @@
602 in default connection
603 SHOW GRANTS FOR grant_plug;
604 Grants for grant_plug@%
605-GRANT ALL PRIVILEGES ON *.* TO 'grant_plug'@'%' WITH GRANT OPTION
606+GRANT ALL PRIVILEGES ON *.* TO 'grant_plug'@'%'
607 GRANT PROXY ON 'future_user'@'%' TO 'grant_plug'@'%'
608 REVOKE PROXY ON future_user FROM grant_plug;
609 SHOW GRANTS FOR grant_plug;
610 Grants for grant_plug@%
611-GRANT ALL PRIVILEGES ON *.* TO 'grant_plug'@'%' WITH GRANT OPTION
612+GRANT ALL PRIVILEGES ON *.* TO 'grant_plug'@'%'
613 ## testing drop user
614 CREATE USER test_drop@localhost;
615 GRANT PROXY ON future_user TO test_drop@localhost;
616
617=== modified file 'Percona-Server/mysql-test/r/show_check.result'
618--- Percona-Server/mysql-test/r/show_check.result 2012-04-21 03:36:40 +0000
619+++ Percona-Server/mysql-test/r/show_check.result 2013-01-31 20:19:36 +0000
620@@ -1552,3 +1552,14 @@
621 óóóó
622 1
623 SET NAMES latin1;
624+#
625+# WL#6454: Deprecate SHOW AUTHORS and SHOW CONTRIBUTORS
626+#
627+SHOW AUTHORS;
628+SHOW WARNINGS;
629+Level Code Message
630+Warning 1681 'SHOW AUTHORS' is deprecated and will be removed in a future release.
631+SHOW CONTRIBUTORS;
632+SHOW WARNINGS;
633+Level Code Message
634+Warning 1681 'SHOW CONTRIBUTORS' is deprecated and will be removed in a future release.
635
636=== modified file 'Percona-Server/mysql-test/r/sp_notembedded.result'
637--- Percona-Server/mysql-test/r/sp_notembedded.result 2012-03-28 08:05:08 +0000
638+++ Percona-Server/mysql-test/r/sp_notembedded.result 2013-01-31 20:19:36 +0000
639@@ -309,7 +309,6 @@
640 # Switching to default connection.
641 DROP DATABASE `my.db`;
642 USE test;
643-set @@global.concurrent_insert= @old_concurrent_insert;
644 #
645 # Bug#11763507 - 56224: FUNCTION NAME IS CASE-SENSITIVE
646 #
647@@ -330,3 +329,4 @@
648 teste_bug11763507 SYSTEM # latin1 latin1_swedish_ci latin1_swedish_ci
649 DROP EVENT teste_bug11763507;
650 #END OF BUG#11763507 test.
651+set @@global.concurrent_insert= @old_concurrent_insert;
652
653=== renamed file 'Percona-Server/mysql-test/r/mysqlbinlog-cp932.result' => 'Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog-cp932.result'
654=== renamed file 'Percona-Server/mysql-test/r/mysqlbinlog2.result' => 'Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog2.result'
655=== renamed file 'Percona-Server/mysql-test/r/mysqlbinlog_base64.result' => 'Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_base64.result'
656=== renamed file 'Percona-Server/mysql-test/r/mysqlbinlog_row.result' => 'Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row.result'
657=== renamed file 'Percona-Server/mysql-test/r/mysqlbinlog_row_innodb.result' => 'Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_innodb.result'
658=== renamed file 'Percona-Server/mysql-test/r/mysqlbinlog_row_myisam.result' => 'Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_myisam.result'
659=== renamed file 'Percona-Server/mysql-test/r/mysqlbinlog_row_trans.result' => 'Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_trans.result'
660=== renamed file 'Percona-Server/mysql-test/t/mysqlbinlog-cp932-master.opt' => 'Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog-cp932-master.opt'
661=== renamed file 'Percona-Server/mysql-test/t/mysqlbinlog-cp932.test' => 'Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog-cp932.test'
662=== renamed file 'Percona-Server/mysql-test/t/mysqlbinlog2.test' => 'Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog2.test'
663=== renamed file 'Percona-Server/mysql-test/t/mysqlbinlog_base64.test' => 'Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog_base64.test'
664=== renamed file 'Percona-Server/mysql-test/t/mysqlbinlog_row.test' => 'Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog_row.test'
665=== renamed file 'Percona-Server/mysql-test/t/mysqlbinlog_row_innodb.test' => 'Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog_row_innodb.test'
666--- Percona-Server/mysql-test/t/mysqlbinlog_row_innodb.test 2008-08-20 14:06:31 +0000
667+++ Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog_row_innodb.test 2013-01-31 20:19:36 +0000
668@@ -20,5 +20,5 @@
669 --source include/have_binlog_format_row.inc
670 --source include/have_ucs2.inc
671
672---source include/mysqlbinlog_row_engine.inc
673+--source extra/binlog_tests/mysqlbinlog_row_engine.inc
674
675
676=== renamed file 'Percona-Server/mysql-test/t/mysqlbinlog_row_myisam.test' => 'Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog_row_myisam.test'
677--- Percona-Server/mysql-test/t/mysqlbinlog_row_myisam.test 2008-08-20 14:06:31 +0000
678+++ Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog_row_myisam.test 2013-01-31 20:19:36 +0000
679@@ -20,4 +20,4 @@
680 --source include/have_binlog_format_row.inc
681 --source include/have_ucs2.inc
682
683---source include/mysqlbinlog_row_engine.inc
684+--source extra/binlog_tests/mysqlbinlog_row_engine.inc
685
686=== renamed file 'Percona-Server/mysql-test/t/mysqlbinlog_row_trans.test' => 'Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog_row_trans.test'
687=== modified file 'Percona-Server/mysql-test/suite/innodb/r/innodb-autoinc.result'
688--- Percona-Server/mysql-test/suite/innodb/r/innodb-autoinc.result 2012-05-02 15:45:07 +0000
689+++ Percona-Server/mysql-test/suite/innodb/r/innodb-autoinc.result 2013-01-31 20:19:36 +0000
690@@ -1289,3 +1289,91 @@
691 c1 c2
692 1 NULL
693 DROP TABLE t1;
694+SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=1;
695+SHOW VARIABLES LIKE "%auto_inc%";
696+Variable_name Value
697+auto_increment_increment 1
698+auto_increment_offset 1
699+CREATE TABLE t1 (c1 INT UNSIGNED PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
700+INSERT INTO t1 VALUES (2147483648, 'a');
701+SHOW CREATE TABLE t1;
702+Table Create Table
703+t1 CREATE TABLE `t1` (
704+ `c1` int(10) unsigned NOT NULL AUTO_INCREMENT,
705+ `c2` varchar(10) DEFAULT NULL,
706+ PRIMARY KEY (`c1`)
707+) ENGINE=InnoDB AUTO_INCREMENT=2147483649 DEFAULT CHARSET=latin1
708+SELECT * FROM t1;
709+c1 c2
710+2147483648 a
711+ALTER TABLE t1 CHANGE c1 c1 INT;
712+Warnings:
713+Warning 1264 Out of range value for column 'c1' at row 1
714+SHOW CREATE TABLE t1;
715+Table Create Table
716+t1 CREATE TABLE `t1` (
717+ `c1` int(11) NOT NULL DEFAULT '0',
718+ `c2` varchar(10) DEFAULT NULL,
719+ PRIMARY KEY (`c1`)
720+) ENGINE=InnoDB DEFAULT CHARSET=latin1
721+INSERT INTO t1(c2) VALUES('b');
722+SELECT * FROM t1;
723+c1 c2
724+0 b
725+2147483647 a
726+SHOW CREATE TABLE t1;
727+Table Create Table
728+t1 CREATE TABLE `t1` (
729+ `c1` int(11) NOT NULL DEFAULT '0',
730+ `c2` varchar(10) DEFAULT NULL,
731+ PRIMARY KEY (`c1`)
732+) ENGINE=InnoDB DEFAULT CHARSET=latin1
733+DROP TABLE t1;
734+CREATE TABLE t1 (c1 INT AUTO_INCREMENT PRIMARY KEY, c2 INT) ENGINE = MyISAM;
735+INSERT INTO t1 (c1) VALUES (NULL), (-290783232), (NULL);
736+Warnings:
737+Warning 1264 Out of range value for column 'c1' at row 3
738+SHOW CREATE TABLE t1;
739+Table Create Table
740+t1 CREATE TABLE `t1` (
741+ `c1` int(11) NOT NULL AUTO_INCREMENT,
742+ `c2` int(11) DEFAULT NULL,
743+ PRIMARY KEY (`c1`)
744+) ENGINE=MyISAM AUTO_INCREMENT=2147483648 DEFAULT CHARSET=latin1
745+SELECT * FROM t1;
746+c1 c2
747+1 NULL
748+-290783232 NULL
749+2147483647 NULL
750+ALTER TABLE t1 ENGINE = InnoDB;
751+SELECT * FROM t1;
752+c1 c2
753+-290783232 NULL
754+1 NULL
755+2147483647 NULL
756+SHOW CREATE TABLE t1;
757+Table Create Table
758+t1 CREATE TABLE `t1` (
759+ `c1` int(11) NOT NULL AUTO_INCREMENT,
760+ `c2` int(11) DEFAULT NULL,
761+ PRIMARY KEY (`c1`)
762+) ENGINE=InnoDB AUTO_INCREMENT=2147483648 DEFAULT CHARSET=latin1
763+REPLACE INTO t1 (c2 ) VALUES (0);
764+ERROR HY000: Failed to read auto-increment value from storage engine
765+SELECT * FROM t1;
766+c1 c2
767+-290783232 NULL
768+1 NULL
769+2147483647 NULL
770+DROP TABLE t1;
771+CREATE TABLE t1 (c1 DOUBLE NOT NULL PRIMARY KEY AUTO_INCREMENT) ENGINE=InnoDB
772+AUTO_INCREMENT=10000000000000000000;
773+SHOW CREATE TABLE t1;
774+Table Create Table
775+t1 CREATE TABLE `t1` (
776+ `c1` double NOT NULL AUTO_INCREMENT,
777+ PRIMARY KEY (`c1`)
778+) ENGINE=InnoDB AUTO_INCREMENT=10000000000000000000 DEFAULT CHARSET=latin1
779+INSERT INTO t1 VALUES ();
780+ERROR HY000: Failed to read auto-increment value from storage engine
781+DROP TABLE t1;
782
783=== modified file 'Percona-Server/mysql-test/suite/innodb/r/innodb-zip.result'
784--- Percona-Server/mysql-test/suite/innodb/r/innodb-zip.result 2011-08-08 09:16:15 +0000
785+++ Percona-Server/mysql-test/suite/innodb/r/innodb-zip.result 2013-01-31 20:19:36 +0000
786@@ -126,12 +126,12 @@
787 c TEXT NOT NULL, d TEXT NOT NULL,
788 PRIMARY KEY (c(767),d(767)))
789 ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1 CHARSET=ASCII;
790-ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs
791+ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
792 CREATE TABLE t1(
793 c TEXT NOT NULL, d TEXT NOT NULL,
794 PRIMARY KEY (c(767),d(767)))
795 ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=2 CHARSET=ASCII;
796-ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs
797+ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
798 CREATE TABLE t1(
799 c TEXT NOT NULL, d TEXT NOT NULL,
800 PRIMARY KEY (c(767),d(767)))
801@@ -139,7 +139,7 @@
802 drop table t1;
803 CREATE TABLE t1(c TEXT, PRIMARY KEY (c(440)))
804 ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1 CHARSET=ASCII;
805-ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs
806+ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
807 CREATE TABLE t1(c TEXT, PRIMARY KEY (c(438)))
808 ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=1 CHARSET=ASCII;
809 INSERT INTO t1 VALUES(REPEAT('A',512)),(REPEAT('B',512));
810
811=== modified file 'Percona-Server/mysql-test/suite/innodb/r/innodb.result'
812--- Percona-Server/mysql-test/suite/innodb/r/innodb.result 2012-04-18 23:24:47 +0000
813+++ Percona-Server/mysql-test/suite/innodb/r/innodb.result 2013-01-31 20:19:36 +0000
814@@ -3085,7 +3085,7 @@
815 c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255),
816 c29 CHAR(255), c30 CHAR(255), c31 CHAR(255), c32 CHAR(255)
817 ) ENGINE = InnoDB;
818-ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs
819+ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
820 DROP TABLE IF EXISTS t1;
821 Warnings:
822 Note 1051 Unknown table 't1'
823
824=== added file 'Percona-Server/mysql-test/suite/innodb/r/innodb_bug14704286.result'
825--- Percona-Server/mysql-test/suite/innodb/r/innodb_bug14704286.result 1970-01-01 00:00:00 +0000
826+++ Percona-Server/mysql-test/suite/innodb/r/innodb_bug14704286.result 2013-01-31 20:19:36 +0000
827@@ -0,0 +1,53 @@
828+use test;
829+drop table if exists t1;
830+create table t1 (id int primary key, value int, value2 int,
831+value3 int, index(value,value2)) engine=innodb;
832+insert into t1 values
833+(10,10,10,10),(11,11,11,11),(12,12,12,12),(13,13,13,13),(14,14,14,14),
834+(15,15,15,15),(16,16,16,16),(17,17,17,17),(18,18,18,18),(19,19,19,19),
835+(20,20,20,20);
836+use test;
837+start transaction with consistent snapshot;
838+use test;
839+CREATE PROCEDURE update_t1()
840+BEGIN
841+DECLARE i INT DEFAULT 1;
842+while (i <= 5000) DO
843+update test.t1 set value2=value2+1, value3=value3+1 where id=12;
844+SET i = i + 1;
845+END WHILE;
846+END|
847+set autocommit=0;
848+CALL update_t1();
849+select * from t1;
850+id value value2 value3
851+10 10 10 10
852+11 11 11 11
853+12 12 5012 5012
854+13 13 13 13
855+14 14 14 14
856+15 15 15 15
857+16 16 16 16
858+17 17 17 17
859+18 18 18 18
860+19 19 19 19
861+20 20 20 20
862+set autocommit=1;
863+select * from t1;
864+id value value2 value3
865+10 10 10 10
866+11 11 11 11
867+12 12 5012 5012
868+13 13 13 13
869+14 14 14 14
870+15 15 15 15
871+16 16 16 16
872+17 17 17 17
873+18 18 18 18
874+19 19 19 19
875+20 20 20 20
876+select * from t1 force index(value) where value=12;
877+kill query @id;
878+ERROR 70100: Query execution was interrupted
879+drop procedure if exists update_t1;
880+drop table if exists t1;
881
882=== modified file 'Percona-Server/mysql-test/suite/innodb/r/innodb_bug53591.result'
883--- Percona-Server/mysql-test/suite/innodb/r/innodb_bug53591.result 2011-10-05 13:14:14 +0000
884+++ Percona-Server/mysql-test/suite/innodb/r/innodb_bug53591.result 2013-01-31 20:19:36 +0000
885@@ -8,7 +8,7 @@
886 SHOW WARNINGS;
887 Level Code Message
888 Error 139 Too big row
889-Error 1118 Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs
890+Error 1118 Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
891 Error 1030 Got error 139 from storage engine
892 DROP TABLE bug53591;
893 SET GLOBAL innodb_file_format=Antelope;
894
895=== modified file 'Percona-Server/mysql-test/suite/innodb/r/innodb_corrupt_bit.result'
896--- Percona-Server/mysql-test/suite/innodb/r/innodb_corrupt_bit.result 2011-08-17 09:39:55 +0000
897+++ Percona-Server/mysql-test/suite/innodb/r/innodb_corrupt_bit.result 2013-01-31 20:19:36 +0000
898@@ -40,13 +40,13 @@
899 test.corrupt_bit_test_ā check Warning InnoDB: The B-tree of index "idxē" is corrupted.
900 test.corrupt_bit_test_ā check error Corrupt
901 select c from corrupt_bit_test_ā;
902-ERROR HY000: Incorrect key file for table 'corrupt_bit_test_ā'; try to repair it
903+ERROR HY000: Index corrupt_bit_test_ā is corrupted
904 select z from corrupt_bit_test_ā;
905-ERROR HY000: Incorrect key file for table 'corrupt_bit_test_ā'; try to repair it
906+ERROR HY000: Index corrupt_bit_test_ā is corrupted
907 show warnings;
908 Level Code Message
909 Warning 179 InnoDB: Index "idxē" for table "test"."corrupt_bit_test_ā" is marked as corrupted
910-Error 1034 Incorrect key file for table 'corrupt_bit_test_ā'; try to repair it
911+Error 1712 Index corrupt_bit_test_ā is corrupted
912 insert into corrupt_bit_test_ā values (10001, "a", 20001, 20001);
913 select * from corrupt_bit_test_ā use index(primary) where a = 10001;
914 a b c z
915@@ -63,7 +63,7 @@
916 test.corrupt_bit_test_ā check error Corrupt
917 set names utf8;
918 select z from corrupt_bit_test_ā;
919-ERROR HY000: Incorrect key file for table 'corrupt_bit_test_ā'; try to repair it
920+ERROR HY000: Index corrupt_bit_test_ā is corrupted
921 drop index idxē on corrupt_bit_test_ā;
922 select z from corrupt_bit_test_ā limit 10;
923 z
924
925=== modified file 'Percona-Server/mysql-test/suite/innodb/r/innodb_misc1.result'
926--- Percona-Server/mysql-test/suite/innodb/r/innodb_misc1.result 2011-10-26 07:06:23 +0000
927+++ Percona-Server/mysql-test/suite/innodb/r/innodb_misc1.result 2013-01-31 20:19:36 +0000
928@@ -779,7 +779,7 @@
929 c25 CHAR(255), c26 CHAR(255), c27 CHAR(255), c28 CHAR(255),
930 c29 CHAR(255), c30 CHAR(255), c31 CHAR(255), c32 CHAR(255)
931 ) ENGINE = InnoDB;
932-ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs
933+ERROR 42000: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
934 SET innodb_strict_mode=OFF;
935 DROP TABLE IF EXISTS t1;
936 Warnings:
937
938=== modified file 'Percona-Server/mysql-test/suite/innodb/r/innodb_prefix_index_liftedlimit.result'
939--- Percona-Server/mysql-test/suite/innodb/r/innodb_prefix_index_liftedlimit.result 2011-10-05 13:14:14 +0000
940+++ Percona-Server/mysql-test/suite/innodb/r/innodb_prefix_index_liftedlimit.result 2013-01-31 20:19:36 +0000
941@@ -649,7 +649,7 @@
942 col_2_varchar VARCHAR (4000) CHARACTER SET 'utf8' ,
943 PRIMARY KEY (col_1_varchar(1024))
944 ) ROW_FORMAT=DYNAMIC, engine = innodb;
945-ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs
946+ERROR 42000: Row size too large (> max_row_size). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
947 CREATE TABLE worklog5743 (
948 col_1_varbinary VARBINARY (4000) ,
949 col_2_varchar VARCHAR (4000) CHARACTER SET 'utf8',
950
951=== modified file 'Percona-Server/mysql-test/suite/innodb/t/innodb-autoinc.test'
952--- Percona-Server/mysql-test/suite/innodb/t/innodb-autoinc.test 2012-03-29 07:02:08 +0000
953+++ Percona-Server/mysql-test/suite/innodb/t/innodb-autoinc.test 2013-01-31 20:19:36 +0000
954@@ -139,7 +139,7 @@
955 CREATE TABLE t1 (c1 INT AUTO_INCREMENT, c2 INT, PRIMARY KEY(c1)) ENGINE=InnoDB;
956 INSERT INTO t1 VALUES (NULL, 1);
957 DELETE FROM t1 WHERE c1 = 1;
958-INSERT INTO t1 VALUES (2,1);
959+INSERT INTO t1 VALUES (2,1);
960 INSERT INTO t1 VALUES (NULL,8);
961 SELECT * FROM t1;
962 DROP TABLE t1;
963@@ -639,7 +639,7 @@
964 DROP TABLE t1;
965
966
967-# Check if we handl offset > column max value properly
968+# Check if we handle offset > column max value properly
969 SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=256;
970 SHOW VARIABLES LIKE "%auto_inc%";
971 # TINYINT
972@@ -648,3 +648,40 @@
973 SHOW CREATE TABLE t1;
974 SELECT * FROM t1;
975 DROP TABLE t1;
976+
977+# Check if we handle the case where a current value is greater than the max
978+# of the column. IMO, this should not be allowed and the assertion that fails
979+# is actually an invariant.
980+SET @@SESSION.AUTO_INCREMENT_INCREMENT=1, @@SESSION.AUTO_INCREMENT_OFFSET=1;
981+SHOW VARIABLES LIKE "%auto_inc%";
982+# TINYINT
983+CREATE TABLE t1 (c1 INT UNSIGNED PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
984+INSERT INTO t1 VALUES (2147483648, 'a');
985+SHOW CREATE TABLE t1;
986+SELECT * FROM t1;
987+ALTER TABLE t1 CHANGE c1 c1 INT;
988+SHOW CREATE TABLE t1;
989+INSERT INTO t1(c2) VALUES('b');
990+SELECT * FROM t1;
991+SHOW CREATE TABLE t1;
992+DROP TABLE t1;
993+
994+CREATE TABLE t1 (c1 INT AUTO_INCREMENT PRIMARY KEY, c2 INT) ENGINE = MyISAM;
995+INSERT INTO t1 (c1) VALUES (NULL), (-290783232), (NULL);
996+SHOW CREATE TABLE t1;
997+SELECT * FROM t1;
998+ALTER TABLE t1 ENGINE = InnoDB;
999+SELECT * FROM t1;
1000+SHOW CREATE TABLE t1;
1001+--error ER_AUTOINC_READ_FAILED
1002+REPLACE INTO t1 (c2 ) VALUES (0);
1003+SELECT * FROM t1;
1004+DROP TABLE t1;
1005+
1006+#DOUBLE
1007+CREATE TABLE t1 (c1 DOUBLE NOT NULL PRIMARY KEY AUTO_INCREMENT) ENGINE=InnoDB
1008+AUTO_INCREMENT=10000000000000000000;
1009+SHOW CREATE TABLE t1;
1010+--error 1467
1011+INSERT INTO t1 VALUES ();
1012+DROP TABLE t1;
1013
1014=== added file 'Percona-Server/mysql-test/suite/innodb/t/innodb_bug14704286.test'
1015--- Percona-Server/mysql-test/suite/innodb/t/innodb_bug14704286.test 1970-01-01 00:00:00 +0000
1016+++ Percona-Server/mysql-test/suite/innodb/t/innodb_bug14704286.test 2013-01-31 20:19:36 +0000
1017@@ -0,0 +1,95 @@
1018+--source include/have_innodb.inc
1019+
1020+#
1021+# create test-bed to run test
1022+#
1023+use test;
1024+--disable_warnings
1025+drop table if exists t1;
1026+--enable_warnings
1027+create table t1 (id int primary key, value int, value2 int,
1028+value3 int, index(value,value2)) engine=innodb;
1029+
1030+insert into t1 values
1031+(10,10,10,10),(11,11,11,11),(12,12,12,12),(13,13,13,13),(14,14,14,14),
1032+(15,15,15,15),(16,16,16,16),(17,17,17,17),(18,18,18,18),(19,19,19,19),
1033+(20,20,20,20);
1034+let $ID= `SELECT @id := CONNECTION_ID()`;
1035+
1036+#
1037+# we need multiple connections as we need to keep one connection
1038+# active with trx requesting consistent read.
1039+#
1040+connect (conn1, localhost, root,,);
1041+connect (conn2, localhost, root,,);
1042+connect (conn3, localhost, root,,);
1043+
1044+#
1045+# start trx with consistent read
1046+#
1047+connection conn1;
1048+use test;
1049+
1050+start transaction with consistent snapshot;
1051+
1052+#
1053+# update table such that secondary index is updated.
1054+#
1055+connection conn2;
1056+use test;
1057+delimiter |;
1058+CREATE PROCEDURE update_t1()
1059+BEGIN
1060+ DECLARE i INT DEFAULT 1;
1061+ while (i <= 5000) DO
1062+ update test.t1 set value2=value2+1, value3=value3+1 where id=12;
1063+ SET i = i + 1;
1064+ END WHILE;
1065+END|
1066+
1067+delimiter ;|
1068+set autocommit=0;
1069+CALL update_t1();
1070+select * from t1;
1071+set autocommit=1;
1072+select * from t1;
1073+
1074+#
1075+# Now try to fire select query from connection-1 enforcing
1076+# use of secondary index.
1077+#
1078+connection conn1;
1079+let $ID= `SELECT @id := CONNECTION_ID()`;
1080+#--error ER_QUERY_INTERRUPTED
1081+--send
1082+select * from t1 force index(value) where value=12;
1083+
1084+#
1085+# select is going to take good time so let's kill query.
1086+#
1087+connection conn3;
1088+let $wait_condition=
1089+ select * from information_schema.processlist where state = 'Sending data' and
1090+ info = 'select * from t1 force index(value) where value=12';
1091+--source include/wait_condition.inc
1092+let $ignore= `SELECT @id := $ID`;
1093+kill query @id;
1094+
1095+#
1096+# reap the value of connection-1
1097+#
1098+connection conn1;
1099+--error ER_QUERY_INTERRUPTED
1100+reap;
1101+
1102+#
1103+# clean test-bed.
1104+#
1105+connection default;
1106+disconnect conn1;
1107+disconnect conn2;
1108+disconnect conn3;
1109+drop procedure if exists update_t1;
1110+drop table if exists t1;
1111+
1112+
1113
1114=== modified file 'Percona-Server/mysql-test/suite/innodb/t/innodb_corrupt_bit.test'
1115--- Percona-Server/mysql-test/suite/innodb/t/innodb_corrupt_bit.test 2011-11-22 15:06:19 +0000
1116+++ Percona-Server/mysql-test/suite/innodb/t/innodb_corrupt_bit.test 2013-01-31 20:19:36 +0000
1117@@ -79,10 +79,10 @@
1118 check table corrupt_bit_test_ā;
1119
1120 # This selection intend to use the corrupted index. Expect to fail
1121--- error ER_NOT_KEYFILE
1122+-- error ER_INDEX_CORRUPT
1123 select c from corrupt_bit_test_ā;
1124
1125--- error ER_NOT_KEYFILE
1126+-- error ER_INDEX_CORRUPT
1127 select z from corrupt_bit_test_ā;
1128
1129 show warnings;
1130@@ -108,7 +108,7 @@
1131
1132 set names utf8;
1133
1134--- error ER_NOT_KEYFILE
1135+-- error ER_INDEX_CORRUPT
1136 select z from corrupt_bit_test_ā;
1137
1138 # Drop the corrupted index
1139
1140=== modified file 'Percona-Server/mysql-test/suite/innodb/t/innodb_prefix_index_liftedlimit.test'
1141--- Percona-Server/mysql-test/suite/innodb/t/innodb_prefix_index_liftedlimit.test 2011-10-05 13:14:14 +0000
1142+++ Percona-Server/mysql-test/suite/innodb/t/innodb_prefix_index_liftedlimit.test 2013-01-31 20:19:36 +0000
1143@@ -601,6 +601,7 @@
1144 # Prefix index with utf8 charset + varchar.
1145 # For varchar we also log the column itself as oppose of TEXT so it error
1146 # with limit 1024 due to overhead.
1147+--replace_regex /> [0-9]*/> max_row_size/
1148 -- error 1118
1149 CREATE TABLE worklog5743 (col_1_varchar VARCHAR (4000) CHARACTER SET 'utf8',
1150 col_2_varchar VARCHAR (4000) CHARACTER SET 'utf8' ,
1151
1152=== modified file 'Percona-Server/mysql-test/suite/perfschema/r/func_file_io.result'
1153--- Percona-Server/mysql-test/suite/perfschema/r/func_file_io.result 2012-05-23 08:21:35 +0000
1154+++ Percona-Server/mysql-test/suite/perfschema/r/func_file_io.result 2013-01-31 20:19:36 +0000
1155@@ -1,6 +1,7 @@
1156 UPDATE performance_schema.setup_instruments SET enabled = 'NO', timed = 'YES';
1157 UPDATE performance_schema.setup_instruments SET enabled = 'YES'
1158 WHERE name LIKE 'wait/io/file/%';
1159+flush status;
1160 DROP TABLE IF EXISTS t1;
1161 CREATE TABLE t1 (id INT PRIMARY KEY, b CHAR(100) DEFAULT 'initial value')
1162 ENGINE=MyISAM;
1163@@ -113,3 +114,19 @@
1164 GROUP BY h.EVENT_NAME
1165 HAVING TOTAL_WAIT > 0;
1166 UPDATE performance_schema.setup_instruments SET enabled = 'YES';
1167+show status like "performance_schema%";
1168+Variable_name Value
1169+Performance_schema_cond_classes_lost 0
1170+Performance_schema_cond_instances_lost 0
1171+Performance_schema_file_classes_lost 0
1172+Performance_schema_file_handles_lost 0
1173+Performance_schema_file_instances_lost 0
1174+Performance_schema_locker_lost 0
1175+Performance_schema_mutex_classes_lost 0
1176+Performance_schema_mutex_instances_lost 0
1177+Performance_schema_rwlock_classes_lost 0
1178+Performance_schema_rwlock_instances_lost 0
1179+Performance_schema_table_handles_lost 0
1180+Performance_schema_table_instances_lost 0
1181+Performance_schema_thread_classes_lost 0
1182+Performance_schema_thread_instances_lost 0
1183
1184=== modified file 'Percona-Server/mysql-test/suite/perfschema/r/func_mutex.result'
1185--- Percona-Server/mysql-test/suite/perfschema/r/func_mutex.result 2010-11-12 11:23:17 +0000
1186+++ Percona-Server/mysql-test/suite/perfschema/r/func_mutex.result 2013-01-31 20:19:36 +0000
1187@@ -2,6 +2,15 @@
1188 UPDATE performance_schema.setup_instruments SET enabled = 'YES'
1189 WHERE name LIKE 'wait/synch/mutex/%'
1190 OR name LIKE 'wait/synch/rwlock/%';
1191+flush status;
1192+select NAME from performance_schema.mutex_instances
1193+where NAME = 'wait/synch/mutex/sql/LOCK_open';
1194+NAME
1195+wait/synch/mutex/sql/LOCK_open
1196+select NAME from performance_schema.rwlock_instances
1197+where NAME = 'wait/synch/rwlock/sql/LOCK_grant';
1198+NAME
1199+wait/synch/rwlock/sql/LOCK_grant
1200 DROP TABLE IF EXISTS t1;
1201 CREATE TABLE t1 (id INT PRIMARY KEY, b CHAR(100) DEFAULT 'initial value')
1202 ENGINE=MyISAM;
1203@@ -112,3 +121,19 @@
1204 Success
1205 UPDATE performance_schema.setup_instruments SET enabled = 'YES';
1206 DROP TABLE t1;
1207+show status like "performance_schema%";
1208+Variable_name Value
1209+Performance_schema_cond_classes_lost 0
1210+Performance_schema_cond_instances_lost 0
1211+Performance_schema_file_classes_lost 0
1212+Performance_schema_file_handles_lost 0
1213+Performance_schema_file_instances_lost 0
1214+Performance_schema_locker_lost 0
1215+Performance_schema_mutex_classes_lost 0
1216+Performance_schema_mutex_instances_lost 0
1217+Performance_schema_rwlock_classes_lost 0
1218+Performance_schema_rwlock_instances_lost 0
1219+Performance_schema_table_handles_lost 0
1220+Performance_schema_table_instances_lost 0
1221+Performance_schema_thread_classes_lost 0
1222+Performance_schema_thread_instances_lost 0
1223
1224=== modified file 'Percona-Server/mysql-test/suite/perfschema/t/func_file_io.test'
1225--- Percona-Server/mysql-test/suite/perfschema/t/func_file_io.test 2012-05-23 08:21:35 +0000
1226+++ Percona-Server/mysql-test/suite/perfschema/t/func_file_io.test 2013-01-31 20:19:36 +0000
1227@@ -12,6 +12,9 @@
1228 UPDATE performance_schema.setup_instruments SET enabled = 'YES'
1229 WHERE name LIKE 'wait/io/file/%';
1230
1231+# reset lost counters
1232+flush status;
1233+
1234 --disable_warnings
1235 DROP TABLE IF EXISTS t1;
1236 --enable_warnings
1237@@ -182,3 +185,7 @@
1238
1239 # Clean-up.
1240 UPDATE performance_schema.setup_instruments SET enabled = 'YES';
1241+
1242+# In case of failure, will indicate the root cause
1243+show status like "performance_schema%";
1244+
1245
1246=== modified file 'Percona-Server/mysql-test/suite/perfschema/t/func_mutex.test'
1247--- Percona-Server/mysql-test/suite/perfschema/t/func_mutex.test 2011-10-19 21:44:17 +0000
1248+++ Percona-Server/mysql-test/suite/perfschema/t/func_mutex.test 2013-01-31 20:19:36 +0000
1249@@ -13,6 +13,15 @@
1250 WHERE name LIKE 'wait/synch/mutex/%'
1251 OR name LIKE 'wait/synch/rwlock/%';
1252
1253+# reset lost counters
1254+flush status;
1255+
1256+# Make sure objects are instrumented
1257+select NAME from performance_schema.mutex_instances
1258+ where NAME = 'wait/synch/mutex/sql/LOCK_open';
1259+select NAME from performance_schema.rwlock_instances
1260+ where NAME = 'wait/synch/rwlock/sql/LOCK_grant';
1261+
1262 --disable_warnings
1263 DROP TABLE IF EXISTS t1;
1264 --enable_warnings
1265@@ -116,3 +125,7 @@
1266 # Clean-up.
1267 UPDATE performance_schema.setup_instruments SET enabled = 'YES';
1268 DROP TABLE t1;
1269+
1270+# In case of failure, will indicate the root cause
1271+show status like "performance_schema%";
1272+
1273
1274=== modified file 'Percona-Server/mysql-test/suite/rpl/r/rpl_semi_sync.result'
1275--- Percona-Server/mysql-test/suite/rpl/r/rpl_semi_sync.result 2010-12-19 17:15:12 +0000
1276+++ Percona-Server/mysql-test/suite/rpl/r/rpl_semi_sync.result 2013-01-31 20:19:36 +0000
1277@@ -93,7 +93,7 @@
1278 Rpl_semi_sync_master_no_tx 0
1279 show status like 'Rpl_semi_sync_master_yes_tx';
1280 Variable_name Value
1281-Rpl_semi_sync_master_yes_tx 301
1282+Rpl_semi_sync_master_yes_tx 11
1283 [ on slave ]
1284 [ slave status after replicated inserts ]
1285 show status like 'Rpl_semi_sync_slave_status';
1286@@ -101,13 +101,13 @@
1287 Rpl_semi_sync_slave_status ON
1288 select count(distinct a) from t1;
1289 count(distinct a)
1290-300
1291+10
1292 select min(a) from t1;
1293 min(a)
1294 1
1295 select max(a) from t1;
1296 max(a)
1297-300
1298+10
1299
1300 # BUG#50157
1301 # semi-sync replication crashes when replicating a transaction which
1302@@ -133,6 +133,7 @@
1303 #
1304 include/stop_slave.inc
1305 [ on master ]
1306+set global rpl_semi_sync_master_timeout= 5000;
1307 [ master status should be ON ]
1308 show status like 'Rpl_semi_sync_master_status';
1309 Variable_name Value
1310@@ -142,7 +143,7 @@
1311 Rpl_semi_sync_master_no_tx 0
1312 show status like 'Rpl_semi_sync_master_yes_tx';
1313 Variable_name Value
1314-Rpl_semi_sync_master_yes_tx 304
1315+Rpl_semi_sync_master_yes_tx 14
1316 show status like 'Rpl_semi_sync_master_clients';
1317 Variable_name Value
1318 Rpl_semi_sync_master_clients 1
1319@@ -157,7 +158,7 @@
1320 Rpl_semi_sync_master_no_tx 1
1321 show status like 'Rpl_semi_sync_master_yes_tx';
1322 Variable_name Value
1323-Rpl_semi_sync_master_yes_tx 304
1324+Rpl_semi_sync_master_yes_tx 14
1325 insert into t1 values (100);
1326 [ master status should be OFF ]
1327 show status like 'Rpl_semi_sync_master_status';
1328@@ -165,10 +166,10 @@
1329 Rpl_semi_sync_master_status OFF
1330 show status like 'Rpl_semi_sync_master_no_tx';
1331 Variable_name Value
1332-Rpl_semi_sync_master_no_tx 302
1333+Rpl_semi_sync_master_no_tx 12
1334 show status like 'Rpl_semi_sync_master_yes_tx';
1335 Variable_name Value
1336-Rpl_semi_sync_master_yes_tx 304
1337+Rpl_semi_sync_master_yes_tx 14
1338 #
1339 # Test semi-sync status on master will be ON again when slave catches up
1340 #
1341@@ -198,10 +199,10 @@
1342 Rpl_semi_sync_master_status ON
1343 show status like 'Rpl_semi_sync_master_no_tx';
1344 Variable_name Value
1345-Rpl_semi_sync_master_no_tx 302
1346+Rpl_semi_sync_master_no_tx 12
1347 show status like 'Rpl_semi_sync_master_yes_tx';
1348 Variable_name Value
1349-Rpl_semi_sync_master_yes_tx 304
1350+Rpl_semi_sync_master_yes_tx 14
1351 show status like 'Rpl_semi_sync_master_clients';
1352 Variable_name Value
1353 Rpl_semi_sync_master_clients 1
1354@@ -217,10 +218,10 @@
1355 [ Semi-sync master status variables before FLUSH STATUS ]
1356 SHOW STATUS LIKE 'Rpl_semi_sync_master_no_tx';
1357 Variable_name Value
1358-Rpl_semi_sync_master_no_tx 302
1359+Rpl_semi_sync_master_no_tx 12
1360 SHOW STATUS LIKE 'Rpl_semi_sync_master_yes_tx';
1361 Variable_name Value
1362-Rpl_semi_sync_master_yes_tx 305
1363+Rpl_semi_sync_master_yes_tx 15
1364 FLUSH NO_WRITE_TO_BINLOG STATUS;
1365 [ Semi-sync master status variables after FLUSH STATUS ]
1366 SHOW STATUS LIKE 'Rpl_semi_sync_master_no_tx';
1367
1368=== modified file 'Percona-Server/mysql-test/suite/rpl/t/rpl_semi_sync.test'
1369--- Percona-Server/mysql-test/suite/rpl/t/rpl_semi_sync.test 2011-03-16 16:38:30 +0000
1370+++ Percona-Server/mysql-test/suite/rpl/t/rpl_semi_sync.test 2013-01-31 20:19:36 +0000
1371@@ -63,7 +63,7 @@
1372 {
1373 set sql_log_bin=0;
1374 eval INSTALL PLUGIN rpl_semi_sync_master SONAME '$SEMISYNC_MASTER_PLUGIN';
1375- set global rpl_semi_sync_master_timeout= 5000; /* 5s */
1376+ set global rpl_semi_sync_master_timeout= 60000; /* 60s */
1377 set sql_log_bin=1;
1378 }
1379 enable_query_log;
1380@@ -170,7 +170,7 @@
1381 replace_result $_connections_normal_slave CONNECTIONS_NORMAL_SLAVE;
1382 eval select $_connections_semisync_slave - $_connections_normal_slave as 'Should be 0';
1383
1384-let $i=300;
1385+let $i=10;
1386 echo [ insert records to table ];
1387 disable_query_log;
1388 while ($i)
1389@@ -234,6 +234,7 @@
1390
1391 connection master;
1392 echo [ on master ];
1393+set global rpl_semi_sync_master_timeout= 5000;
1394
1395 # The first semi-sync check should be on because after slave stop,
1396 # there are no transactions on the master.
1397@@ -260,7 +261,7 @@
1398
1399 # Semi-sync status on master is now OFF, so all these transactions
1400 # will be replicated asynchronously.
1401-let $i=300;
1402+let $i=10;
1403 disable_query_log;
1404 while ($i)
1405 {
1406
1407=== modified file 'Percona-Server/mysql-test/suite/sys_vars/r/innodb_change_buffering_debug_basic.result'
1408--- Percona-Server/mysql-test/suite/sys_vars/r/innodb_change_buffering_debug_basic.result 2012-01-16 14:39:05 +0000
1409+++ Percona-Server/mysql-test/suite/sys_vars/r/innodb_change_buffering_debug_basic.result 2013-01-31 20:19:36 +0000
1410@@ -55,9 +55,6 @@
1411 Warning 1292 Truncated incorrect innodb_change_buffering_debug value: '-2'
1412 set global innodb_change_buffering_debug=1e1;
1413 ERROR 42000: Incorrect argument type to variable 'innodb_change_buffering_debug'
1414-set global innodb_change_buffering_debug=2;
1415-Warnings:
1416-Warning 1292 Truncated incorrect innodb_change_buffering_debug value: '2'
1417 SET @@global.innodb_change_buffering_debug = @start_global_value;
1418 SELECT @@global.innodb_change_buffering_debug;
1419 @@global.innodb_change_buffering_debug
1420
1421=== modified file 'Percona-Server/mysql-test/suite/sys_vars/t/innodb_change_buffering_debug_basic.test'
1422--- Percona-Server/mysql-test/suite/sys_vars/t/innodb_change_buffering_debug_basic.test 2012-01-16 14:39:05 +0000
1423+++ Percona-Server/mysql-test/suite/sys_vars/t/innodb_change_buffering_debug_basic.test 2013-01-31 20:19:36 +0000
1424@@ -42,7 +42,9 @@
1425 set global innodb_change_buffering_debug=-2;
1426 --error ER_WRONG_TYPE_FOR_VAR
1427 set global innodb_change_buffering_debug=1e1;
1428-set global innodb_change_buffering_debug=2;
1429+# The value 2 is supposed to kill the server if there are unmerged changes.
1430+# Do not try to set the value to 2 or anything that can be clamped to 2.
1431+#set global innodb_change_buffering_debug=2;
1432
1433 #
1434 # Cleanup
1435
1436=== modified file 'Percona-Server/mysql-test/t/ctype_ucs.test'
1437--- Percona-Server/mysql-test/t/ctype_ucs.test 2012-03-20 05:16:51 +0000
1438+++ Percona-Server/mysql-test/t/ctype_ucs.test 2013-01-31 20:19:36 +0000
1439@@ -68,6 +68,38 @@
1440 SHOW CREATE TABLE t1;
1441 DROP TABLE t1;
1442
1443+--echo #
1444+--echo # Bug #51876 : crash/memory underrun when loading data with ucs2
1445+--echo # and reverse() function
1446+--echo #
1447+
1448+--echo # Problem # 1 (original report): wrong parsing of ucs2 data
1449+SELECT '00' UNION SELECT '10' INTO OUTFILE 'tmpp.txt';
1450+CREATE TABLE t1(a INT);
1451+LOAD DATA INFILE 'tmpp.txt' INTO TABLE t1 CHARACTER SET ucs2
1452+(@b) SET a=REVERSE(@b);
1453+--echo # should return 2 zeroes (as the value is truncated)
1454+SELECT * FROM t1;
1455+
1456+DROP TABLE t1;
1457+let $MYSQLD_DATADIR= `select @@datadir`;
1458+remove_file $MYSQLD_DATADIR/test/tmpp.txt;
1459+
1460+
1461+--echo # Problem # 2 : if you write and read ucs2 data to a file they're lost
1462+SELECT '00' UNION SELECT '10' INTO OUTFILE 'tmpp2.txt' CHARACTER SET ucs2;
1463+CREATE TABLE t1(a INT);
1464+LOAD DATA INFILE 'tmpp2.txt' INTO TABLE t1 CHARACTER SET ucs2
1465+(@b) SET a=REVERSE(@b);
1466+--echo # should return 0 and 1 (10 reversed)
1467+SELECT * FROM t1;
1468+
1469+DROP TABLE t1;
1470+let $MYSQLD_DATADIR= `select @@datadir`;
1471+remove_file $MYSQLD_DATADIR/test/tmpp2.txt;
1472+
1473+
1474+
1475 #
1476 # BUG3946
1477 #
1478
1479=== modified file 'Percona-Server/mysql-test/t/loaddata.test'
1480--- Percona-Server/mysql-test/t/loaddata.test 2012-05-10 07:49:14 +0000
1481+++ Percona-Server/mysql-test/t/loaddata.test 2013-01-31 20:19:36 +0000
1482@@ -570,36 +570,40 @@
1483 connection default;
1484 disconnect con1;
1485
1486-
1487---echo #
1488---echo # Bug #51876 : crash/memory underrun when loading data with ucs2
1489---echo # and reverse() function
1490---echo #
1491-
1492---echo # Problem # 1 (original report): wrong parsing of ucs2 data
1493-SELECT '00' UNION SELECT '10' INTO OUTFILE 'tmpp.txt';
1494-CREATE TABLE t1(a INT);
1495-LOAD DATA INFILE 'tmpp.txt' INTO TABLE t1 CHARACTER SET ucs2
1496-(@b) SET a=REVERSE(@b);
1497---echo # should return 2 zeroes (as the value is truncated)
1498-SELECT * FROM t1;
1499-
1500-DROP TABLE t1;
1501-let $MYSQLD_DATADIR= `select @@datadir`;
1502-remove_file $MYSQLD_DATADIR/test/tmpp.txt;
1503-
1504-
1505---echo # Problem # 2 : if you write and read ucs2 data to a file they're lost
1506-SELECT '00' UNION SELECT '10' INTO OUTFILE 'tmpp2.txt' CHARACTER SET ucs2;
1507-CREATE TABLE t1(a INT);
1508-LOAD DATA INFILE 'tmpp2.txt' INTO TABLE t1 CHARACTER SET ucs2
1509-(@b) SET a=REVERSE(@b);
1510---echo # should return 0 and 1 (10 reversed)
1511-SELECT * FROM t1;
1512-
1513-DROP TABLE t1;
1514-let $MYSQLD_DATADIR= `select @@datadir`;
1515-remove_file $MYSQLD_DATADIR/test/tmpp2.txt;
1516+#############################################################################
1517+# The below protion is moved to ctype_ucs.test #
1518+#############################################################################
1519+#--echo #
1520+#--echo # Bug #51876 : crash/memory underrun when loading data with ucs2
1521+#--echo # and reverse() function
1522+#--echo #
1523+
1524+#--echo # Problem # 1 (original report): wrong parsing of ucs2 data
1525+#SELECT '00' UNION SELECT '10' INTO OUTFILE 'tmpp.txt';
1526+#CREATE TABLE t1(a INT);
1527+#LOAD DATA INFILE 'tmpp.txt' INTO TABLE t1 CHARACTER SET ucs2
1528+#(@b) SET a=REVERSE(@b);
1529+#--echo # should return 2 zeroes (as the value is truncated)
1530+#SELECT * FROM t1;
1531+
1532+#DROP TABLE t1;
1533+#let $MYSQLD_DATADIR= `select @@datadir`;
1534+#remove_file $MYSQLD_DATADIR/test/tmpp.txt;
1535+
1536+
1537+#--echo # Problem # 2 : if you write and read ucs2 data to a file they're lost
1538+#SELECT '00' UNION SELECT '10' INTO OUTFILE 'tmpp2.txt' CHARACTER SET ucs2;
1539+#CREATE TABLE t1(a INT);
1540+#LOAD DATA INFILE 'tmpp2.txt' INTO TABLE t1 CHARACTER SET ucs2
1541+#(@b) SET a=REVERSE(@b);
1542+#--echo # should return 0 and 1 (10 reversed)
1543+#SELECT * FROM t1;
1544+
1545+#DROP TABLE t1;
1546+#let $MYSQLD_DATADIR= `select @@datadir`;
1547+#remove_file $MYSQLD_DATADIR/test/tmpp2.txt;
1548+######################################################################################
1549+
1550
1551 --echo #
1552 --echo # Bug#11765139 58069: LOAD DATA INFILE: VALGRIND REPORTS INVALID MEMORY READS AND WRITES WITH U
1553
1554=== added file 'Percona-Server/mysql-test/t/percona_bug1017192.test'
1555--- Percona-Server/mysql-test/t/percona_bug1017192.test 1970-01-01 00:00:00 +0000
1556+++ Percona-Server/mysql-test/t/percona_bug1017192.test 2013-01-31 20:19:36 +0000
1557@@ -0,0 +1,40 @@
1558+########################################################################
1559+# Bug 1017192: Server crashes in add_identifier on concurrent
1560+# ALTER TABLE and SHOW ENGINE INNODB STATUS
1561+# We run concurrent ALTER TABLE PARTITION and execute
1562+# SHOW ENGINE INNODB STATUS exactly at the moment when
1563+# temporary tables already created and locked.
1564+########################################################################
1565+
1566+--source include/have_partition.inc
1567+--source include/have_innodb.inc
1568+--source include/have_debug_sync.inc
1569+
1570+SET DEBUG_SYNC='reset';
1571+
1572+CREATE TABLE IF NOT EXISTS t1 (`a` INT) ENGINE=InnoDB;
1573+INSERT INTO t1 VALUES (1),(2),(3),(4);
1574+
1575+--connect (con1,localhost,root,,)
1576+
1577+--connection default
1578+SET DEBUG_SYNC='after_copy_data_between_tables SIGNAL run_show_innodb_status
1579+ WAIT_FOR show_innodb_status_done';
1580+--send ALTER TABLE t1 PARTITION BY HASH (`a`) PARTITIONS 4
1581+--connection con1
1582+SET DEBUG_SYNC='now WAIT_FOR run_show_innodb_status';
1583+# We catch the moment when SHOW ENGINE INNODB STATUS should produce lines like:
1584+# TABLE LOCK table `test`.`#sql-14021_2#P#p1` /* Partition `p1` */ trx id 506 lock mode IX
1585+# TABLE LOCK table `test`.`#sql-14021_2#P#p2` /* Partition `p2` */ trx id 506 lock mode IX
1586+# TABLE LOCK table `test`.`#sql-14021_2#P#p3` /* Partition `p3` */ trx id 506 lock mode IX
1587+# TABLE LOCK table `test`.`#sql-14021_2#P#p0` /* Partition `p0` */ trx id 506 lock mode IX
1588+# This cause segmentation fault because of incorrect handling of table names
1589+# which look like `#sql-14021_2#P#p0`
1590+--disable_result_log
1591+SHOW ENGINE INNODB STATUS;
1592+--enable_result_log
1593+SET DEBUG_SYNC='now SIGNAL show_innodb_status_done';
1594+--connection default
1595+--reap
1596+
1597+DROP TABLE t1;
1598
1599=== modified file 'Percona-Server/mysql-test/t/plugin_auth.test'
1600--- Percona-Server/mysql-test/t/plugin_auth.test 2012-07-05 06:55:20 +0000
1601+++ Percona-Server/mysql-test/t/plugin_auth.test 2013-01-31 20:19:36 +0000
1602@@ -179,21 +179,35 @@
1603 --error ER_ACCESS_DENIED_NO_PASSWORD_ERROR
1604 GRANT PROXY ON grant_plug TO grant_plug_dest;
1605
1606---echo this should fail : same user, but on a different host
1607---error ER_ACCESS_DENIED_NO_PASSWORD_ERROR
1608+# Security context in THD contains two pairs of (user,host)
1609+# 1. (user,host) pair referring to inbound connection
1610+# 2. (priv_user,priv_host) pair obtained from mysql.user table after doing
1611+# authnetication of incoming connection.
1612+# Granting/revoking proxy privileges, privileges should be checked wrt
1613+# (priv_user, priv_host) tuple that is obtained from mysql.user table
1614+# Following is a valid grant because effective user of connection is
1615+# grant_plug_dest@% and statement is trying to grant proxy on the same
1616+# user.
1617+--echo This is a valid grant
1618 GRANT PROXY ON grant_plug_dest TO grant_plug;
1619-
1620---echo this should work : same user
1621-GRANT PROXY ON grant_plug_dest@localhost TO grant_plug_dest2;
1622-REVOKE PROXY ON grant_plug_dest@localhost FROM grant_plug_dest2;
1623-
1624---echo this should work : same user
1625+REVOKE PROXY ON grant_plug_dest FROM grant_plug;
1626+
1627+--echo this should work : same user
1628+GRANT PROXY ON grant_plug_dest TO grant_plug_dest2;
1629+REVOKE PROXY ON grant_plug_dest FROM grant_plug_dest2;
1630+
1631+# grant_plug_dest@localhost is not the same as grant_plug_dest@%
1632+# so following grant/revoke should fail
1633+--echo this should fail : not the same user
1634+--error ER_ACCESS_DENIED_NO_PASSWORD_ERROR
1635 GRANT PROXY ON grant_plug_dest@localhost TO grant_plug WITH GRANT OPTION;
1636+--echo this should fail : not the same user
1637+--error ER_ACCESS_DENIED_NO_PASSWORD_ERROR
1638 REVOKE PROXY ON grant_plug_dest@localhost FROM grant_plug;
1639
1640 --echo this should fail : can't create users
1641 --error ER_CANT_CREATE_USER_WITH_GRANT
1642-GRANT PROXY ON grant_plug_dest@localhost TO grant_plug@localhost;
1643+GRANT PROXY ON grant_plug_dest TO grant_plug@localhost;
1644
1645 connection default;
1646 --echo in default connection
1647
1648=== modified file 'Percona-Server/mysql-test/t/show_check.test'
1649--- Percona-Server/mysql-test/t/show_check.test 2012-04-18 23:26:11 +0000
1650+++ Percona-Server/mysql-test/t/show_check.test 2013-01-31 20:19:36 +0000
1651@@ -1371,3 +1371,17 @@
1652 --connection default
1653 SET NAMES latin1;
1654
1655+
1656+--echo #
1657+--echo # WL#6454: Deprecate SHOW AUTHORS and SHOW CONTRIBUTORS
1658+--echo #
1659+
1660+--disable_result_log
1661+SHOW AUTHORS;
1662+--enable_result_log
1663+SHOW WARNINGS;
1664+
1665+--disable_result_log
1666+SHOW CONTRIBUTORS;
1667+--enable_result_log
1668+SHOW WARNINGS;
1669
1670=== modified file 'Percona-Server/mysql-test/t/sp_notembedded.test'
1671--- Percona-Server/mysql-test/t/sp_notembedded.test 2012-03-28 08:05:08 +0000
1672+++ Percona-Server/mysql-test/t/sp_notembedded.test 2013-01-31 20:19:36 +0000
1673@@ -475,14 +475,6 @@
1674 DROP DATABASE `my.db`;
1675 USE test;
1676
1677-#
1678-# Restore global concurrent_insert value. Keep in the end of the test file.
1679-#
1680-
1681-set @@global.concurrent_insert= @old_concurrent_insert;
1682-
1683-# Wait till all disconnects are completed
1684---source include/wait_until_count_sessions.inc
1685
1686 --echo #
1687 --echo # Bug#11763507 - 56224: FUNCTION NAME IS CASE-SENSITIVE
1688@@ -507,3 +499,13 @@
1689
1690 DROP EVENT teste_bug11763507;
1691 --echo #END OF BUG#11763507 test.
1692+
1693+
1694+#
1695+# Restore global concurrent_insert value. Keep in the end of the test file.
1696+#
1697+
1698+set @@global.concurrent_insert= @old_concurrent_insert;
1699+
1700+# Wait till all disconnects are completed
1701+--source include/wait_until_count_sessions.inc
1702
1703=== added directory 'Percona-Server/packaging/rpm-uln'
1704=== added file 'Percona-Server/packaging/rpm-uln/CMakeLists.txt'
1705--- Percona-Server/packaging/rpm-uln/CMakeLists.txt 1970-01-01 00:00:00 +0000
1706+++ Percona-Server/packaging/rpm-uln/CMakeLists.txt 2013-01-31 20:19:36 +0000
1707@@ -0,0 +1,38 @@
1708+# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
1709+#
1710+# This program is free software; you can redistribute it and/or modify
1711+# it under the terms of the GNU General Public License as published by
1712+# the Free Software Foundation; version 2 of the License.
1713+#
1714+# This program is distributed in the hope that it will be useful,
1715+# but WITHOUT ANY WARRANTY; without even the implied warranty of
1716+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1717+# GNU General Public License for more details.
1718+#
1719+# You should have received a copy of the GNU General Public License
1720+# along with this program; if not, write to the Free Software
1721+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
1722+
1723+
1724+IF(UNIX)
1725+ SET(prefix ${CMAKE_INSTALL_PREFIX})
1726+
1727+ SET(SPECFILENAME "mysql.${VERSION}.spec")
1728+ IF("${VERSION}" MATCHES "-ndb-")
1729+ STRING(REGEX REPLACE "^.*-ndb-" "" NDBVERSION "${VERSION}")
1730+ SET(SPECFILENAME "mysql-cluster-${NDBVERSION}.spec")
1731+ ENDIF()
1732+
1733+ # Left in current directory, to be taken during build
1734+ CONFIGURE_FILE(mysql.spec.sh ${CMAKE_CURRENT_BINARY_DIR}/${SPECFILENAME} @ONLY)
1735+
1736+ FOREACH(ulnfile filter-requires-mysql.sh generate-tarball.sh my.cnf my_config.h
1737+ mysql-5.5-errno.patch mysql-5.5-fix-tests.patch mysql-5.5-libdir.patch
1738+ mysql-5.5-mtr1.patch mysql-5.5-stack-guard.patch mysql-5.5-testing.patch
1739+ mysql-chain-certs.patch mysql-embedded-check.c mysql-expired-certs.patch
1740+ mysql.init mysql-install-test.patch mysql-strmov.patch scriptstub.c
1741+ README.mysql-docs)
1742+ CONFIGURE_FILE(${ulnfile} ${CMAKE_CURRENT_BINARY_DIR}/${ulnfile} COPYONLY)
1743+ ENDFOREACH()
1744+ENDIF()
1745+
1746
1747=== added file 'Percona-Server/packaging/rpm-uln/README-ULN'
1748--- Percona-Server/packaging/rpm-uln/README-ULN 1970-01-01 00:00:00 +0000
1749+++ Percona-Server/packaging/rpm-uln/README-ULN 2013-01-31 20:19:36 +0000
1750@@ -0,0 +1,15 @@
1751+In order to have RPMs of MySQL which are distributed via ULN for Oracle Linux
1752+to be as closely compatible to such RPMs built and distributed by RedHat,
1753+this directory contains additional files which originated at RedHat
1754+and are used only for such RPMs intended for distribution via ULN.
1755+
1756+Especially, this directory contains the spec file used to build these RPMs,
1757+named "mysql.spec". Please regard the following note:
1758+
1759+ You are receiving a copy of the Red Hat spec file.
1760+ The terms of the Oracle license do NOT apply to the Red Hat spec file;
1761+ it is licensed under the
1762+ GNU GENERAL PUBLIC LICENSE Version 2, June 1991
1763+ separately from the Oracle programs you receive.
1764+
1765+
1766
1767=== added file 'Percona-Server/packaging/rpm-uln/README.mysql-docs'
1768--- Percona-Server/packaging/rpm-uln/README.mysql-docs 1970-01-01 00:00:00 +0000
1769+++ Percona-Server/packaging/rpm-uln/README.mysql-docs 2013-01-31 20:19:36 +0000
1770@@ -0,0 +1,4 @@
1771+The official MySQL documentation is not freely redistributable, so we cannot
1772+include it in RHEL or Fedora. You can find it on-line at
1773+
1774+http://dev.mysql.com/doc/
1775
1776=== added file 'Percona-Server/packaging/rpm-uln/filter-requires-mysql.sh'
1777--- Percona-Server/packaging/rpm-uln/filter-requires-mysql.sh 1970-01-01 00:00:00 +0000
1778+++ Percona-Server/packaging/rpm-uln/filter-requires-mysql.sh 2013-01-31 20:19:36 +0000
1779@@ -0,0 +1,3 @@
1780+#!/bin/sh
1781+
1782+/usr/lib/rpm/perl.req $* | grep -v -e "perl(th" -e "perl(lib::mtr" -e "perl(mtr"
1783
1784=== added file 'Percona-Server/packaging/rpm-uln/generate-tarball.sh'
1785--- Percona-Server/packaging/rpm-uln/generate-tarball.sh 1970-01-01 00:00:00 +0000
1786+++ Percona-Server/packaging/rpm-uln/generate-tarball.sh 2013-01-31 20:19:36 +0000
1787@@ -0,0 +1,15 @@
1788+#!/bin/sh
1789+
1790+VERSION=$1
1791+
1792+rm -rf mysql-$VERSION
1793+
1794+tar xfz mysql-$VERSION.tar.gz || exit 1
1795+
1796+rm mysql-$VERSION/Docs/mysql.info
1797+
1798+tar cfz mysql-$VERSION-nodocs.tar.gz mysql-$VERSION || exit 1
1799+
1800+rm -rf mysql-$VERSION
1801+
1802+exit 0
1803
1804=== added file 'Percona-Server/packaging/rpm-uln/my.cnf'
1805--- Percona-Server/packaging/rpm-uln/my.cnf 1970-01-01 00:00:00 +0000
1806+++ Percona-Server/packaging/rpm-uln/my.cnf 2013-01-31 20:19:36 +0000
1807@@ -0,0 +1,10 @@
1808+[mysqld]
1809+datadir=/var/lib/mysql
1810+socket=/var/lib/mysql/mysql.sock
1811+user=mysql
1812+# Disabling symbolic-links is recommended to prevent assorted security risks
1813+symbolic-links=0
1814+
1815+[mysqld_safe]
1816+log-error=/var/log/mysqld.log
1817+pid-file=/var/run/mysqld/mysqld.pid
1818
1819=== added file 'Percona-Server/packaging/rpm-uln/my_config.h'
1820--- Percona-Server/packaging/rpm-uln/my_config.h 1970-01-01 00:00:00 +0000
1821+++ Percona-Server/packaging/rpm-uln/my_config.h 2013-01-31 20:19:36 +0000
1822@@ -0,0 +1,29 @@
1823+/*
1824+ * Kluge to support multilib installation of both 32- and 64-bit RPMS:
1825+ * we need to arrange that header files that appear in both RPMs are
1826+ * identical. Hence, this file is architecture-independent and calls
1827+ * in an arch-dependent file that will appear in just one RPM.
1828+ *
1829+ * To avoid breaking arches not explicitly supported by Red Hat, we
1830+ * use this indirection file *only* on known multilib arches.
1831+ *
1832+ * Note: this may well fail if user tries to use gcc's -I- option.
1833+ * But that option is deprecated anyway.
1834+ */
1835+#if defined(__x86_64__)
1836+#include "my_config_x86_64.h"
1837+#elif defined(__i386__)
1838+#include "my_config_i386.h"
1839+#elif defined(__ppc64__) || defined(__powerpc64__)
1840+#include "my_config_ppc64.h"
1841+#elif defined(__ppc__) || defined(__powerpc__)
1842+#include "my_config_ppc.h"
1843+#elif defined(__s390x__)
1844+#include "my_config_s390x.h"
1845+#elif defined(__s390__)
1846+#include "my_config_s390.h"
1847+#elif defined(__sparc__) && defined(__arch64__)
1848+#include "my_config_sparc64.h"
1849+#elif defined(__sparc__)
1850+#include "my_config_sparc.h"
1851+#endif
1852
1853=== added file 'Percona-Server/packaging/rpm-uln/mysql-5.5-errno.patch'
1854--- Percona-Server/packaging/rpm-uln/mysql-5.5-errno.patch 1970-01-01 00:00:00 +0000
1855+++ Percona-Server/packaging/rpm-uln/mysql-5.5-errno.patch 2013-01-31 20:19:36 +0000
1856@@ -0,0 +1,21 @@
1857+"extern int errno" is just a really bad idea.
1858+
1859+
1860+diff -Naur mysql-5.1.32.orig/include/my_sys.h mysql-5.1.32/include/my_sys.h
1861+--- mysql-5.1.32.orig/include/my_sys.h 2009-02-13 19:52:19.000000000 -0500
1862++++ mysql-5.1.32/include/my_sys.h 2009-03-04 18:08:40.000000000 -0500
1863+@@ -199,13 +199,8 @@
1864+ #define my_afree(PTR) my_free(PTR)
1865+ #endif /* HAVE_ALLOCA */
1866+
1867+-#ifndef errno /* did we already get it? */
1868+-#ifdef HAVE_ERRNO_AS_DEFINE
1869+ #include <errno.h> /* errno is a define */
1870+-#else
1871+-extern int errno; /* declare errno */
1872+-#endif
1873+-#endif /* #ifndef errno */
1874++
1875+ extern char *home_dir; /* Home directory for user */
1876+ extern const char *my_progname; /* program-name (printed in errors) */
1877+ extern char curr_dir[]; /* Current directory for user */
1878
1879=== added file 'Percona-Server/packaging/rpm-uln/mysql-5.5-fix-tests.patch'
1880--- Percona-Server/packaging/rpm-uln/mysql-5.5-fix-tests.patch 1970-01-01 00:00:00 +0000
1881+++ Percona-Server/packaging/rpm-uln/mysql-5.5-fix-tests.patch 2013-01-31 20:19:36 +0000
1882@@ -0,0 +1,34 @@
1883+Adapt tests (where needed) to RedHat conventions.
1884+
1885+1) The RedHat convention uses the package name "mysql*" whereas upstream uses "MySQL*".
1886+ Test "file_contents" constructs path names and needs to be adapted.
1887+
1888+=== modified file 'mysql-test/t/file_contents.test'
1889+--- mysql-5.5.17-orig/mysql-test/t/file_contents.test 2011-10-10 12:03:29 +0000
1890++++ mysql-5.5.17/mysql-test/t/file_contents.test 2011-11-16 18:07:55 +0000
1891+@@ -17,20 +17,20 @@ if ($dir_bin =~ m|/usr/|) {
1892+ $dir_docs =~ s|/lib|/share/doc|;
1893+ if(-d "$dir_docs/packages") {
1894+ # SuSE: "packages/" in the documentation path
1895+- $dir_docs = glob "$dir_docs/packages/MySQL-server*";
1896++ $dir_docs = glob "$dir_docs/packages/mysql-server*";
1897+ } else {
1898+ # RedHat: version number in directory name
1899+- $dir_docs = glob "$dir_docs/MySQL-server*";
1900++ $dir_docs = glob "$dir_docs/mysql-server*";
1901+ }
1902+ } elsif ($dir_bin =~ m|/usr$|) {
1903+ # RPM build during development
1904+ $dir_docs = "$dir_bin/share/doc";
1905+ if(-d "$dir_docs/packages") {
1906+ # SuSE: "packages/" in the documentation path
1907+- $dir_docs = glob "$dir_docs/packages/MySQL-server*";
1908++ $dir_docs = glob "$dir_docs/packages/mysql-server*";
1909+ } else {
1910+ # RedHat: version number in directory name
1911+- $dir_docs = glob "$dir_docs/MySQL-server*";
1912++ $dir_docs = glob "$dir_docs/mysql-server*";
1913+ }
1914+ } else {
1915+ # tar.gz package, Windows, or developer work (in BZR)
1916+
1917
1918=== added file 'Percona-Server/packaging/rpm-uln/mysql-5.5-libdir.patch'
1919--- Percona-Server/packaging/rpm-uln/mysql-5.5-libdir.patch 1970-01-01 00:00:00 +0000
1920+++ Percona-Server/packaging/rpm-uln/mysql-5.5-libdir.patch 2013-01-31 20:19:36 +0000
1921@@ -0,0 +1,28 @@
1922+The RPMs built by MySQL AB (-> Sun -> Oracle) put the libraries into "/usr/lib".
1923+Those built by RedHat put them into "/usr/lib/mysql".
1924+This patch is to modify the cmake files to follow the RedHat convention.
1925+Similar, the server is now in "/usr/libexec" (formerly "/usr/sbin").
1926+
1927+
1928+diff -Naur mysql-5.5.17.orig/cmake/install_layout.cmake mysql-5.5.17/cmake/install_layout.cmake
1929+--- mysql-5.5.17.orig/cmake/install_layout.cmake 2011-06-30 15:46:53 +0000
1930++++ mysql-5.5.17/cmake/install_layout.cmake 2011-10-27 16:40:10 +0000
1931+@@ -140,14 +140,14 @@ SET(INSTALL_SBINDIR_RPM
1932+ # be applied at build time via "rpmbuild".
1933+ #
1934+ SET(INSTALL_BINDIR_RPM "bin")
1935+-SET(INSTALL_SBINDIR_RPM "sbin")
1936++SET(INSTALL_SBINDIR_RPM "libexec")
1937+ SET(INSTALL_SCRIPTDIR_RPM "bin")
1938+ #
1939+ IF(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
1940+- SET(INSTALL_LIBDIR_RPM "lib64")
1941++ SET(INSTALL_LIBDIR_RPM "lib64/mysql")
1942+ SET(INSTALL_PLUGINDIR_RPM "lib64/mysql/plugin")
1943+ ELSE()
1944+- SET(INSTALL_LIBDIR_RPM "lib")
1945++ SET(INSTALL_LIBDIR_RPM "lib/mysql")
1946+ SET(INSTALL_PLUGINDIR_RPM "lib/mysql/plugin")
1947+ ENDIF()
1948+ #
1949+
1950
1951=== added file 'Percona-Server/packaging/rpm-uln/mysql-5.5-mtr1.patch'
1952--- Percona-Server/packaging/rpm-uln/mysql-5.5-mtr1.patch 1970-01-01 00:00:00 +0000
1953+++ Percona-Server/packaging/rpm-uln/mysql-5.5-mtr1.patch 2013-01-31 20:19:36 +0000
1954@@ -0,0 +1,25 @@
1955+Drop support for version 1 of "mysql-test-run.pl" from the RPMs:
1956+
1957+1) The auto-generation of Perl dependencies will mishandle that code,
1958+ probably because its run directory differs from its storage location.
1959+2) It does not provide several variables which are used in tests of MySQL 5.5
1960+
1961+If you really need it, take it from the source tarball.
1962+
1963+=== modified file 'mysql-test/mysql-test-run.pl'
1964+--- mysql-5.5.17-orig/mysql-test/mysql-test-run.pl 2011-10-03 11:16:40 +0000
1965++++ mysql-5.5.17/mysql-test/mysql-test-run.pl 2011-11-16 19:06:38 +0000
1966+@@ -58,10 +58,9 @@ BEGIN {
1967+ if ( $version == 1 )
1968+ {
1969+ print "=======================================================\n";
1970+- print " WARNING: Using mysql-test-run.pl version 1! \n";
1971++ print " ERROR: Support for version 1 is dropped in this distribution! \n";
1972+ print "=======================================================\n";
1973+- # Should use exec() here on *nix but this appears not to work on Windows
1974+- exit(system($^X, "lib/v1/mysql-test-run.pl", @ARGV) >> 8);
1975++ exit(1);
1976+ }
1977+ elsif ( $version == 2 )
1978+ {
1979+
1980
1981=== added file 'Percona-Server/packaging/rpm-uln/mysql-5.5-stack-guard.patch'
1982--- Percona-Server/packaging/rpm-uln/mysql-5.5-stack-guard.patch 1970-01-01 00:00:00 +0000
1983+++ Percona-Server/packaging/rpm-uln/mysql-5.5-stack-guard.patch 2013-01-31 20:19:36 +0000
1984@@ -0,0 +1,140 @@
1985+mysql is not accounting for the "guard page" when setting thread stack size
1986+requests. This is fatal on PPC systems, which may use guard pages as large
1987+as 64K. This patch also documents the IA64 situation a bit better.
1988+
1989+Note: there are quite a few other setstacksize calls besides the two in
1990+mysqld.cc; is it important to fix any of the others?
1991+
1992+Filed upstream at http://bugs.mysql.com/bug.php?id=35019
1993+
1994+
1995+diff -Naur mysql-5.1.30.orig/sql/mysqld.cc mysql-5.1.30/sql/mysqld.cc
1996+--- mysql-5.1.30.orig/sql/mysqld.cc 2008-11-14 11:37:13.000000000 -0500
1997++++ mysql-5.1.30/sql/mysqld.cc 2009-01-13 12:08:35.000000000 -0500
1998+@@ -2653,6 +2653,70 @@
1999+ }
2000+
2001+
2002++/* pthread_attr_setstacksize without so much platform-dependency */
2003++/* returns the actual stack size if possible */
2004++static size_t my_setstacksize(pthread_attr_t *attr, size_t stacksize)
2005++{
2006++ size_t guard_size = 0;
2007++
2008++#if defined(__ia64__) || defined(__ia64)
2009++ /*
2010++ On IA64, half of the requested stack size is used for "normal stack"
2011++ and half for "register stack". The space measured by check_stack_overrun
2012++ is the "normal stack", so double the request to make sure we have the
2013++ caller-expected amount of normal stack.
2014++
2015++ NOTE: there is no guarantee that the register stack can't grow faster
2016++ than normal stack, so it's very unclear that we won't dump core due to
2017++ stack overrun despite check_stack_overrun's efforts. Experimentation
2018++ shows that in the execution_constants test, the register stack grows
2019++ less than half as fast as normal stack, but perhaps other scenarios are
2020++ less forgiving. If it turns out that more space is needed for the
2021++ register stack, that could be forced (rather inefficiently) by using a
2022++ multiplier higher than 2 here.
2023++ */
2024++ stacksize *= 2;
2025++#endif
2026++
2027++ /*
2028++ On many machines, the "guard space" is subtracted from the requested
2029++ stack size, and that space is quite large on some platforms. So add
2030++ it to our request, if we can find out what it is.
2031++
2032++ FIXME: autoconfiscate use of pthread_attr_getguardsize
2033++ */
2034++ if (pthread_attr_getguardsize(attr, &guard_size))
2035++ guard_size = 0; /* if can't find it out, treat as 0 */
2036++
2037++ pthread_attr_setstacksize(attr, stacksize + guard_size);
2038++
2039++ /* Retrieve actual stack size if possible */
2040++#ifdef HAVE_PTHREAD_ATTR_GETSTACKSIZE
2041++ {
2042++ size_t real_stack_size= 0;
2043++ /* We must ignore real_stack_size = 0 as Solaris 2.9 can return 0 here */
2044++ if (pthread_attr_getstacksize(attr, &real_stack_size) == 0 &&
2045++ real_stack_size > guard_size)
2046++ {
2047++ real_stack_size -= guard_size;
2048++ if (real_stack_size < stacksize)
2049++ {
2050++ if (global_system_variables.log_warnings)
2051++ sql_print_warning("Asked for %ld thread stack, but got %ld",
2052++ (long) stacksize, (long) real_stack_size);
2053++ stacksize= real_stack_size;
2054++ }
2055++ }
2056++ }
2057++#endif
2058++
2059++#if defined(__ia64__) || defined(__ia64)
2060++ stacksize /= 2;
2061++#endif
2062++ return stacksize;
2063++}
2064++
2065++
2066+ static void start_signal_handler(void)
2067+ {
2068+ int error;
2069+@@ -2663,15 +2727,7 @@
2070+ #if !defined(HAVE_DEC_3_2_THREADS)
2071+ pthread_attr_setscope(&thr_attr,PTHREAD_SCOPE_SYSTEM);
2072+ (void) pthread_attr_setdetachstate(&thr_attr,PTHREAD_CREATE_DETACHED);
2073+-#if defined(__ia64__) || defined(__ia64)
2074+- /*
2075+- Peculiar things with ia64 platforms - it seems we only have half the
2076+- stack size in reality, so we have to double it here
2077+- */
2078+- pthread_attr_setstacksize(&thr_attr,my_thread_stack_size*2);
2079+-#else
2080+- pthread_attr_setstacksize(&thr_attr,my_thread_stack_size);
2081+-#endif
2082++ (void) my_setstacksize(&thr_attr,my_thread_stack_size);
2083+ #endif
2084+
2085+ mysql_mutex_lock(&LOCK_thread_count);
2086+@@ -4445,37 +4501,7 @@
2087+ unireg_abort(1); // Will do exit
2088+
2089+ init_signals();
2090+-#if defined(__ia64__) || defined(__ia64)
2091+- /*
2092+- Peculiar things with ia64 platforms - it seems we only have half the
2093+- stack size in reality, so we have to double it here
2094+- */
2095+- pthread_attr_setstacksize(&connection_attrib,my_thread_stack_size*2);
2096+-#else
2097+- pthread_attr_setstacksize(&connection_attrib,my_thread_stack_size);
2098+-#endif
2099+-#ifdef HAVE_PTHREAD_ATTR_GETSTACKSIZE
2100+- {
2101+- /* Retrieve used stack size; Needed for checking stack overflows */
2102+- size_t stack_size= 0;
2103+- pthread_attr_getstacksize(&connection_attrib, &stack_size);
2104+-#if defined(__ia64__) || defined(__ia64)
2105+- stack_size/= 2;
2106+-#endif
2107+- /* We must check if stack_size = 0 as Solaris 2.9 can return 0 here */
2108+- if (stack_size && stack_size < my_thread_stack_size)
2109+- {
2110+- if (global_system_variables.log_warnings)
2111+- sql_print_warning("Asked for %lu thread stack, but got %ld",
2112+- my_thread_stack_size, (long) stack_size);
2113+-#if defined(__ia64__) || defined(__ia64)
2114+- my_thread_stack_size= stack_size*2;
2115+-#else
2116+- my_thread_stack_size= stack_size;
2117+-#endif
2118+- }
2119+- }
2120+-#endif
2121++ my_thread_stack_size = my_setstacksize(&connection_attrib,my_thread_stack_size);
2122+
2123+ (void) thr_setconcurrency(concurrency); // 10 by default
2124+
2125
2126=== added file 'Percona-Server/packaging/rpm-uln/mysql-5.5-testing.patch'
2127--- Percona-Server/packaging/rpm-uln/mysql-5.5-testing.patch 1970-01-01 00:00:00 +0000
2128+++ Percona-Server/packaging/rpm-uln/mysql-5.5-testing.patch 2013-01-31 20:19:36 +0000
2129@@ -0,0 +1,23 @@
2130+Hack the top-level Makefile to enable the openssl regression tests.
2131+(Why doesn't this happen automatically given the configure option??)
2132+
2133+Also, increase the overall timeout for the regression tests to 12 hours,
2134+because on a slow or heavily-loaded build machine sometimes the default of
2135+5 hours isn't enough. (This has been demonstrated to fail in mass-rebuild
2136+scenarios, which aren't that uncommon for Fedora.) Similarly increase the
2137+per-testcase timeout to 30 minutes, since the default of 15 hasn't got a
2138+great deal of headroom either.
2139+
2140+
2141+diff -Naur mysql-5.1.32.orig/Makefile.am mysql-5.1.32/Makefile.am
2142+--- mysql-5.1.32.orig/Makefile.am 2009-02-13 19:51:56.000000000 -0500
2143++++ mysql-5.1.32/Makefile.am 2009-03-04 18:12:36.000000000 -0500
2144+@@ -98,7 +98,7 @@
2145+
2146+ test-ns:
2147+ cd mysql-test ; \
2148+- @PERL@ ./mysql-test-run.pl $(force) $(mem) --mysqld=--binlog-format=mixed
2149++ @PERL@ ./mysql-test-run.pl $(force) $(mem) --ssl --mysqld=--binlog-format=mixed --suite-timeout=720 --testcase-timeout=30
2150+
2151+ test-binlog-statement:
2152+ cd mysql-test ; \
2153
2154=== added file 'Percona-Server/packaging/rpm-uln/mysql-chain-certs.patch'
2155--- Percona-Server/packaging/rpm-uln/mysql-chain-certs.patch 1970-01-01 00:00:00 +0000
2156+++ Percona-Server/packaging/rpm-uln/mysql-chain-certs.patch 2013-01-31 20:19:36 +0000
2157@@ -0,0 +1,45 @@
2158+Fix things so that chains of certificates work in the server and client
2159+certificate files.
2160+
2161+This only really works for OpenSSL-based builds, as yassl is unable to read
2162+multiple certificates from a file. The patch below to yassl/src/ssl.cpp
2163+doesn't fix that, but just arranges that the viosslfactories.c patch won't
2164+have any ill effects in a yassl build. Since we don't use yassl in Red Hat/
2165+Fedora builds, I'm not feeling motivated to try to fix yassl for this.
2166+
2167+See RH bug #598656. Filed upstream at http://bugs.mysql.com/bug.php?id=54158
2168+
2169+ ===
2170+
2171+Joerg Bruehe, MySQL Build Team at Oracle: First patch adapted to code changes in MySQL 5.5
2172+
2173+
2174+diff -Naur mysql-5.5.29.orig/vio/viosslfactories.c mysql-5.5.29/vio/viosslfactories.c
2175+--- mysql-5.5.29.orig/vio/viosslfactories.c 2010-05-06 11:28:07.000000000 -0400
2176++++ mysql-5.5.29/vio/viosslfactories.c 2010-05-26 23:23:46.000000000 -0400
2177+@@ -106,7 +106,7 @@
2178+ key_file= cert_file;
2179+
2180+ if (cert_file &&
2181+- SSL_CTX_use_certificate_file(ctx, cert_file, SSL_FILETYPE_PEM) <= 0)
2182++ SSL_CTX_use_certificate_chain_file(ctx, cert_file) <= 0)
2183+ {
2184+ *error= SSL_INITERR_CERT;
2185+ DBUG_PRINT("error",("%s from file '%s'", sslGetErrString(*error), cert_file));
2186+diff -Naur mysql-5.1.47.orig/extra/yassl/src/ssl.cpp mysql-5.1.47/extra/yassl/src/ssl.cpp
2187+--- mysql-5.1.47.orig/extra/yassl/src/ssl.cpp 2010-05-06 11:24:26.000000000 -0400
2188++++ mysql-5.1.47/extra/yassl/src/ssl.cpp 2010-05-26 23:29:13.000000000 -0400
2189+@@ -1606,10 +1606,10 @@
2190+ }
2191+
2192+
2193+- int SSL_CTX_use_certificate_chain_file(SSL_CTX*, const char*)
2194++ int SSL_CTX_use_certificate_chain_file(SSL_CTX* ctx, const char* file)
2195+ {
2196+- // TDOD:
2197+- return SSL_SUCCESS;
2198++ // For the moment, treat like use_certificate_file
2199++ return read_file(ctx, file, SSL_FILETYPE_PEM, Cert);
2200+ }
2201+
2202+
2203
2204=== added file 'Percona-Server/packaging/rpm-uln/mysql-embedded-check.c'
2205--- Percona-Server/packaging/rpm-uln/mysql-embedded-check.c 1970-01-01 00:00:00 +0000
2206+++ Percona-Server/packaging/rpm-uln/mysql-embedded-check.c 2013-01-31 20:19:36 +0000
2207@@ -0,0 +1,26 @@
2208+/* simple test program to see if we can link the embedded server library */
2209+
2210+#include <stdio.h>
2211+#include <stdlib.h>
2212+#include <stdarg.h>
2213+
2214+#include "mysql.h"
2215+
2216+MYSQL *mysql;
2217+
2218+static char *server_options[] = \
2219+ { "mysql_test", "--defaults-file=my.cnf", NULL };
2220+int num_elements = (sizeof(server_options) / sizeof(char *)) - 1;
2221+
2222+static char *server_groups[] = { "libmysqld_server",
2223+ "libmysqld_client", NULL };
2224+
2225+int main(int argc, char **argv)
2226+{
2227+ mysql_library_init(num_elements, server_options, server_groups);
2228+ mysql = mysql_init(NULL);
2229+ mysql_close(mysql);
2230+ mysql_library_end();
2231+
2232+ return 0;
2233+}
2234
2235=== added file 'Percona-Server/packaging/rpm-uln/mysql-expired-certs.patch'
2236--- Percona-Server/packaging/rpm-uln/mysql-expired-certs.patch 1970-01-01 00:00:00 +0000
2237+++ Percona-Server/packaging/rpm-uln/mysql-expired-certs.patch 2013-01-31 20:19:36 +0000
2238@@ -0,0 +1,555 @@
2239+Upstream insists on generating SSL testing certificates with relatively short
2240+lifespan, which has repeatedly caused problems (ie, one day the regression
2241+tests suddenly stop working). Replace them with certificates with 20-year
2242+lifespan. We should periodically regenerate these, too, but at least not
2243+very often.
2244+
2245+
2246+diff -Naur mysql-5.1.50.orig/mysql-test/std_data/cacert.pem mysql-5.1.50/mysql-test/std_data/cacert.pem
2247+--- mysql-5.1.50.orig/mysql-test/std_data/cacert.pem 2010-08-03 13:55:04.000000000 -0400
2248++++ mysql-5.1.50/mysql-test/std_data/cacert.pem 2010-08-27 23:42:05.751428144 -0400
2249+@@ -1,17 +1,22 @@
2250+ -----BEGIN CERTIFICATE-----
2251+-MIICrTCCAhagAwIBAgIJAMI7xZKjhrDbMA0GCSqGSIb3DQEBBAUAMEQxCzAJBgNV
2252++MIIDsjCCApqgAwIBAgIJAL5YrUwfPSWVMA0GCSqGSIb3DQEBBQUAMEQxCzAJBgNV
2253+ BAYTAlNFMRAwDgYDVQQIEwdVcHBzYWxhMRAwDgYDVQQHEwdVcHBzYWxhMREwDwYD
2254+-VQQKEwhNeVNRTCBBQjAeFw0xMDAxMjkxMTQ3MTBaFw0xNTAxMjgxMTQ3MTBaMEQx
2255++VQQKEwhNeVNRTCBBQjAeFw0xMDAxMjkwNTU5NTNaFw0xNTAxMjgwNTU5NTNaMEQx
2256+ CzAJBgNVBAYTAlNFMRAwDgYDVQQIEwdVcHBzYWxhMRAwDgYDVQQHEwdVcHBzYWxh
2257+-MREwDwYDVQQKEwhNeVNRTCBBQjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
2258+-wQYsOEfrN4ESP3FjsI8cghE+tZVuyK2gck61lwieVxjgFMtBd65mI5a1y9pmlOI1
2259+-yM4SB2Ppqcuw7/e1CdV1y7lvHrGNt5yqEHbN4QX1gvsN8TQauP/2WILturk4R4Hq
2260+-rKg0ZySu7f1Xhl0ed9a48LpaEHD17IcxWEGMMJwAxF0CAwEAAaOBpjCBozAMBgNV
2261+-HRMEBTADAQH/MB0GA1UdDgQWBBSvktYQ0ahLnyxyVKqty+WpBbBrDTB0BgNVHSME
2262+-bTBrgBSvktYQ0ahLnyxyVKqty+WpBbBrDaFIpEYwRDELMAkGA1UEBhMCU0UxEDAO
2263+-BgNVBAgTB1VwcHNhbGExEDAOBgNVBAcTB1VwcHNhbGExETAPBgNVBAoTCE15U1FM
2264+-IEFCggkAwjvFkqOGsNswDQYJKoZIhvcNAQEEBQADgYEAdKN1PjwMHAKG2Ww1145g
2265+-JQGBnKxSFOUaoSvkBi/4ntTM+ysnViWh7WvxyWjR9zU9arfr7aqsDeQxm0XDOqzj
2266+-AQ/cQIla2/Li8tXyfc06bisH/IHRaSc2zWqioTKbEwMdVOdrvq4a8V8ic3xYyIWn
2267+-7F4WeS07J8LKardSvM0+hOA=
2268++MREwDwYDVQQKEwhNeVNRTCBBQjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
2269++ggEBAL6kNN4peX7uhK9rb06W/QbPEpVuejmdWdl2PqMshP/eSuXXw7kwVgfpxx9R
2270++vC000CKQQSG9MCoZjtqPnFRsetmWLZgApRpEalGXTXJqq9sEbCfoFizg94U8G7d2
2271++u5XJjLVmcG34ru36KoBgVx1zeH1puBAf8dOzrE4L7Y+ZQBFzFohjh8C2LqWC4nM5
2272++qsLmOkDWMipGqYU5DvkKjIbTbwTyRNRgZHWSPfVDDPUIUOsY4BGUp2DpgeGY9aEv
2273++lIs57Ev9JqlIUCV65lOhhDkG+xwmkHKHA+ECEU9cALI8+uXbh48MB9XpMOuk408X
2274++/lX89aZwD0/G9kmObVGnE2G+H5UCAwEAAaOBpjCBozAdBgNVHQ4EFgQUsft+d7VA
2275++jWgRftkR5cPG2k2sUbAwdAYDVR0jBG0wa4AUsft+d7VAjWgRftkR5cPG2k2sUbCh
2276++SKRGMEQxCzAJBgNVBAYTAlNFMRAwDgYDVQQIEwdVcHBzYWxhMRAwDgYDVQQHEwdV
2277++cHBzYWxhMREwDwYDVQQKEwhNeVNRTCBBQoIJAL5YrUwfPSWVMAwGA1UdEwQFMAMB
2278++Af8wDQYJKoZIhvcNAQEFBQADggEBALRUOAmdL8R8sl1y8kiEiFgDatdXK5RDqWai
2279++8yZChfmwTIToHhmQsOEshJe2e8hky3huUj+33VyXjINoMbebIwMuXPwEkbJal8RZ
2280++nSJmF0jN1Qz7J/jFffwK9xmejWZJx49Kt2+Qwrwp6kDeq9TLFqQOoVczgyJPYsTL
2281++NAOib5WqTud3XWvCwxrhqmWu7JZq6sp1fomP/uunprb8y2miWfLESZN2mKAhm44Q
2282++Lws867LT8v2lskEjq2dT1LutD5+R66XcdjgSr0uDziDs64jZwCD6ea94hVFM7ej0
2283++ZOXYeSEZJ56FjUxu632e9fY8NyMh30yKjjmQf1mM9PuGJvdvsWU=
2284+ -----END CERTIFICATE-----
2285+diff -Naur mysql-5.1.50.orig/mysql-test/std_data/client-cert.pem mysql-5.1.50/mysql-test/std_data/client-cert.pem
2286+--- mysql-5.1.50.orig/mysql-test/std_data/client-cert.pem 2010-08-03 13:55:04.000000000 -0400
2287++++ mysql-5.1.50/mysql-test/std_data/client-cert.pem 2010-08-27 23:42:05.752428395 -0400
2288+@@ -1,46 +1,69 @@
2289+ Certificate:
2290+ Data:
2291+- Version: 1 (0x0)
2292+- Serial Number: 1048577 (0x100001)
2293+- Signature Algorithm: md5WithRSAEncryption
2294++ Version: 3 (0x2)
2295++ Serial Number: 6 (0x6)
2296++ Signature Algorithm: sha1WithRSAEncryption
2297+ Issuer: C=SE, ST=Uppsala, L=Uppsala, O=MySQL AB
2298+ Validity
2299+- Not Before: Jan 29 11:50:22 2010 GMT
2300+- Not After : Jan 28 11:50:22 2015 GMT
2301++ Not Before: Feb 20 03:03:26 2010 GMT
2302++ Not After : Sep 3 03:03:26 2030 GMT
2303+ Subject: C=SE, ST=Uppsala, O=MySQL AB
2304+ Subject Public Key Info:
2305+ Public Key Algorithm: rsaEncryption
2306+- Public-Key: (1024 bit)
2307+- Modulus:
2308+- 00:cc:9a:37:49:13:66:dc:cf:e3:0b:13:a1:23:ed:
2309+- 78:db:4e:bd:11:f6:8c:0d:76:f9:a3:32:56:9a:f8:
2310+- a1:21:6a:55:4e:4d:3f:e6:67:9d:26:99:b2:cd:a4:
2311+- 9a:d2:2b:59:5c:d7:8a:d3:60:68:f8:18:bd:c5:be:
2312+- 15:e1:2a:3c:a3:d4:61:cb:f5:11:94:17:81:81:f7:
2313+- 87:8c:f6:6a:d2:ee:d8:e6:77:f6:62:66:4d:2e:16:
2314+- 8d:08:81:4a:c9:c6:4b:31:e5:b9:c7:8a:84:96:48:
2315+- a7:47:8c:0d:26:90:56:4e:e6:a5:6e:8c:b3:f2:9f:
2316+- fc:3d:78:9b:49:6e:86:83:77
2317++ RSA Public Key: (1024 bit)
2318++ Modulus (1024 bit):
2319++ 00:c2:e7:20:cf:89:59:2f:67:cb:4c:9f:e8:11:f2:
2320++ 23:e5:f1:b1:ee:3f:66:5f:c3:f5:fd:1e:31:ee:8f:
2321++ 4c:2a:bd:c0:4a:a5:9f:c8:44:d5:77:8f:15:1b:4d:
2322++ 78:6e:b2:a2:48:a5:24:33:05:40:02:b3:c1:87:8d:
2323++ 59:3c:1a:07:aa:86:f0:04:e1:9c:20:4b:22:32:c4:
2324++ 51:9e:40:e4:31:c3:57:f5:98:bf:2e:b1:fd:2c:56:
2325++ bf:49:d9:9b:e7:17:cc:95:5f:b5:08:19:5e:9d:df:
2326++ 65:22:39:2c:48:fb:69:96:31:7a:35:4d:de:60:b4:
2327++ c1:60:19:5f:96:56:7e:55:19
2328+ Exponent: 65537 (0x10001)
2329+- Signature Algorithm: md5WithRSAEncryption
2330+- 5e:1f:a3:53:5f:24:13:1c:f8:28:32:b0:7f:69:69:f3:0e:c0:
2331+- 34:87:10:03:7d:da:15:8b:bd:19:b8:1a:56:31:e7:85:49:81:
2332+- c9:7f:45:20:74:3e:89:c0:e0:26:84:51:cc:04:16:ce:69:99:
2333+- 01:e1:26:99:b3:e3:f5:bd:ec:5f:a0:84:e4:38:da:75:78:7b:
2334+- 89:9c:d2:cd:60:95:20:ba:8e:e3:7c:e6:df:76:3a:7c:89:77:
2335+- 02:94:86:11:3a:c4:61:7d:6f:71:83:21:8a:17:fb:17:e2:ee:
2336+- 02:6b:61:c1:b4:52:63:d7:d8:46:b2:c5:9c:6f:38:91:8a:35:
2337+- 32:0b
2338++ X509v3 extensions:
2339++ X509v3 Basic Constraints:
2340++ CA:FALSE
2341++ X509v3 Subject Key Identifier:
2342++ 8D:10:67:91:33:76:9C:02:E5:78:5D:D8:C5:EF:25:96:B2:D7:FA:1F
2343++ X509v3 Authority Key Identifier:
2344++ keyid:B1:FB:7E:77:B5:40:8D:68:11:7E:D9:11:E5:C3:C6:DA:4D:AC:51:B0
2345++ DirName:/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB
2346++ serial:BE:58:AD:4C:1F:3D:25:95
2347++
2348++ Signature Algorithm: sha1WithRSAEncryption
2349++ a9:88:10:3e:5d:2a:47:29:c8:03:27:7a:31:5a:8e:10:03:bc:
2350++ b5:4e:37:1d:12:7b:eb:5f:50:71:70:b1:a3:8e:93:0e:77:17:
2351++ 6c:47:b6:c9:a4:4d:2a:c4:38:f0:61:55:b2:7f:28:ba:06:79:
2352++ ee:67:11:7d:d4:c9:7f:0a:18:c8:c1:cb:d0:2c:f9:63:0f:bb:
2353++ 45:ca:de:ea:bb:ac:00:01:52:48:36:2b:07:2b:c8:46:c7:b1:
2354++ 21:81:bd:77:39:e7:4c:39:aa:bd:ac:60:d8:a7:bf:cf:14:98:
2355++ 4a:0b:a1:40:55:06:8d:6f:35:a9:39:a0:71:a9:97:ba:7c:73:
2356++ 3c:41:ba:c5:1c:11:4b:2b:43:1d:2d:ba:7b:5f:14:b5:3d:64:
2357++ 62:15:36:b4:16:bd:78:c8:43:8d:f9:1c:a5:d2:ac:a1:58:74:
2358++ e1:99:de:ad:04:19:43:a8:bd:0a:fd:19:9b:50:44:46:6d:18:
2359++ 55:4d:bf:b4:5b:a4:93:62:c7:64:91:6c:54:34:d1:f8:f3:ff:
2360++ 12:6d:5f:85:e7:35:9e:5c:42:81:5e:fb:c8:bb:44:51:98:b2:
2361++ ef:1b:9f:5a:22:77:28:7d:da:fb:08:c2:94:9a:0f:42:08:93:
2362++ 54:10:1e:ad:f2:4f:fc:62:98:51:e9:9b:b9:3a:93:d9:e4:1f:
2363++ 1d:c4:76:d0
2364+ -----BEGIN CERTIFICATE-----
2365+-MIIB5zCCAVACAxAAATANBgkqhkiG9w0BAQQFADBEMQswCQYDVQQGEwJTRTEQMA4G
2366+-A1UECBMHVXBwc2FsYTEQMA4GA1UEBxMHVXBwc2FsYTERMA8GA1UEChMITXlTUUwg
2367+-QUIwHhcNMTAwMTI5MTE1MDIyWhcNMTUwMTI4MTE1MDIyWjAyMQswCQYDVQQGEwJT
2368+-RTEQMA4GA1UECBMHVXBwc2FsYTERMA8GA1UEChMITXlTUUwgQUIwgZ8wDQYJKoZI
2369+-hvcNAQEBBQADgY0AMIGJAoGBAMyaN0kTZtzP4wsToSPteNtOvRH2jA12+aMyVpr4
2370+-oSFqVU5NP+ZnnSaZss2kmtIrWVzXitNgaPgYvcW+FeEqPKPUYcv1EZQXgYH3h4z2
2371+-atLu2OZ39mJmTS4WjQiBSsnGSzHluceKhJZIp0eMDSaQVk7mpW6Ms/Kf/D14m0lu
2372+-hoN3AgMBAAEwDQYJKoZIhvcNAQEEBQADgYEAXh+jU18kExz4KDKwf2lp8w7ANIcQ
2373+-A33aFYu9GbgaVjHnhUmByX9FIHQ+icDgJoRRzAQWzmmZAeEmmbPj9b3sX6CE5Dja
2374+-dXh7iZzSzWCVILqO43zm33Y6fIl3ApSGETrEYX1vcYMhihf7F+LuAmthwbRSY9fY
2375+-RrLFnG84kYo1Mgs=
2376++MIIDETCCAfmgAwIBAgIBBjANBgkqhkiG9w0BAQUFADBEMQswCQYDVQQGEwJTRTEQ
2377++MA4GA1UECBMHVXBwc2FsYTEQMA4GA1UEBxMHVXBwc2FsYTERMA8GA1UEChMITXlT
2378++UUwgQUIwHhcNMTAwMjIwMDMwMzI2WhcNMzAwOTAzMDMwMzI2WjAyMQswCQYDVQQG
2379++EwJTRTEQMA4GA1UECBMHVXBwc2FsYTERMA8GA1UEChMITXlTUUwgQUIwgZ8wDQYJ
2380++KoZIhvcNAQEBBQADgY0AMIGJAoGBAMLnIM+JWS9ny0yf6BHyI+Xxse4/Zl/D9f0e
2381++Me6PTCq9wEqln8hE1XePFRtNeG6yokilJDMFQAKzwYeNWTwaB6qG8AThnCBLIjLE
2382++UZ5A5DHDV/WYvy6x/SxWv0nZm+cXzJVftQgZXp3fZSI5LEj7aZYxejVN3mC0wWAZ
2383++X5ZWflUZAgMBAAGjgaMwgaAwCQYDVR0TBAIwADAdBgNVHQ4EFgQUjRBnkTN2nALl
2384++eF3Yxe8llrLX+h8wdAYDVR0jBG0wa4AUsft+d7VAjWgRftkR5cPG2k2sUbChSKRG
2385++MEQxCzAJBgNVBAYTAlNFMRAwDgYDVQQIEwdVcHBzYWxhMRAwDgYDVQQHEwdVcHBz
2386++YWxhMREwDwYDVQQKEwhNeVNRTCBBQoIJAL5YrUwfPSWVMA0GCSqGSIb3DQEBBQUA
2387++A4IBAQCpiBA+XSpHKcgDJ3oxWo4QA7y1TjcdEnvrX1BxcLGjjpMOdxdsR7bJpE0q
2388++xDjwYVWyfyi6BnnuZxF91Ml/ChjIwcvQLPljD7tFyt7qu6wAAVJINisHK8hGx7Eh
2389++gb13OedMOaq9rGDYp7/PFJhKC6FAVQaNbzWpOaBxqZe6fHM8QbrFHBFLK0MdLbp7
2390++XxS1PWRiFTa0Fr14yEON+Ryl0qyhWHThmd6tBBlDqL0K/RmbUERGbRhVTb+0W6ST
2391++YsdkkWxUNNH48/8SbV+F5zWeXEKBXvvIu0RRmLLvG59aIncofdr7CMKUmg9CCJNU
2392++EB6t8k/8YphR6Zu5OpPZ5B8dxHbQ
2393+ -----END CERTIFICATE-----
2394+diff -Naur mysql-5.1.50.orig/mysql-test/std_data/client-key.pem mysql-5.1.50/mysql-test/std_data/client-key.pem
2395+--- mysql-5.1.50.orig/mysql-test/std_data/client-key.pem 2010-08-03 13:55:05.000000000 -0400
2396++++ mysql-5.1.50/mysql-test/std_data/client-key.pem 2010-08-27 23:42:05.752428395 -0400
2397+@@ -1,15 +1,15 @@
2398+ -----BEGIN RSA PRIVATE KEY-----
2399+-MIICXQIBAAKBgQDMmjdJE2bcz+MLE6Ej7XjbTr0R9owNdvmjMlaa+KEhalVOTT/m
2400+-Z50mmbLNpJrSK1lc14rTYGj4GL3FvhXhKjyj1GHL9RGUF4GB94eM9mrS7tjmd/Zi
2401+-Zk0uFo0IgUrJxksx5bnHioSWSKdHjA0mkFZO5qVujLPyn/w9eJtJboaDdwIDAQAB
2402+-AoGASqk/4We2En+93y3jkIO4pXafIe3w/3zZ7caRue1ehx4RUQh5d+95djuB9u7J
2403+-HEZ7TpjM7QNyao5EueL6gvbxt0LXFvqAMni7yM9tt/HUYtHHPqYiRtUny9bKYFTm
2404+-l8szCCMal/wD9GZU9ByHDNHm7tHUMyMhARNTYSgx+SERFmECQQD/6jJocC4SXf6f
2405+-T3LqimWR02lbJ7qCoDgRglsUXh0zjrG+IIiAyE+QOCCx1GMe3Uw6bsIuYwdHT6as
2406+-WcdPs04xAkEAzKulvEvLVvN5zfa/DTYRTV7jh6aDleOxjsD5oN/oJXoACnPzVuUL
2407+-qQQMNtuAXm6Q1QItrRxpQsSKbY0UQka6JwJBAOSgoNoG5lIIYTKIMvzwGV+XBLeo
2408+-HYsXgh+6Wo4uql3mLErUG78ZtWL9kc/tE4R+ZdyKGLaCR/1gXmH5bwN4B/ECQEBb
2409+-uUH8k3REG4kojesZlVc+/00ojzgS4UKCa/yqa9VdB6ZBz8MDQydinnShkTwgiGpy
2410+-xOoqhO753o2UT0qH8wECQQC99IEJWUnwvExVMkLaZH5NjAFJkb22sjkmuT11tAgU
2411+-RQgOMoDOm6driojnOnDWOkx1r1Gy9NgMLooduja4v6cx
2412++MIICWwIBAAKBgQDC5yDPiVkvZ8tMn+gR8iPl8bHuP2Zfw/X9HjHuj0wqvcBKpZ/I
2413++RNV3jxUbTXhusqJIpSQzBUACs8GHjVk8GgeqhvAE4ZwgSyIyxFGeQOQxw1f1mL8u
2414++sf0sVr9J2ZvnF8yVX7UIGV6d32UiOSxI+2mWMXo1Td5gtMFgGV+WVn5VGQIDAQAB
2415++AoGARXcXLKDpVooJ3W+IyQyiWsw//IhANpWjUOm4JiyQmxMyO+i4ACr4Yjpu7WI5
2416++MEseqAGj20NdwxjKO0PXsCIe5LmrGZ+SI8+CSERFOWXWRtCWz7y7SG30i1k6suvM
2417++mwqWom0tJLwn93uA1lm/WSwKQwUrJRahRQd3EaZqrl7DP5kCQQD/8gbuYAT5pxQe
2418++ULLGM0RvEsXxDYbEDxNbY5wrBazfklBwpumxZpFl6jEAT++7Kh2Ns3A7kB1oUNlA
2419++FPYr+dYPAkEAwvHEwRtoyUr8jqoqVVJWI76CDmBjEOzVeMKW97ztqbs2LxZW8dYI
2420++iOh/myFGpdoUwgu0U8w9MmXcj3ZeZCYKVwJALyQ+AJPw9qa+fuLwOq9gsHCtwrty
2421++EhSQxSlwrz/pWniRll439vPkXfgntF4E0t1r+hiN2Hqv3/HcQgBaYzkuIwJAG023
2422++bACFxaOuCeFFepvEms8E8jSHy4gQQhCnCl24v8wLw76SQN7kZSCDNtwLRBFuVNtE
2423++z3PMonFn2eQPRmGZkwJAP1c1BHprMQx/ruafdscROILv3JrH40C1bR6KVVBKt1dK
2424++Qpnpgi7hK5rUQjDF8k3bn9ugTt06jyeHe/QhAml0kg==
2425+ -----END RSA PRIVATE KEY-----
2426+diff -Naur mysql-5.1.50.orig/mysql-test/std_data/server-cert.pem mysql-5.1.50/mysql-test/std_data/server-cert.pem
2427+--- mysql-5.1.50.orig/mysql-test/std_data/server-cert.pem 2010-08-03 13:55:08.000000000 -0400
2428++++ mysql-5.1.50/mysql-test/std_data/server-cert.pem 2010-08-27 23:42:05.753428361 -0400
2429+@@ -1,41 +1,69 @@
2430+ Certificate:
2431+ Data:
2432+- Version: 1 (0x0)
2433+- Serial Number: 1048578 (0x100002)
2434+- Signature Algorithm: md5WithRSAEncryption
2435++ Version: 3 (0x2)
2436++ Serial Number: 4 (0x4)
2437++ Signature Algorithm: sha1WithRSAEncryption
2438+ Issuer: C=SE, ST=Uppsala, L=Uppsala, O=MySQL AB
2439+ Validity
2440+- Not Before: Jan 29 11:56:49 2010 GMT
2441+- Not After : Jan 28 11:56:49 2015 GMT
2442++ Not Before: Feb 20 02:55:06 2010 GMT
2443++ Not After : Sep 3 02:55:06 2030 GMT
2444+ Subject: C=SE, ST=Uppsala, O=MySQL AB, CN=localhost
2445+ Subject Public Key Info:
2446+ Public Key Algorithm: rsaEncryption
2447+- Public-Key: (512 bit)
2448+- Modulus:
2449+- 00:cd:e4:87:51:9d:72:11:a0:d1:fa:f3:92:8b:13:
2450+- 1c:eb:f7:e2:9a:2f:72:a8:d6:65:48:d1:69:af:1b:
2451+- c0:4c:13:e5:60:60:51:41:e9:ab:a6:bc:13:bb:0c:
2452+- 5e:32:7c:d9:6c:9e:cd:05:24:84:78:db:80:91:2e:
2453+- d8:88:2b:c2:ed
2454++ RSA Public Key: (1024 bit)
2455++ Modulus (1024 bit):
2456++ 00:e3:7d:4f:c2:23:77:a9:3a:2c:d2:69:59:a0:2f:
2457++ 4e:d1:51:4c:ae:8d:f5:17:cc:ce:58:9c:83:4f:0b:
2458++ a3:bb:29:a2:b8:1d:3e:1b:04:f9:a9:3e:e2:61:d0:
2459++ e6:7b:b9:7c:12:d8:1f:86:c9:53:b5:04:dd:df:26:
2460++ e9:c0:2b:de:4a:96:2e:f3:23:6f:79:6d:a9:d2:4e:
2461++ 17:af:2f:de:8b:68:44:ae:de:a3:e2:c4:37:1c:04:
2462++ ad:73:4b:85:f9:83:ac:fe:b7:c1:54:47:2e:96:d4:
2463++ 31:96:85:94:69:d6:5a:63:24:04:99:89:19:1d:56:
2464++ 8a:d1:77:aa:87:fb:38:cd:b7
2465+ Exponent: 65537 (0x10001)
2466+- Signature Algorithm: md5WithRSAEncryption
2467+- 73:ce:9c:6e:39:46:b4:14:be:da:3f:f3:1b:ba:90:bc:23:43:
2468+- d7:82:2a:70:4e:a6:d9:5a:65:5c:b7:df:71:df:75:77:c5:80:
2469+- a4:af:fa:d2:59:e2:fd:c9:9c:f0:98:95:8e:69:a9:8c:7c:d8:
2470+- 6f:48:d2:e3:36:e0:cd:ff:3f:d1:a5:e6:ab:75:09:c4:50:10:
2471+- c4:96:dd:bf:3b:de:32:46:da:ca:4a:f1:d6:52:8a:33:2f:ab:
2472+- f5:2e:70:3f:d4:9c:be:00:c8:03:f9:39:8a:df:5b:70:3c:40:
2473+- ef:03:be:7c:3d:1d:32:32:f3:51:81:e2:83:30:6e:3d:38:9b:
2474+- fb:3c
2475++ X509v3 extensions:
2476++ X509v3 Basic Constraints:
2477++ CA:FALSE
2478++ X509v3 Subject Key Identifier:
2479++ CC:8C:71:40:D0:0F:BF:D1:99:79:3F:1B:E9:10:76:19:67:36:0F:A3
2480++ X509v3 Authority Key Identifier:
2481++ keyid:B1:FB:7E:77:B5:40:8D:68:11:7E:D9:11:E5:C3:C6:DA:4D:AC:51:B0
2482++ DirName:/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB
2483++ serial:BE:58:AD:4C:1F:3D:25:95
2484++
2485++ Signature Algorithm: sha1WithRSAEncryption
2486++ 6f:ad:5e:59:fa:84:3a:be:e2:72:b1:e8:66:2a:4e:f8:73:19:
2487++ 11:06:11:92:78:56:3e:d6:e8:68:29:90:8b:59:d2:fe:aa:ae:
2488++ 25:59:c7:e9:99:bb:4a:06:43:dd:40:bd:cb:f4:ae:79:95:7d:
2489++ 8e:90:ef:58:d2:a8:fc:bf:07:f3:37:b2:9b:bd:da:e6:8c:56:
2490++ dd:5e:c6:4a:70:7c:3e:3d:a1:e8:35:06:b8:a7:7b:ac:26:85:
2491++ 54:5d:09:a2:7b:77:b4:17:7f:72:31:cb:ff:cc:67:6d:e6:3e:
2492++ c6:dc:96:eb:4a:0a:ae:e9:48:ae:8a:e0:d6:73:57:6e:32:4c:
2493++ 00:dc:28:da:55:b3:9f:9f:d8:98:cc:d9:f1:b6:b3:14:67:2e:
2494++ a1:47:1e:51:11:cf:70:9f:31:8f:ba:59:29:f2:d0:88:0b:e2:
2495++ 51:6b:f8:31:ed:6d:ac:00:5e:d3:78:4c:95:97:02:cc:74:2b:
2496++ 3b:c6:28:e6:2a:c3:30:99:35:b4:4d:31:46:d4:90:f2:47:ed:
2497++ 64:85:1a:75:2a:72:0a:2f:c6:3a:2f:d2:ac:6b:31:cc:e5:a8:
2498++ 07:c2:d6:22:f3:c6:0f:bf:67:d9:d6:b2:79:cd:48:b5:c3:e0:
2499++ e3:18:7f:b5:74:c9:43:19:fb:c4:93:29:ca:cc:90:2b:1b:6f:
2500++ 45:f6:25:f9
2501+ -----BEGIN CERTIFICATE-----
2502+-MIIBtzCCASACAxAAAjANBgkqhkiG9w0BAQQFADBEMQswCQYDVQQGEwJTRTEQMA4G
2503+-A1UECBMHVXBwc2FsYTEQMA4GA1UEBxMHVXBwc2FsYTERMA8GA1UEChMITXlTUUwg
2504+-QUIwHhcNMTAwMTI5MTE1NjQ5WhcNMTUwMTI4MTE1NjQ5WjBGMQswCQYDVQQGEwJT
2505+-RTEQMA4GA1UECBMHVXBwc2FsYTERMA8GA1UEChMITXlTUUwgQUIxEjAQBgNVBAMT
2506+-CWxvY2FsaG9zdDBcMA0GCSqGSIb3DQEBAQUAA0sAMEgCQQDN5IdRnXIRoNH685KL
2507+-Exzr9+KaL3Ko1mVI0WmvG8BME+VgYFFB6aumvBO7DF4yfNlsns0FJIR424CRLtiI
2508+-K8LtAgMBAAEwDQYJKoZIhvcNAQEEBQADgYEAc86cbjlGtBS+2j/zG7qQvCND14Iq
2509+-cE6m2VplXLffcd91d8WApK/60lni/cmc8JiVjmmpjHzYb0jS4zbgzf8/0aXmq3UJ
2510+-xFAQxJbdvzveMkbaykrx1lKKMy+r9S5wP9ScvgDIA/k5it9bcDxA7wO+fD0dMjLz
2511+-UYHigzBuPTib+zw=
2512++MIIDJTCCAg2gAwIBAgIBBDANBgkqhkiG9w0BAQUFADBEMQswCQYDVQQGEwJTRTEQ
2513++MA4GA1UECBMHVXBwc2FsYTEQMA4GA1UEBxMHVXBwc2FsYTERMA8GA1UEChMITXlT
2514++UUwgQUIwHhcNMTAwMjIwMDI1NTA2WhcNMzAwOTAzMDI1NTA2WjBGMQswCQYDVQQG
2515++EwJTRTEQMA4GA1UECBMHVXBwc2FsYTERMA8GA1UEChMITXlTUUwgQUIxEjAQBgNV
2516++BAMTCWxvY2FsaG9zdDCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA431PwiN3
2517++qTos0mlZoC9O0VFMro31F8zOWJyDTwujuymiuB0+GwT5qT7iYdDme7l8EtgfhslT
2518++tQTd3ybpwCveSpYu8yNveW2p0k4Xry/ei2hErt6j4sQ3HAStc0uF+YOs/rfBVEcu
2519++ltQxloWUadZaYyQEmYkZHVaK0Xeqh/s4zbcCAwEAAaOBozCBoDAJBgNVHRMEAjAA
2520++MB0GA1UdDgQWBBTMjHFA0A+/0Zl5PxvpEHYZZzYPozB0BgNVHSMEbTBrgBSx+353
2521++tUCNaBF+2RHlw8baTaxRsKFIpEYwRDELMAkGA1UEBhMCU0UxEDAOBgNVBAgTB1Vw
2522++cHNhbGExEDAOBgNVBAcTB1VwcHNhbGExETAPBgNVBAoTCE15U1FMIEFCggkAvlit
2523++TB89JZUwDQYJKoZIhvcNAQEFBQADggEBAG+tXln6hDq+4nKx6GYqTvhzGREGEZJ4
2524++Vj7W6GgpkItZ0v6qriVZx+mZu0oGQ91Avcv0rnmVfY6Q71jSqPy/B/M3spu92uaM
2525++Vt1exkpwfD49oeg1Brine6wmhVRdCaJ7d7QXf3Ixy//MZ23mPsbclutKCq7pSK6K
2526++4NZzV24yTADcKNpVs5+f2JjM2fG2sxRnLqFHHlERz3CfMY+6WSny0IgL4lFr+DHt
2527++bawAXtN4TJWXAsx0KzvGKOYqwzCZNbRNMUbUkPJH7WSFGnUqcgovxjov0qxrMczl
2528++qAfC1iLzxg+/Z9nWsnnNSLXD4OMYf7V0yUMZ+8STKcrMkCsbb0X2Jfk=
2529+ -----END CERTIFICATE-----
2530+diff -Naur mysql-5.1.50.orig/mysql-test/std_data/server-key.pem mysql-5.1.50/mysql-test/std_data/server-key.pem
2531+--- mysql-5.1.50.orig/mysql-test/std_data/server-key.pem 2010-08-03 13:55:08.000000000 -0400
2532++++ mysql-5.1.50/mysql-test/std_data/server-key.pem 2010-08-27 23:42:05.754428433 -0400
2533+@@ -1,9 +1,15 @@
2534+ -----BEGIN RSA PRIVATE KEY-----
2535+-MIIBOwIBAAJBAM3kh1GdchGg0frzkosTHOv34povcqjWZUjRaa8bwEwT5WBgUUHp
2536+-q6a8E7sMXjJ82WyezQUkhHjbgJEu2Igrwu0CAwEAAQJBAJuwhFbF3NzRpBbEmnqJ
2537+-4GPa1UJMQMLFJF+04tqj/HxJcAIVhOJhGmmtYNw1yjz/ZsPnfJCMz4eFOtdjvGtf
2538+-peECIQDmFFg2WLvYo+2m9w9V7z4ZIkg7ixYkI/ObUUctfZkPOQIhAOUWnrvjFrAX
2539+-bIvYT/YR50+3ZDLEc51XxNgJnWqWYl1VAiEAnTOFWgyivFC1DgF8PvDp8u5TgCt2
2540+-A1d1GMgd490O+TECIC/WMl0/hTxOF9930vKqOGf//o9PUGkZq8QE9fcM4gtlAiAE
2541+-iOcFpnLjtWj57jrhuw214ucnB5rklkQQe+AtcARNkg==
2542++MIICXgIBAAKBgQDjfU/CI3epOizSaVmgL07RUUyujfUXzM5YnINPC6O7KaK4HT4b
2543++BPmpPuJh0OZ7uXwS2B+GyVO1BN3fJunAK95Kli7zI295banSThevL96LaESu3qPi
2544++xDccBK1zS4X5g6z+t8FURy6W1DGWhZRp1lpjJASZiRkdVorRd6qH+zjNtwIDAQAB
2545++AoGAUb0o91y/FjMs/72S0pes/lDz+JRRSGfyjKxQEgrgndNsADOhqRu0iTdrKDJj
2546++XnlbN3ooecnFJfnFrvTQcJhSmlS30j6VrBw6LXpCBK3dvjYgJ9LOne7WK+dF1+vS
2547++FMQtsP04C56Sxy6HJDpMyWJ6oS3Bu169ygG2AxKo+Fk+E6ECQQD38w/MzmrARz2Z
2548++AGeEPDUnVZPYgtmXkmks95S0/2jSoLhmgpvJimzxwpYwVG/BG8dSDVuTDu5kp05D
2549++3bZIp3EzAkEA6uAwJsCZPtHXlWU3wYZJsA697rUNjPaCQOIaZ/lnh5RUHTmUiw1h
2550++Oj/VORqKB0kXqcDfawwLjZEvh1Xli+H5bQJBANTmhw2TvEPnp/OFTl1UGUvyBmXl
2551++TRMB639qAu07VfVtfYi/4ya1zn/0VmOfTOoigQ5qW9Q1AOu6YNCTQl62L9MCQQDc
2552++YfEsW2kvNYxYJHoVfuBjbuGuOnn1e1Oqd70ZND59S6NFLMMBWlORaVWzWACNZ3rp
2553++kAzSj6HDeqgjD2jsQONdAkEAt7S1YHUn8F760bRn4AnAto2TVOYdArtTP/wYjd4o
2554++9rJREO/d8AYkYJ96APLvF0SZ4n3t1pLwQRsKKN8ZGTmzLA==
2555+ -----END RSA PRIVATE KEY-----
2556+diff -Naur mysql-5.1.50.orig/mysql-test/std_data/server8k-cert.pem mysql-5.1.50/mysql-test/std_data/server8k-cert.pem
2557+--- mysql-5.1.50.orig/mysql-test/std_data/server8k-cert.pem 2010-08-03 13:55:08.000000000 -0400
2558++++ mysql-5.1.50/mysql-test/std_data/server8k-cert.pem 2010-08-27 23:43:00.005366270 -0400
2559+@@ -1,51 +1,69 @@
2560++Certificate:
2561++ Data:
2562++ Version: 3 (0x2)
2563++ Serial Number: 5 (0x5)
2564++ Signature Algorithm: sha1WithRSAEncryption
2565++ Issuer: C=SE, ST=Uppsala, L=Uppsala, O=MySQL AB
2566++ Validity
2567++ Not Before: Feb 20 03:00:54 2010 GMT
2568++ Not After : Sep 3 03:00:54 2030 GMT
2569++ Subject: C=SE, ST=Uppsala, O=MySQL AB, CN=server
2570++ Subject Public Key Info:
2571++ Public Key Algorithm: rsaEncryption
2572++ RSA Public Key: (1024 bit)
2573++ Modulus (1024 bit):
2574++ 00:c5:da:44:95:06:77:16:21:af:a0:c4:3c:e9:f8:
2575++ 1d:2d:95:f9:63:90:8c:3f:86:ba:77:76:4a:52:4b:
2576++ 6b:af:29:f5:1c:aa:d4:3f:3e:42:9f:6d:46:ba:86:
2577++ 90:b1:2d:cc:db:c6:33:15:a3:f4:af:53:33:4f:a1:
2578++ 56:d1:aa:3b:26:10:f7:64:b5:f9:bf:1b:b1:47:8e:
2579++ cc:a6:d6:0d:aa:4a:77:e3:a3:63:9d:2a:dc:65:f4:
2580++ 7f:91:17:38:2d:d6:cd:4e:8d:53:52:97:6e:87:fc:
2581++ 64:60:a6:a1:00:ac:96:6c:e4:42:94:75:17:46:6f:
2582++ 91:b5:dd:06:47:ed:05:e3:db
2583++ Exponent: 65537 (0x10001)
2584++ X509v3 extensions:
2585++ X509v3 Basic Constraints:
2586++ CA:FALSE
2587++ X509v3 Subject Key Identifier:
2588++ 6E:60:3F:29:13:60:99:ED:0C:F7:15:B5:DB:7B:1C:FB:6F:60:19:ED
2589++ X509v3 Authority Key Identifier:
2590++ keyid:B1:FB:7E:77:B5:40:8D:68:11:7E:D9:11:E5:C3:C6:DA:4D:AC:51:B0
2591++ DirName:/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB
2592++ serial:BE:58:AD:4C:1F:3D:25:95
2593++
2594++ Signature Algorithm: sha1WithRSAEncryption
2595++ 63:2e:0f:07:14:06:cf:74:90:3d:37:42:f2:48:70:60:21:bc:
2596++ 34:52:31:f1:87:70:d2:b2:fb:ff:13:38:dc:f0:5e:43:d7:ee:
2597++ a7:c7:1f:ac:aa:d2:8c:4f:fa:3c:4c:73:f6:b6:c2:0c:a0:ea:
2598++ a2:c9:e2:73:61:c3:2e:78:40:0f:2a:d3:63:50:9b:b8:f9:89:
2599++ 40:ed:98:08:97:c3:07:24:17:34:b5:78:89:0a:bb:83:4c:e2:
2600++ 5c:2e:13:d6:21:30:ad:30:48:b5:70:12:ff:4a:6f:42:f0:f8:
2601++ 9f:b1:4b:bd:89:2b:f0:9d:e2:49:2b:35:69:18:1f:76:40:b4:
2602++ 76:bd:cb:dd:27:2f:c0:c1:e2:33:3e:6e:df:68:54:19:92:8a:
2603++ bb:13:9c:cf:d6:17:56:da:bf:0d:64:70:3a:45:b7:aa:5f:e3:
2604++ f5:96:ae:34:f2:17:37:27:d0:4b:e8:30:4a:c0:02:42:e2:d2:
2605++ 30:eb:eb:c7:d7:ec:d8:df:5c:43:58:e2:6f:b7:58:54:0d:c4:
2606++ 01:71:2d:59:8f:44:c7:a1:6c:0b:41:28:fa:b7:63:a7:68:d3:
2607++ 4f:c3:0f:17:9e:b2:32:50:e6:0b:87:3d:e2:39:47:c0:d8:0a:
2608++ 3b:f6:af:50:68:0f:9d:ef:6e:34:0d:3a:07:94:f8:a4:d7:24:
2609++ 86:32:d3:b4
2610+ -----BEGIN CERTIFICATE-----
2611+-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
2659+-/w8pMRr8gEuRqpL2WdJiKGG6lhMHLVFo
2660++MIIDIjCCAgqgAwIBAgIBBTANBgkqhkiG9w0BAQUFADBEMQswCQYDVQQGEwJTRTEQ
2661++MA4GA1UECBMHVXBwc2FsYTEQMA4GA1UEBxMHVXBwc2FsYTERMA8GA1UEChMITXlT
2662++UUwgQUIwHhcNMTAwMjIwMDMwMDU0WhcNMzAwOTAzMDMwMDU0WjBDMQswCQYDVQQG
2663++EwJTRTEQMA4GA1UECBMHVXBwc2FsYTERMA8GA1UEChMITXlTUUwgQUIxDzANBgNV
2664++BAMTBnNlcnZlcjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAxdpElQZ3FiGv
2665++oMQ86fgdLZX5Y5CMP4a6d3ZKUktrryn1HKrUPz5Cn21GuoaQsS3M28YzFaP0r1Mz
2666++T6FW0ao7JhD3ZLX5vxuxR47MptYNqkp346NjnSrcZfR/kRc4LdbNTo1TUpduh/xk
2667++YKahAKyWbORClHUXRm+Rtd0GR+0F49sCAwEAAaOBozCBoDAJBgNVHRMEAjAAMB0G
2668++A1UdDgQWBBRuYD8pE2CZ7Qz3FbXbexz7b2AZ7TB0BgNVHSMEbTBrgBSx+353tUCN
2669++aBF+2RHlw8baTaxRsKFIpEYwRDELMAkGA1UEBhMCU0UxEDAOBgNVBAgTB1VwcHNh
2670++bGExEDAOBgNVBAcTB1VwcHNhbGExETAPBgNVBAoTCE15U1FMIEFCggkAvlitTB89
2671++JZUwDQYJKoZIhvcNAQEFBQADggEBAGMuDwcUBs90kD03QvJIcGAhvDRSMfGHcNKy
2672+++/8TONzwXkPX7qfHH6yq0oxP+jxMc/a2wgyg6qLJ4nNhwy54QA8q02NQm7j5iUDt
2673++mAiXwwckFzS1eIkKu4NM4lwuE9YhMK0wSLVwEv9Kb0Lw+J+xS72JK/Cd4kkrNWkY
2674++H3ZAtHa9y90nL8DB4jM+bt9oVBmSirsTnM/WF1bavw1kcDpFt6pf4/WWrjTyFzcn
2675++0EvoMErAAkLi0jDr68fX7NjfXENY4m+3WFQNxAFxLVmPRMehbAtBKPq3Y6do00/D
2676++DxeesjJQ5guHPeI5R8DYCjv2r1BoD53vbjQNOgeU+KTXJIYy07Q=
2677+ -----END CERTIFICATE-----
2678+diff -Naur mysql-5.1.50.orig/mysql-test/std_data/server8k-key.pem mysql-5.1.50/mysql-test/std_data/server8k-key.pem
2679+--- mysql-5.1.50.orig/mysql-test/std_data/server8k-key.pem 2010-08-03 13:55:08.000000000 -0400
2680++++ mysql-5.1.50/mysql-test/std_data/server8k-key.pem 2010-08-27 23:43:10.165365998 -0400
2681+@@ -1,99 +1,15 @@
2682+ -----BEGIN RSA PRIVATE KEY-----
2683+-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
2793+ -----END RSA PRIVATE KEY-----
2794
2795=== added file 'Percona-Server/packaging/rpm-uln/mysql-install-test.patch'
2796--- Percona-Server/packaging/rpm-uln/mysql-install-test.patch 1970-01-01 00:00:00 +0000
2797+++ Percona-Server/packaging/rpm-uln/mysql-install-test.patch 2013-01-31 20:19:36 +0000
2798@@ -0,0 +1,33 @@
2799+Improve the documentation that will be installed in the mysql-test RPM.
2800+
2801+
2802+diff -Naur mysql-5.1.43.orig/mysql-test/README mysql-5.1.43/mysql-test/README
2803+--- mysql-5.1.43.orig/mysql-test/README 2010-01-15 12:14:43.000000000 -0500
2804++++ mysql-5.1.43/mysql-test/README 2010-02-13 21:18:06.000000000 -0500
2805+@@ -6,6 +6,16 @@
2806+ actually have a co-existing MySQL installation. The tests will not
2807+ conflict with it.
2808+
2809++For use in Red Hat distributions, you should run the script as user mysql,
2810++so the best bet is something like
2811++ cd /usr/share/mysql-test
2812++ sudo -u mysql ./mysql-test-run
2813++This will use the installed mysql executables, but will run a private copy
2814++of the server process (using data files within /usr/share/mysql-test),
2815++so you need not start the mysqld service beforehand.
2816++To clean up afterwards, remove the created "var" subdirectory, eg
2817++ sudo -u mysql rm -rf /usr/share/mysql-test/var
2818++
2819+ All tests must pass. If one or more of them fail on your system, please
2820+ read the following manual section for instructions on how to report the
2821+ problem:
2822+@@ -25,7 +35,8 @@
2823+
2824+ With no test cases named on the command line, mysql-test-run falls back
2825+ to the normal "non-extern" behavior. The reason for this is that some
2826+-tests cannot run with an external server.
2827++tests cannot run with an external server (because they need to control the
2828++options with which the server is started).
2829+
2830+
2831+ You can create your own test cases. To create a test case, create a new
2832
2833=== added file 'Percona-Server/packaging/rpm-uln/mysql-strmov.patch'
2834--- Percona-Server/packaging/rpm-uln/mysql-strmov.patch 1970-01-01 00:00:00 +0000
2835+++ Percona-Server/packaging/rpm-uln/mysql-strmov.patch 2013-01-31 20:19:36 +0000
2836@@ -0,0 +1,32 @@
2837+Remove overly optimistic definition of strmov() as stpcpy().
2838+
2839+mysql uses this macro with overlapping source and destination strings,
2840+which is verboten per spec, and fails on some Red Hat platforms.
2841+Deleting the definition is sufficient to make it fall back to a
2842+byte-at-a-time copy loop, which should consistently give the
2843+expected behavior.
2844+
2845+Note: the particular case that prompted this patch is reported and fixed
2846+at http://bugs.mysql.com/bug.php?id=48864. However, my faith in upstream's
2847+ability to detect this type of error is low, and I also see little evidence
2848+of any real performance gain from optimizing these calls. So I'm keeping
2849+this patch.
2850+
2851+
2852+diff -Naur mysql-5.1.37.orig/include/m_string.h mysql-5.1.37/include/m_string.h
2853+--- mysql-5.1.37.orig/include/m_string.h 2009-07-13 19:08:50.000000000 -0400
2854++++ mysql-5.1.37/include/m_string.h 2009-08-31 21:49:49.000000000 -0400
2855+@@ -81,13 +81,6 @@
2856+ extern void *(*my_str_malloc)(size_t);
2857+ extern void (*my_str_free)(void *);
2858+
2859+-#if defined(HAVE_STPCPY)
2860+-#define strmov(A,B) stpcpy((A),(B))
2861+-#ifndef stpcpy
2862+-extern char *stpcpy(char *, const char *); /* For AIX with gcc 2.95.3 */
2863+-#endif
2864+-#endif
2865+-
2866+ /* Declared in int2str() */
2867+ extern char NEAR _dig_vec_upper[];
2868+ extern char NEAR _dig_vec_lower[];
2869
2870=== added file 'Percona-Server/packaging/rpm-uln/mysql.init'
2871--- Percona-Server/packaging/rpm-uln/mysql.init 1970-01-01 00:00:00 +0000
2872+++ Percona-Server/packaging/rpm-uln/mysql.init 2013-01-31 20:19:36 +0000
2873@@ -0,0 +1,209 @@
2874+#!/bin/sh
2875+#
2876+# mysqld This shell script takes care of starting and stopping
2877+# the MySQL subsystem (mysqld).
2878+#
2879+# chkconfig: - 64 36
2880+# description: MySQL database server.
2881+# processname: mysqld
2882+# config: /etc/my.cnf
2883+# pidfile: /var/run/mysqld/mysqld.pid
2884+
2885+# Source function library.
2886+. /etc/rc.d/init.d/functions
2887+
2888+# Source networking configuration.
2889+. /etc/sysconfig/network
2890+
2891+
2892+exec="/usr/bin/mysqld_safe"
2893+prog="mysqld"
2894+
2895+# Set timeouts here so they can be overridden from /etc/sysconfig/mysqld
2896+STARTTIMEOUT=120
2897+STOPTIMEOUT=60
2898+
2899+[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
2900+
2901+lockfile=/var/lock/subsys/$prog
2902+
2903+
2904+# extract value of a MySQL option from config files
2905+# Usage: get_mysql_option SECTION VARNAME DEFAULT
2906+# result is returned in $result
2907+# We use my_print_defaults which prints all options from multiple files,
2908+# with the more specific ones later; hence take the last match.
2909+get_mysql_option(){
2910+ result=`/usr/bin/my_print_defaults "$1" | sed -n "s/^--$2=//p" | tail -n 1`
2911+ if [ -z "$result" ]; then
2912+ # not found, use default
2913+ result="$3"
2914+ fi
2915+}
2916+
2917+get_mysql_option mysqld datadir "/var/lib/mysql"
2918+datadir="$result"
2919+get_mysql_option mysqld socket "$datadir/mysql.sock"
2920+socketfile="$result"
2921+get_mysql_option mysqld_safe log-error "/var/log/mysqld.log"
2922+errlogfile="$result"
2923+get_mysql_option mysqld_safe pid-file "/var/run/mysqld/mysqld.pid"
2924+mypidfile="$result"
2925+
2926+
2927+start(){
2928+ [ -x $exec ] || exit 5
2929+ # check to see if it's already running
2930+ RESPONSE=`/usr/bin/mysqladmin --socket="$socketfile" --user=UNKNOWN_MYSQL_USER ping 2>&1`
2931+ if [ $? = 0 ]; then
2932+ # already running, do nothing
2933+ action $"Starting $prog: " /bin/true
2934+ ret=0
2935+ elif echo "$RESPONSE" | grep -q "Access denied for user"
2936+ then
2937+ # already running, do nothing
2938+ action $"Starting $prog: " /bin/true
2939+ ret=0
2940+ else
2941+ # prepare for start
2942+ touch "$errlogfile"
2943+ chown mysql:mysql "$errlogfile"
2944+ chmod 0640 "$errlogfile"
2945+ [ -x /sbin/restorecon ] && /sbin/restorecon "$errlogfile"
2946+ if [ ! -d "$datadir/mysql" ] ; then
2947+ # First, make sure $datadir is there with correct permissions
2948+ if [ ! -e "$datadir" -a ! -h "$datadir" ]
2949+ then
2950+ mkdir -p "$datadir" || exit 1
2951+ fi
2952+ chown mysql:mysql "$datadir"
2953+ chmod 0755 "$datadir"
2954+ [ -x /sbin/restorecon ] && /sbin/restorecon "$datadir"
2955+ # Now create the database
2956+ action $"Initializing MySQL database: " /usr/bin/mysql_install_db --datadir="$datadir" --user=mysql
2957+ ret=$?
2958+ chown -R mysql:mysql "$datadir"
2959+ if [ $ret -ne 0 ] ; then
2960+ return $ret
2961+ fi
2962+ fi
2963+ chown mysql:mysql "$datadir"
2964+ chmod 0755 "$datadir"
2965+ # Pass all the options determined above, to ensure consistent behavior.
2966+ # In many cases mysqld_safe would arrive at the same conclusions anyway
2967+ # but we need to be sure. (An exception is that we don't force the
2968+ # log-error setting, since this script doesn't really depend on that,
2969+ # and some users might prefer to configure logging to syslog.)
2970+ # Note: set --basedir to prevent probes that might trigger SELinux
2971+ # alarms, per bug #547485
2972+ $exec --datadir="$datadir" --socket="$socketfile" \
2973+ --pid-file="$mypidfile" \
2974+ --basedir=/usr --user=mysql >/dev/null 2>&1 &
2975+ safe_pid=$!
2976+ # Spin for a maximum of N seconds waiting for the server to come up;
2977+ # exit the loop immediately if mysqld_safe process disappears.
2978+ # Rather than assuming we know a valid username, accept an "access
2979+ # denied" response as meaning the server is functioning.
2980+ ret=0
2981+ TIMEOUT="$STARTTIMEOUT"
2982+ while [ $TIMEOUT -gt 0 ]; do
2983+ RESPONSE=`/usr/bin/mysqladmin --socket="$socketfile" --user=UNKNOWN_MYSQL_USER ping 2>&1` && break
2984+ echo "$RESPONSE" | grep -q "Access denied for user" && break
2985+ if ! /bin/kill -0 $safe_pid 2>/dev/null; then
2986+ echo "MySQL Daemon failed to start."
2987+ ret=1
2988+ break
2989+ fi
2990+ sleep 1
2991+ let TIMEOUT=${TIMEOUT}-1
2992+ done
2993+ if [ $TIMEOUT -eq 0 ]; then
2994+ echo "Timeout error occurred trying to start MySQL Daemon."
2995+ ret=1
2996+ fi
2997+ if [ $ret -eq 0 ]; then
2998+ action $"Starting $prog: " /bin/true
2999+ touch $lockfile
3000+ else
3001+ action $"Starting $prog: " /bin/false
3002+ fi
3003+ fi
3004+ return $ret
3005+}
3006+
3007+stop(){
3008+ if [ ! -f "$mypidfile" ]; then
3009+ # not running; per LSB standards this is "ok"
3010+ action $"Stopping $prog: " /bin/true
3011+ return 0
3012+ fi
3013+ MYSQLPID=`cat "$mypidfile"`
3014+ if [ -n "$MYSQLPID" ]; then
3015+ /bin/kill "$MYSQLPID" >/dev/null 2>&1
3016+ ret=$?
3017+ if [ $ret -eq 0 ]; then
3018+ TIMEOUT="$STOPTIMEOUT"
3019+ while [ $TIMEOUT -gt 0 ]; do
3020+ /bin/kill -0 "$MYSQLPID" >/dev/null 2>&1 || break
3021+ sleep 1
3022+ let TIMEOUT=${TIMEOUT}-1
3023+ done
3024+ if [ $TIMEOUT -eq 0 ]; then
3025+ echo "Timeout error occurred trying to stop MySQL Daemon."
3026+ ret=1
3027+ action $"Stopping $prog: " /bin/false
3028+ else
3029+ rm -f $lockfile
3030+ rm -f "$socketfile"
3031+ action $"Stopping $prog: " /bin/true
3032+ fi
3033+ else
3034+ action $"Stopping $prog: " /bin/false
3035+ fi
3036+ else
3037+ # failed to read pidfile, probably insufficient permissions
3038+ action $"Stopping $prog: " /bin/false
3039+ ret=4
3040+ fi
3041+ return $ret
3042+}
3043+
3044+restart(){
3045+ stop
3046+ start
3047+}
3048+
3049+condrestart(){
3050+ [ -e $lockfile ] && restart || :
3051+}
3052+
3053+
3054+# See how we were called.
3055+case "$1" in
3056+ start)
3057+ start
3058+ ;;
3059+ stop)
3060+ stop
3061+ ;;
3062+ status)
3063+ status -p "$mypidfile" $prog
3064+ ;;
3065+ restart)
3066+ restart
3067+ ;;
3068+ condrestart|try-restart)
3069+ condrestart
3070+ ;;
3071+ reload)
3072+ exit 3
3073+ ;;
3074+ force-reload)
3075+ restart
3076+ ;;
3077+ *)
3078+ echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
3079+ exit 2
3080+esac
3081+
3082+exit $?
3083
3084=== added file 'Percona-Server/packaging/rpm-uln/mysql.spec.sh'
3085--- Percona-Server/packaging/rpm-uln/mysql.spec.sh 1970-01-01 00:00:00 +0000
3086+++ Percona-Server/packaging/rpm-uln/mysql.spec.sh 2013-01-31 20:19:36 +0000
3087@@ -0,0 +1,1959 @@
3088+#
3089+# This file was modified by Oracle in 2011 and later.
3090+# Details of the modifications are described in the "changelog" section.
3091+#
3092+# Modifications copyright (c) 2011, 2012, Oracle and/or its
3093+# affiliates. All rights reserved.
3094+#
3095+# This program is free software; you can redistribute it and/or modify
3096+# it under the terms of the GNU General Public License as published by
3097+# the Free Software Foundation; version 2 of the License.
3098+#
3099+# This program is distributed in the hope that it will be useful,
3100+# but WITHOUT ANY WARRANTY; without even the implied warranty of
3101+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3102+# GNU General Public License for more details.
3103+#
3104+# You should have received a copy of the GNU General Public License
3105+# along with this program; see the file COPYING. If not, write to the
3106+# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston
3107+# MA 02110-1301 USA.
3108+
3109+##############################################################################
3110+# Some common macro definitions
3111+##############################################################################
3112+
3113+# NOTE: "vendor" is used in upgrade/downgrade check, so you can't
3114+# change these, has to be exactly as is.
3115+# %define mysql_old_vendor MySQL AB # Applies to traditional MySQL RPMs only.
3116+# %define mysql_vendor_2 Sun Microsystems, Inc.
3117+%define mysql_vendor Oracle and/or its affiliates
3118+
3119+%define mysql_version @VERSION@
3120+
3121+%define mysqldatadir /var/lib/mysql
3122+
3123+%define release 1
3124+
3125+##############################################################################
3126+# Command line handling
3127+##############################################################################
3128+#
3129+# To set options:
3130+#
3131+# $ rpmbuild --define="option <x>" ...
3132+#
3133+
3134+# ----------------------------------------------------------------------------
3135+# Commercial builds
3136+# ----------------------------------------------------------------------------
3137+%if %{undefined commercial}
3138+%define commercial 0
3139+%endif
3140+
3141+# ----------------------------------------------------------------------------
3142+# Source name
3143+# ----------------------------------------------------------------------------
3144+%if %{undefined src_base}
3145+%define src_base mysql
3146+%endif
3147+%define src_dir %{src_base}-%{mysql_version}
3148+
3149+# ----------------------------------------------------------------------------
3150+# Feature set (storage engines, options). Default to community (everything)
3151+# ----------------------------------------------------------------------------
3152+%if %{undefined feature_set}
3153+%define feature_set community
3154+%endif
3155+
3156+# ----------------------------------------------------------------------------
3157+# Server comment strings
3158+# ----------------------------------------------------------------------------
3159+%if %{undefined compilation_comment_debug}
3160+%define compilation_comment_debug MySQL Community Server - Debug (GPL)
3161+%endif
3162+%if %{undefined compilation_comment_release}
3163+%define compilation_comment_release MySQL Community Server (GPL)
3164+%endif
3165+
3166+# ----------------------------------------------------------------------------
3167+# Product and server suffixes
3168+# ----------------------------------------------------------------------------
3169+%if %{undefined product_suffix}
3170+ %if %{defined short_product_tag}
3171+ %define product_suffix -%{short_product_tag}
3172+ %else
3173+ %define product_suffix %{nil}
3174+ %endif
3175+%endif
3176+
3177+%if %{undefined server_suffix}
3178+%define server_suffix %{nil}
3179+%endif
3180+
3181+# ----------------------------------------------------------------------------
3182+# Distribution support
3183+# ----------------------------------------------------------------------------
3184+%if %{undefined distro_specific}
3185+%define distro_specific 0
3186+%endif
3187+%if %{distro_specific}
3188+ %if %(test -f /etc/oracle-release && echo 1 || echo 0)
3189+ %define elver %(rpm -qf --qf '%%{version}\\n' /etc/oracle-release | sed -e 's/^\\([0-9]*\\).*/\\1/g')
3190+ %if "%elver" == "6"
3191+ %define distro_description Oracle Linux 6
3192+ %define distro_releasetag el6
3193+ %define distro_buildreq gcc-c++ ncurses-devel perl readline-devel time zlib-devel
3194+ %define distro_requires chkconfig coreutils grep procps shadow-utils net-tools
3195+ %else
3196+ %{error:Oracle Linux %{elver} is unsupported}
3197+ %endif
3198+ %else
3199+ %if %(test -f /etc/redhat-release && echo 1 || echo 0)
3200+ %define rhelver %(rpm -qf --qf '%%{version}\\n' /etc/redhat-release | sed -e 's/^\\([0-9]*\\).*/\\1/g')
3201+ %if "%rhelver" == "5"
3202+ %define distro_description Red Hat Enterprise Linux 5
3203+ %define distro_releasetag rhel5
3204+ %define distro_buildreq gcc-c++ gperf ncurses-devel perl readline-devel time zlib-devel
3205+ %define distro_requires chkconfig coreutils grep procps shadow-utils net-tools
3206+ %else
3207+ %if "%rhelver" == "6"
3208+ %define distro_description Red Hat Enterprise Linux 6
3209+ %define distro_releasetag rhel6
3210+ %define distro_buildreq gcc-c++ ncurses-devel perl readline-devel time zlib-devel
3211+ %define distro_requires chkconfig coreutils grep procps shadow-utils net-tools
3212+ %else
3213+ %{error:Red Hat Enterprise Linux %{rhelver} is unsupported}
3214+ %endif
3215+ %endif
3216+ %else
3217+ %if %(test -f /etc/SuSE-release && echo 1 || echo 0)
3218+ %define susever %(rpm -qf --qf '%%{version}\\n' /etc/SuSE-release | cut -d. -f1)
3219+ %if "%susever" == "10"
3220+ %define distro_description SUSE Linux Enterprise Server 10
3221+ %define distro_releasetag sles10
3222+ %define distro_buildreq gcc-c++ gdbm-devel gperf ncurses-devel openldap2-client readline-devel zlib-devel
3223+ %define distro_requires aaa_base coreutils grep procps pwdutils
3224+ %else
3225+ %if "%susever" == "11"
3226+ %define distro_description SUSE Linux Enterprise Server 11
3227+ %define distro_releasetag sles11
3228+ %define distro_buildreq gcc-c++ gdbm-devel gperf ncurses-devel openldap2-client procps pwdutils readline-devel zlib-devel
3229+ %define distro_requires aaa_base coreutils grep procps pwdutils
3230+ %else
3231+ %{error:SuSE %{susever} is unsupported}
3232+ %endif
3233+ %endif
3234+ %else
3235+ %{error:Unsupported distribution}
3236+ %endif
3237+ %endif
3238+ %endif
3239+%else
3240+ %define generic_kernel %(uname -r | cut -d. -f1-2)
3241+ %define distro_description Generic Linux (kernel %{generic_kernel})
3242+ %define distro_releasetag linux%{generic_kernel}
3243+ %define distro_buildreq gcc-c++ gperf ncurses-devel perl readline-devel time zlib-devel
3244+ %define distro_requires coreutils grep procps /sbin/chkconfig /usr/sbin/useradd /usr/sbin/groupadd
3245+%endif
3246+
3247+# Avoid debuginfo RPMs, leaves binaries unstripped
3248+%define debug_package %{nil}
3249+
3250+# Hack to work around bug in RHEL5 __os_install_post macro, wrong inverted
3251+# test for __debug_package
3252+%define __strip /bin/true
3253+
3254+# ----------------------------------------------------------------------------
3255+# Support optional "tcmalloc" library (experimental)
3256+# ----------------------------------------------------------------------------
3257+%if %{defined malloc_lib_target}
3258+%define WITH_TCMALLOC 1
3259+%else
3260+%define WITH_TCMALLOC 0
3261+%endif
3262+
3263+##############################################################################
3264+# Configuration based upon above user input, not to be set directly
3265+##############################################################################
3266+
3267+%if %{commercial}
3268+%define license_files_server %{src_dir}/LICENSE.mysql
3269+%define license_type Commercial
3270+%else
3271+%define license_files_server %{src_dir}/COPYING %{src_dir}/README
3272+%define license_type GPL
3273+%endif
3274+
3275+##############################################################################
3276+# Main spec file section
3277+##############################################################################
3278+
3279+Name: mysql%{product_suffix}
3280+Summary: MySQL client programs and shared libraries
3281+Group: Applications/Databases
3282+Version: @MYSQL_RPM_VERSION@
3283+Release: %{release}%{?distro_releasetag:.%{distro_releasetag}}
3284+# exceptions allow client libraries to be linked with most open source SW,
3285+# not only GPL code.
3286+License: Copyright (c) 2000, @MYSQL_COPYRIGHT_YEAR@, %{mysql_vendor}. All rights reserved. Under %{license_type} license as shown in the Description field.
3287+URL: http://www.mysql.com/
3288+Packager: MySQL Release Engineering <mysql-build@oss.oracle.com>
3289+Vendor: %{mysql_vendor}
3290+
3291+# Regression tests may take a long time, override the default to skip them
3292+%{!?runselftest:%global runselftest 1}
3293+
3294+# Upstream has a mirror redirector for downloads, so the URL is hard to
3295+# represent statically. You can get the tarball by following a link from
3296+# http://dev.mysql.com/downloads/mysql/
3297+Source0: %{src_dir}.tar.gz
3298+# The upstream tarball includes non-free documentation that only the
3299+# copyright holder (MySQL -> Sun -> Oracle) may ship.
3300+# To remove the non-free documentation, run this script after downloading
3301+# the tarball into the current directory:
3302+# ./generate-tarball.sh $VERSION
3303+# Then, source name changes:
3304+# Source0: mysql-%{version}-nodocs.tar.gz
3305+%if %{commercial}
3306+NoSource: 0
3307+%endif
3308+Source1: generate-tarball.sh
3309+Source2: mysql.init
3310+Source3: my.cnf
3311+Source4: scriptstub.c
3312+Source5: my_config.h
3313+# The below is only needed for packages built outside MySQL -> Sun -> Oracle:
3314+Source6: README.mysql-docs
3315+Source9: mysql-embedded-check.c
3316+# Working around perl dependency checking bug in rpm FTTB. Remove later.
3317+Source999: filter-requires-mysql.sh
3318+
3319+# Patch1: mysql-ssl-multilib.patch Not needed by MySQL (yaSSL), will not work in 5.5 (cmake)
3320+Patch2: mysql-5.5-errno.patch
3321+Patch4: mysql-5.5-testing.patch
3322+Patch5: mysql-install-test.patch
3323+Patch6: mysql-5.5-stack-guard.patch
3324+# Patch7: mysql-disable-test.patch Already fixed in current 5.1
3325+# Patch8: mysql-setschedparam.patch Will not work in 5.5 (cmake)
3326+# Patch9: mysql-no-docs.patch Will not work in 5.5 (cmake)
3327+Patch10: mysql-strmov.patch
3328+ # Not used by MySQL
3329+# Patch12: mysql-cve-2008-7247.patch Already fixed in 5.5
3330+Patch13: mysql-expired-certs.patch
3331+ # Will not be used by MySQL
3332+# Patch14: mysql-missing-string-code.patch Undecided, will not work in 5.5 (cmake)
3333+# Patch15: mysql-lowercase-bug.patch Fixed in MySQL 5.1.54 and 5.5.9
3334+Patch16: mysql-chain-certs.patch
3335+Patch17: mysql-5.5-libdir.patch
3336+Patch18: mysql-5.5-fix-tests.patch
3337+Patch19: mysql-5.5-mtr1.patch
3338+
3339+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
3340+BuildRequires: %{distro_buildreq}
3341+BuildRequires: gawk
3342+# make test requires time and ps
3343+BuildRequires: procps
3344+# Socket and Time::HiRes are needed to run regression tests
3345+BuildRequires: perl(Socket), perl(Time::HiRes)
3346+
3347+Requires: %{distro_requires}
3348+Requires: fileutils
3349+Requires: mysql-libs%{product_suffix} = %{version}-%{release}
3350+Requires: bash
3351+
3352+# If %%{product_suffix} is non-empty, the auto-generated capability is insufficient:
3353+# We want all dependency handling to use the generic name only.
3354+# Similar in other sub-packages
3355+Provides: mysql
3356+
3357+# MySQL (with caps) is upstream's spelling of their own RPMs for mysql
3358+Conflicts: MySQL
3359+# mysql-cluster used to be built from this SRPM, but no more
3360+Obsoletes: mysql-cluster < 5.1.44
3361+# We need cross-product "Obsoletes:" to allow cross-product upgrades:
3362+Obsoletes: mysql mysql-advanced
3363+
3364+# Working around perl dependency checking bug in rpm FTTB. Remove later.
3365+%global __perl_requires %{SOURCE999}
3366+
3367+%description -n mysql%{product_suffix}
3368+MySQL is a multi-user, multi-threaded SQL database server. MySQL is a
3369+client/server implementation consisting of a server daemon (mysqld)
3370+and many different client programs and libraries. The base package
3371+contains the standard MySQL client programs and generic MySQL files.
3372+
3373+The MySQL software has Dual Licensing, which means you can use the MySQL
3374+software free of charge under the GNU General Public License
3375+(http://www.gnu.org/licenses/). You can also purchase commercial MySQL
3376+licenses from %{mysql_vendor} if you do not wish to be bound by the terms of
3377+the GPL. See the chapter "Licensing and Support" in the manual for
3378+further info.
3379+
3380+%package -n mysql-libs%{product_suffix}
3381+
3382+Summary: The shared libraries required for MySQL clients
3383+Group: Applications/Databases
3384+Requires: /sbin/ldconfig
3385+Provides: mysql-libs
3386+Obsoletes: mysql-libs mysql-libs-advanced
3387+
3388+%description -n mysql-libs%{product_suffix}
3389+The mysql-libs package provides the essential shared libraries for any
3390+MySQL client program or interface. You will need to install this package
3391+to use any other MySQL package or any clients that need to connect to a
3392+MySQL server.
3393+
3394+%package -n mysql-server%{product_suffix}
3395+
3396+Summary: The MySQL server and related files
3397+Group: Applications/Databases
3398+Requires: mysql%{product_suffix} = %{version}-%{release}
3399+Requires: sh-utils
3400+Requires(pre): /usr/sbin/useradd
3401+Requires(post): chkconfig
3402+Requires(preun): chkconfig
3403+# This is for /sbin/service
3404+Requires(preun): initscripts
3405+Requires(postun): initscripts
3406+# mysqlhotcopy needs DBI/DBD support
3407+Requires: perl-DBI, perl-DBD-MySQL
3408+Provides: mysql-server
3409+Conflicts: MySQL-server
3410+Obsoletes: mysql-server mysql-server-advanced
3411+
3412+%description -n mysql-server%{product_suffix}
3413+MySQL is a multi-user, multi-threaded SQL database server. MySQL is a
3414+client/server implementation consisting of a server daemon (mysqld)
3415+and many different client programs and libraries. This package contains
3416+the MySQL server and some accompanying files and directories.
3417+
3418+%package -n mysql-devel%{product_suffix}
3419+
3420+Summary: Files for development of MySQL applications
3421+Group: Applications/Databases
3422+Requires: mysql%{product_suffix} = %{version}-%{release}
3423+Requires: openssl-devel
3424+Provides: mysql-devel
3425+Conflicts: MySQL-devel
3426+Obsoletes: mysql-devel mysql-devel-advanced
3427+
3428+%description -n mysql-devel%{product_suffix}
3429+MySQL is a multi-user, multi-threaded SQL database server. This
3430+package contains the libraries and header files that are needed for
3431+developing MySQL client applications.
3432+
3433+%package -n mysql-embedded%{product_suffix}
3434+
3435+Summary: MySQL as an embeddable library
3436+Group: Applications/Databases
3437+Provides: mysql-embedded
3438+Obsoletes: mysql-embedded mysql-embedded-advanced
3439+
3440+%description -n mysql-embedded%{product_suffix}
3441+MySQL is a multi-user, multi-threaded SQL database server. This
3442+package contains a version of the MySQL server that can be embedded
3443+into a client application instead of running as a separate process,
3444+as well as a command line client with such an embedded server.
3445+
3446+%package -n mysql-embedded-devel%{product_suffix}
3447+
3448+Summary: Development files for MySQL as an embeddable library
3449+Group: Applications/Databases
3450+Requires: mysql-embedded%{product_suffix} = %{version}-%{release}
3451+Requires: mysql-devel%{product_suffix} = %{version}-%{release}
3452+Provides: mysql-embedded-devel
3453+Obsoletes: mysql-embedded-devel mysql-embedded-devel-advanced
3454+
3455+%description -n mysql-embedded-devel%{product_suffix}
3456+MySQL is a multi-user, multi-threaded SQL database server. This
3457+package contains files needed for developing and testing with
3458+the embedded version of the MySQL server.
3459+
3460+%package -n mysql-test%{product_suffix}
3461+
3462+Summary: The test suite distributed with MySQL
3463+Group: Applications/Databases
3464+Requires: mysql%{product_suffix} = %{version}-%{release}
3465+Requires: mysql-server%{product_suffix} = %{version}-%{release}
3466+Provides: mysql-test
3467+Conflicts: MySQL-test
3468+Obsoletes: mysql-test mysql-test-advanced
3469+
3470+%description -n mysql-test%{product_suffix}
3471+MySQL is a multi-user, multi-threaded SQL database server. This
3472+package contains the regression test suite distributed with
3473+the MySQL sources.
3474+
3475+%prep
3476+%setup -T -a 0 -c -n %{src_dir}
3477+
3478+cd %{src_dir} # read about "%setup -n"
3479+# %patch1 -p1
3480+%patch2 -p1
3481+# %patch4 -p1 TODO / FIXME: if wanted, needs to be adapted to new mysql-test-run setup
3482+%patch5 -p1
3483+%patch6 -p1
3484+# %patch8 -p1
3485+# %patch9 -p1
3486+# %patch10 -p1
3487+# %patch13 -p1
3488+# %patch14 -p1
3489+%patch16 -p1
3490+%patch17 -p1
3491+%patch18 -p1
3492+%patch19 -p1
3493+
3494+# workaround for upstream bug #56342
3495+rm -f mysql-test/t/ssl_8k_key-master.opt
3496+
3497+%build
3498+
3499+# Fail quickly and obviously if user tries to build as root
3500+%if %runselftest
3501+ if [ x"`id -u`" = x0 ]; then
3502+ echo "The MySQL regression tests may fail if run as root."
3503+ echo "If you really need to build the RPM as root, use"
3504+ echo "--define='runselftest 0' to skip the regression tests."
3505+ exit 1
3506+ fi
3507+%endif
3508+
3509+# Be strict about variables, bail at earliest opportunity, etc.
3510+set -eu
3511+
3512+# Optional package files
3513+touch optional-files-devel
3514+
3515+#
3516+# Set environment in order of preference, MYSQL_BUILD_* first, then variable
3517+# name, finally a default. RPM_OPT_FLAGS is assumed to be a part of the
3518+# default RPM build environment.
3519+#
3520+# We set CXX=gcc by default to support so-called 'generic' binaries, where we
3521+# do not have a dependancy on libgcc/libstdc++. This only works while we do
3522+# not require C++ features such as exceptions, and may need to be removed at
3523+# a later date.
3524+#
3525+
3526+# This is a hack, $RPM_OPT_FLAGS on ia64 hosts contains flags which break
3527+# the compile in cmd-line-utils/readline - needs investigation, but for now
3528+# we simply unset it and use those specified directly in cmake.
3529+%if "%{_arch}" == "ia64"
3530+RPM_OPT_FLAGS=
3531+%endif
3532+
3533+# This goes in sync with Patch19. "rm" is faster than "patch" for this.
3534+rm -rf %{src_dir}/mysql-test/lib/v1
3535+
3536+export PATH=${MYSQL_BUILD_PATH:-$PATH}
3537+export CC=${MYSQL_BUILD_CC:-${CC:-gcc}}
3538+export CXX=${MYSQL_BUILD_CXX:-${CXX:-gcc}}
3539+export CFLAGS=${MYSQL_BUILD_CFLAGS:-${CFLAGS:-$RPM_OPT_FLAGS}}
3540+# Following "%ifarch" developed by RedHat, MySQL/Oracle does not support/maintain Linux/Sparc:
3541+# gcc seems to have some bugs on sparc as of 4.4.1, back off optimization
3542+# submitted as bz #529298
3543+%ifarch sparc sparcv9 sparc64
3544+CFLAGS=`echo $CFLAGS| sed -e "s|-O2|-O1|g" `
3545+%endif
3546+export CXXFLAGS=${MYSQL_BUILD_CXXFLAGS:-${CXXFLAGS:-$RPM_OPT_FLAGS -felide-constructors -fno-exceptions -fno-rtti}}
3547+export LDFLAGS=${MYSQL_BUILD_LDFLAGS:-${LDFLAGS:-}}
3548+export CMAKE=${MYSQL_BUILD_CMAKE:-${CMAKE:-cmake}}
3549+export MAKE_JFLAG=${MYSQL_BUILD_MAKE_JFLAG:-%{?_smp_mflags}}
3550+
3551+# Build debug mysqld and libmysqld.a
3552+mkdir debug
3553+(
3554+ cd debug
3555+ # Attempt to remove any optimisation flags from the debug build
3556+ CFLAGS=`echo " ${CFLAGS} " | \
3557+ sed -e 's/ -O[0-9]* / /' \
3558+ -e 's/ -unroll2 / /' \
3559+ -e 's/ -ip / /' \
3560+ -e 's/^ //' \
3561+ -e 's/ $//'`
3562+ CXXFLAGS=`echo " ${CXXFLAGS} " | \
3563+ sed -e 's/ -O[0-9]* / /' \
3564+ -e 's/ -unroll2 / /' \
3565+ -e 's/ -ip / /' \
3566+ -e 's/^ //' \
3567+ -e 's/ $//'`
3568+ # XXX: MYSQL_UNIX_ADDR should be in cmake/* but mysql_version is included before
3569+ # XXX: install_layout so we can't just set it based on INSTALL_LAYOUT=RPM
3570+ ${CMAKE} ../%{src_dir} -DBUILD_CONFIG=mysql_release -DINSTALL_LAYOUT=RPM \
3571+ -DCMAKE_BUILD_TYPE=Debug \
3572+ -DMYSQL_UNIX_ADDR="%{mysqldatadir}/mysql.sock" \
3573+ -DFEATURE_SET="%{feature_set}" \
3574+ -DCOMPILATION_COMMENT="%{compilation_comment_debug}" \
3575+ -DMYSQL_SERVER_SUFFIX="%{server_suffix}"
3576+ echo BEGIN_DEBUG_CONFIG ; egrep '^#define' include/config.h ; echo END_DEBUG_CONFIG
3577+ make ${MAKE_JFLAG} VERBOSE=1
3578+)
3579+# Build full release
3580+mkdir release
3581+(
3582+ cd release
3583+ # XXX: MYSQL_UNIX_ADDR should be in cmake/* but mysql_version is included before
3584+ # XXX: install_layout so we can't just set it based on INSTALL_LAYOUT=RPM
3585+ ${CMAKE} ../%{src_dir} -DBUILD_CONFIG=mysql_release -DINSTALL_LAYOUT=RPM \
3586+ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
3587+ -DMYSQL_UNIX_ADDR="%{mysqldatadir}/mysql.sock" \
3588+ -DFEATURE_SET="%{feature_set}" \
3589+ -DCOMPILATION_COMMENT="%{compilation_comment_release}" \
3590+ -DMYSQL_SERVER_SUFFIX="%{server_suffix}"
3591+ echo BEGIN_NORMAL_CONFIG ; egrep '^#define' include/config.h ; echo END_NORMAL_CONFIG
3592+ make ${MAKE_JFLAG} VERBOSE=1
3593+)
3594+
3595+# TODO / FIXME: Do we need "scriptstub"?
3596+gcc $CFLAGS $LDFLAGS -o scriptstub "-DLIBDIR=\"%{_libdir}/mysql\"" %{SOURCE4}
3597+
3598+# TODO / FIXME: "libmysqld.so" should have been produced above - WORK in PROGRESS
3599+# regular build will make libmysqld.a but not libmysqld.so :-(
3600+cd release
3601+mkdir libmysqld/work
3602+cd libmysqld/work
3603+ar -x ../libmysqld.a
3604+rm rpl_utility.cc.o sql_binlog.cc.o # Try-and-Error: These modules cause unresolved references
3605+gcc $CFLAGS $LDFLAGS -shared -Wl,-soname,libmysqld.so.0 -o libmysqld.so.0.0.1 \
3606+ *.o \
3607+ -lpthread -lcrypt -laio -lnsl -lssl -lcrypto -lz -lrt -lstdc++ -lm -lc
3608+# this is to check that we built a complete library
3609+cp %{SOURCE9} .
3610+ln -s libmysqld.so.0.0.1 libmysqld.so.0
3611+gcc -I../../include -I../../../%{src_dir}/include $CFLAGS mysql-embedded-check.c libmysqld.so.0
3612+LD_LIBRARY_PATH=. ldd ./a.out
3613+cd ../..
3614+cd ..
3615+
3616+# TODO / FIXME: autotools only?
3617+# make check
3618+
3619+# TODO / FIXME: Test suite is run elsewhere in release builds -
3620+# do we need this for users who want to build from source?
3621+# Also, check whether MTR_BUILD_THREAD=auto would solve all issues
3622+%if %runselftest
3623+ # hack to let 32- and 64-bit tests run concurrently on same build machine
3624+ case `uname -m` in
3625+ ppc64 | s390x | x86_64 | sparc64 )
3626+ MTR_BUILD_THREAD=7
3627+ ;;
3628+ *)
3629+ MTR_BUILD_THREAD=11
3630+ ;;
3631+ esac
3632+ export MTR_BUILD_THREAD
3633+
3634+ # if you want to change which tests are run, look at mysql-5.5-testing.patch too.
3635+ (cd release && make test-bt-fast )
3636+%endif
3637+
3638+%install
3639+RBR=$RPM_BUILD_ROOT
3640+MBD=$RPM_BUILD_DIR/%{src_dir}
3641+[ -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
3642+
3643+# Ensure that needed directories exists
3644+# TODO / FIXME: needed ? install -d $RBR%{mysqldatadir}/mysql
3645+# TODO / FIXME: needed ? install -d $RBR%{_datadir}/mysql-test
3646+# TODO / FIXME: needed ? install -d $RBR%{_datadir}/mysql/SELinux/RHEL4
3647+# TODO / FIXME: needed ? install -d $RBR%{_includedir}
3648+# TODO / FIXME: needed ? install -d $RBR%{_libdir}
3649+# TODO / FIXME: needed ? install -d $RBR%{_mandir}
3650+# TODO / FIXME: needed ? install -d $RBR%{_sbindir}
3651+
3652+# Install all binaries
3653+(
3654+ cd $MBD/release
3655+ make DESTDIR=$RBR install
3656+)
3657+
3658+# For gcc builds, include libgcc.a in the devel subpackage (BUG 4921). Do
3659+# this in a sub-shell to ensure we don't pollute the install environment
3660+# with compiler bits.
3661+(
3662+ PATH=${MYSQL_BUILD_PATH:-$PATH}
3663+ CC=${MYSQL_BUILD_CC:-${CC:-gcc}}
3664+ CFLAGS=${MYSQL_BUILD_CFLAGS:-${CFLAGS:-$RPM_OPT_FLAGS}}
3665+ if "${CC}" -v 2>&1 | grep '^gcc.version' >/dev/null 2>&1; then
3666+ libgcc=`${CC} ${CFLAGS} --print-libgcc-file`
3667+ if [ -f ${libgcc} ]; then
3668+ mkdir -p $RBR%{_libdir}/mysql
3669+ install -m 644 ${libgcc} $RBR%{_libdir}/mysql/libmygcc.a
3670+ echo "%{_libdir}/mysql/libmygcc.a" >>optional-files-devel
3671+ fi
3672+ fi
3673+)
3674+
3675+# multilib header hacks
3676+# we only apply this to known Red Hat multilib arches, per bug #181335
3677+case `uname -i` in
3678+ i386 | x86_64 | ppc | ppc64 | s390 | s390x | sparc | sparc64 )
3679+ mv $RPM_BUILD_ROOT/usr/include/mysql/my_config.h $RPM_BUILD_ROOT/usr/include/mysql/my_config_`uname -i`.h
3680+ install -m 644 %{SOURCE5} $RPM_BUILD_ROOT/usr/include/mysql/
3681+ ;;
3682+ *)
3683+ ;;
3684+esac
3685+
3686+mkdir -p $RPM_BUILD_ROOT/var/log
3687+touch $RPM_BUILD_ROOT/var/log/mysqld.log
3688+
3689+# List the installed tree for RPM package maintenance purposes.
3690+find $RPM_BUILD_ROOT -print | sed "s|^$RPM_BUILD_ROOT||" | sort > ROOTFILES
3691+
3692+mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d
3693+mkdir -p $RPM_BUILD_ROOT/var/run/mysqld
3694+install -m 0755 -d $RPM_BUILD_ROOT/var/lib/mysql
3695+install -m 0755 %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysqld
3696+install -m 0644 %{SOURCE3} $RPM_BUILD_ROOT/etc/my.cnf
3697+# obsolete: mv $RPM_BUILD_ROOT/usr/sql-bench $RPM_BUILD_ROOT%{_datadir}/sql-bench # 'sql-bench' is dropped
3698+# obsolete: mv $RPM_BUILD_ROOT/usr/mysql-test $RPM_BUILD_ROOT%{_datadir}/mysql-test # 'mysql-test' is there already
3699+# 5.1.32 forgets to install the mysql-test README file
3700+# obsolete: install -m 0644 mysql-test/README $RPM_BUILD_ROOT%{_datadir}/mysql-test/README # 'README' is there already
3701+
3702+mv ${RPM_BUILD_ROOT}%{_bindir}/mysqlbug ${RPM_BUILD_ROOT}%{_libdir}/mysql/mysqlbug
3703+install -m 0755 scriptstub ${RPM_BUILD_ROOT}%{_bindir}/mysqlbug
3704+mv ${RPM_BUILD_ROOT}%{_bindir}/mysql_config ${RPM_BUILD_ROOT}%{_libdir}/mysql/mysql_config
3705+install -m 0755 scriptstub ${RPM_BUILD_ROOT}%{_bindir}/mysql_config
3706+
3707+rm -f ${RPM_BUILD_ROOT}%{_libdir}/mysql/libmysqld.a
3708+install -m 0755 release/libmysqld/work/libmysqld.so.0.0.1 ${RPM_BUILD_ROOT}%{_libdir}/mysql/libmysqld.so.0.0.1
3709+ln -s libmysqld.so.0.0.1 ${RPM_BUILD_ROOT}%{_libdir}/mysql/libmysqld.so.0
3710+ln -s libmysqld.so.0 ${RPM_BUILD_ROOT}%{_libdir}/mysql/libmysqld.so
3711+
3712+rm -f ${RPM_BUILD_ROOT}%{_bindir}/comp_err
3713+rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/comp_err.1*
3714+rm -f ${RPM_BUILD_ROOT}%{_bindir}/make_win_binary_distribution
3715+rm -f ${RPM_BUILD_ROOT}%{_bindir}/make_win_src_distribution
3716+rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/make_win_bin_dist.1*
3717+rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/make_win_src_distribution.1*
3718+rm -f ${RPM_BUILD_ROOT}%{_libdir}/mysql/libmysqlclient*.la
3719+rm -f ${RPM_BUILD_ROOT}%{_libdir}/mysql/*.a
3720+rm -f ${RPM_BUILD_ROOT}%{_libdir}/mysql/plugin/*.la
3721+rm -f ${RPM_BUILD_ROOT}%{_libdir}/mysql/plugin/*.a
3722+rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/binary-configure
3723+rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/make_binary_distribution
3724+rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/make_sharedlib_distribution
3725+rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/mi_test_all*
3726+rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/ndb-config-2-node.ini
3727+rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/mysql.server
3728+rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/mysqld_multi.server
3729+rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/MySQL-shared-compat.spec
3730+rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/*.plist
3731+rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/preinstall
3732+rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/postinstall
3733+rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/mysql-*.spec
3734+rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/mysql-log-rotate
3735+rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/ChangeLog
3736+rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/mysql-stress-test.pl.1*
3737+rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/mysql-test-run.pl.1*
3738+
3739+mkdir -p $RPM_BUILD_ROOT/etc/ld.so.conf.d
3740+echo "%{_libdir}/mysql" > $RPM_BUILD_ROOT/etc/ld.so.conf.d/%{name}-%{_arch}.conf
3741+
3742+# The below *only* applies to builds not done by MySQL / Sun / Oracle:
3743+# copy additional docs into build tree so %%doc will find them
3744+# cp %{SOURCE6} README.mysql-docs
3745+
3746+%clean
3747+[ -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
3748+
3749+%pre -n mysql-server%{product_suffix}
3750+
3751+# Check if we can safely upgrade. An upgrade is only safe if it's from one
3752+# of our RPMs in the same version family.
3753+
3754+# Handle both ways of spelling the capability.
3755+installed=`rpm -q --whatprovides mysql-server 2> /dev/null`
3756+if [ $? -ne 0 -o -z "$installed" ]; then
3757+ installed=`rpm -q --whatprovides MySQL-server 2> /dev/null`
3758+fi
3759+if [ $? -eq 0 -a -n "$installed" ]; then
3760+ installed=`echo $installed | sed 's/\([^ ]*\) .*/\1/'` # Tests have shown duplicated package names
3761+ vendor=`rpm -q --queryformat='%{VENDOR}' "$installed" 2>&1`
3762+ version=`rpm -q --queryformat='%{VERSION}' "$installed" 2>&1`
3763+ myvendor='%{mysql_vendor}'
3764+ myversion='%{mysql_version}'
3765+
3766+ old_family=`echo $version \
3767+ | sed -n -e 's,^\([1-9][0-9]*\.[0-9][0-9]*\)\..*$,\1,p'`
3768+ new_family=`echo $myversion \
3769+ | sed -n -e 's,^\([1-9][0-9]*\.[0-9][0-9]*\)\..*$,\1,p'`
3770+
3771+ [ -z "$vendor" ] && vendor='<unknown>'
3772+ [ -z "$old_family" ] && old_family="<unrecognized version $version>"
3773+ [ -z "$new_family" ] && new_family="<bad package specification: version $myversion>"
3774+
3775+ error_text=
3776+ if [ "$vendor" != "$myvendor" ]; then
3777+ error_text="$error_text
3778+The current MySQL server package is provided by a different
3779+vendor ($vendor) than $myvendor.
3780+Some files may be installed to different locations, including log
3781+files and the service startup script in %{_sysconfdir}/init.d/.
3782+"
3783+ fi
3784+
3785+ if [ "$old_family" != "$new_family" ]; then
3786+ error_text="$error_text
3787+Upgrading directly from MySQL $old_family to MySQL $new_family may not
3788+be safe in all cases. A manual dump and restore using mysqldump is
3789+recommended. It is important to review the MySQL manual's Upgrading
3790+section for version-specific incompatibilities.
3791+"
3792+ fi
3793+
3794+ if [ -n "$error_text" ]; then
3795+ cat <<HERE >&2
3796+
3797+******************************************************************
3798+A MySQL server package ($installed) is installed.
3799+$error_text
3800+A manual upgrade is required.
3801+
3802+- Ensure that you have a complete, working backup of your data and my.cnf
3803+ files
3804+- Shut down the MySQL server cleanly
3805+- Remove the existing MySQL packages. Usually this command will
3806+ list the packages you should remove:
3807+ rpm -qa | grep -i '^mysql-'
3808+
3809+ You may choose to use 'rpm --nodeps -ev <package-name>' to remove
3810+ the package which contains the mysqlclient shared library. The
3811+ library will be reinstalled by the MySQL-shared-compat package.
3812+- Install the new MySQL packages supplied by $myvendor
3813+- Ensure that the MySQL server is started
3814+- Run the 'mysql_upgrade' program
3815+
3816+This is a brief description of the upgrade process. Important details
3817+can be found in the MySQL manual, in the Upgrading section.
3818+******************************************************************
3819+HERE
3820+ exit 1
3821+ fi
3822+fi
3823+
3824+/usr/sbin/groupadd -g 27 -o -r mysql >/dev/null 2>&1 || :
3825+/usr/sbin/useradd -M -N -g mysql -o -r -d /var/lib/mysql -s /bin/bash \
3826+ -c "MySQL Server" -u 27 mysql >/dev/null 2>&1 || :
3827+
3828+%post -n mysql-libs%{product_suffix}
3829+/sbin/ldconfig
3830+
3831+%post -n mysql-server%{product_suffix}
3832+if [ $1 = 1 ]; then
3833+ /sbin/chkconfig --add mysqld
3834+fi
3835+/bin/chmod 0755 /var/lib/mysql
3836+/bin/touch /var/log/mysqld.log
3837+
3838+%preun -n mysql-server%{product_suffix}
3839+if [ $1 = 0 ]; then
3840+ /sbin/service mysqld stop >/dev/null 2>&1
3841+ /sbin/chkconfig --del mysqld
3842+fi
3843+
3844+%postun -n mysql-libs%{product_suffix}
3845+if [ $1 = 0 ] ; then
3846+ /sbin/ldconfig
3847+fi
3848+
3849+%postun -n mysql-server%{product_suffix}
3850+if [ $1 -ge 1 ]; then
3851+ /sbin/service mysqld condrestart >/dev/null 2>&1 || :
3852+fi
3853+
3854+
3855+%files -n mysql%{product_suffix}
3856+%defattr(-,root,root)
3857+%doc %{license_files_server}
3858+
3859+# The below file *only* applies to builds not done by MySQL / Sun / Oracle:
3860+# %doc README.mysql-docs
3861+
3862+%{_bindir}/msql2mysql
3863+%{_bindir}/mysql
3864+%{_bindir}/mysql_config
3865+%{_bindir}/mysql_find_rows
3866+%{_bindir}/mysql_waitpid
3867+%{_bindir}/mysqlaccess
3868+%{_bindir}/mysqlaccess.conf
3869+%{_bindir}/mysqladmin
3870+%{_bindir}/mysqlbinlog
3871+%{_bindir}/mysqlcheck
3872+%{_bindir}/mysqldump
3873+%{_bindir}/mysqlimport
3874+%{_bindir}/mysqlshow
3875+%{_bindir}/mysqlslap
3876+%{_bindir}/my_print_defaults
3877+
3878+%{_mandir}/man1/mysql.1*
3879+%{_mandir}/man1/mysql_config.1*
3880+%{_mandir}/man1/mysql_find_rows.1*
3881+%{_mandir}/man1/mysql_waitpid.1*
3882+%{_mandir}/man1/mysqlaccess.1*
3883+%{_mandir}/man1/mysqladmin.1*
3884+%{_mandir}/man1/mysqldump.1*
3885+%{_mandir}/man1/mysqlshow.1*
3886+%{_mandir}/man1/mysqlslap.1*
3887+%{_mandir}/man1/my_print_defaults.1*
3888+
3889+%{_libdir}/mysql/mysqlbug
3890+%{_libdir}/mysql/mysql_config
3891+
3892+%files -n mysql-libs%{product_suffix}
3893+%defattr(-,root,root)
3894+%doc %{license_files_server}
3895+# although the default my.cnf contains only server settings, we put it in the
3896+# libs package because it can be used for client settings too.
3897+%config(noreplace) /etc/my.cnf
3898+%dir %{_libdir}/mysql
3899+%{_libdir}/mysql/libmysqlclient*.so.*
3900+/etc/ld.so.conf.d/*
3901+
3902+%dir %{_datadir}/mysql
3903+%{_datadir}/mysql/english
3904+%lang(cs) %{_datadir}/mysql/czech
3905+%lang(da) %{_datadir}/mysql/danish
3906+%lang(nl) %{_datadir}/mysql/dutch
3907+%lang(et) %{_datadir}/mysql/estonian
3908+%lang(fr) %{_datadir}/mysql/french
3909+%lang(de) %{_datadir}/mysql/german
3910+%lang(el) %{_datadir}/mysql/greek
3911+%lang(hu) %{_datadir}/mysql/hungarian
3912+%lang(it) %{_datadir}/mysql/italian
3913+%lang(ja) %{_datadir}/mysql/japanese
3914+%lang(ko) %{_datadir}/mysql/korean
3915+%lang(no) %{_datadir}/mysql/norwegian
3916+%lang(no) %{_datadir}/mysql/norwegian-ny
3917+%lang(pl) %{_datadir}/mysql/polish
3918+%lang(pt) %{_datadir}/mysql/portuguese
3919+%lang(ro) %{_datadir}/mysql/romanian
3920+%lang(ru) %{_datadir}/mysql/russian
3921+%lang(sr) %{_datadir}/mysql/serbian
3922+%lang(sk) %{_datadir}/mysql/slovak
3923+%lang(es) %{_datadir}/mysql/spanish
3924+%lang(sv) %{_datadir}/mysql/swedish
3925+%lang(uk) %{_datadir}/mysql/ukrainian
3926+%{_datadir}/mysql/charsets
3927+
3928+%files -n mysql-server%{product_suffix} -f release/support-files/plugins.files
3929+%defattr(-,root,root)
3930+%doc release/support-files/*.cnf
3931+%doc %{_datadir}/info/mysql.info*
3932+%doc %{src_dir}/Docs/ChangeLog
3933+%doc %{src_dir}/Docs/INFO_SRC*
3934+%doc release/Docs/INFO_BIN*
3935+
3936+%{_bindir}/myisamchk
3937+%{_bindir}/myisam_ftdump
3938+%{_bindir}/myisamlog
3939+%{_bindir}/myisampack
3940+%{_bindir}/mysql_convert_table_format
3941+%{_bindir}/mysql_fix_extensions
3942+%{_bindir}/mysql_install_db
3943+%{_bindir}/mysql_plugin
3944+%{_bindir}/mysql_secure_installation
3945+%if %{commercial}
3946+%else
3947+%{_bindir}/mysql_setpermission
3948+%endif
3949+%{_bindir}/mysql_tzinfo_to_sql
3950+%{_bindir}/mysql_upgrade
3951+%{_bindir}/mysql_zap
3952+%{_bindir}/mysqlbug
3953+%{_bindir}/mysqldumpslow
3954+%{_bindir}/mysqld_multi
3955+%{_bindir}/mysqld_safe
3956+%{_bindir}/mysqlhotcopy
3957+%{_bindir}/mysqltest
3958+%{_bindir}/innochecksum
3959+%{_bindir}/perror
3960+%{_bindir}/replace
3961+%{_bindir}/resolve_stack_dump
3962+%{_bindir}/resolveip
3963+
3964+/usr/libexec/mysqld
3965+/usr/libexec/mysqld-debug
3966+%{_libdir}/mysql/plugin/daemon_example.ini
3967+
3968+%if %{WITH_TCMALLOC}
3969+%{_libdir}/mysql/%{malloc_lib_target}
3970+%endif
3971+
3972+# obsolete by "-f release/support-files/plugins.files" above
3973+# %{_libdir}/mysql/plugin
3974+
3975+%{_mandir}/man1/msql2mysql.1*
3976+%{_mandir}/man1/myisamchk.1*
3977+%{_mandir}/man1/myisamlog.1*
3978+%{_mandir}/man1/myisampack.1*
3979+%{_mandir}/man1/mysql_convert_table_format.1*
3980+%{_mandir}/man1/myisam_ftdump.1*
3981+%{_mandir}/man1/mysql.server.1*
3982+%{_mandir}/man1/mysql_fix_extensions.1*
3983+%{_mandir}/man1/mysql_install_db.1*
3984+%{_mandir}/man1/mysql_plugin.1*
3985+%{_mandir}/man1/mysql_secure_installation.1*
3986+%{_mandir}/man1/mysql_upgrade.1*
3987+%{_mandir}/man1/mysql_zap.1*
3988+%{_mandir}/man1/mysqlbug.1*
3989+%{_mandir}/man1/mysqldumpslow.1*
3990+%{_mandir}/man1/mysqlbinlog.1*
3991+%{_mandir}/man1/mysqlcheck.1*
3992+%{_mandir}/man1/mysqld_multi.1*
3993+%{_mandir}/man1/mysqld_safe.1*
3994+%{_mandir}/man1/mysqlhotcopy.1*
3995+%{_mandir}/man1/mysqlimport.1*
3996+%{_mandir}/man1/mysqlman.1*
3997+%if %{commercial}
3998+%else
3999+%{_mandir}/man1/mysql_setpermission.1*
4000+%endif
4001+%{_mandir}/man1/mysqltest.1*
4002+%{_mandir}/man1/innochecksum.1*
4003+%{_mandir}/man1/perror.1*
4004+%{_mandir}/man1/replace.1*
4005+%{_mandir}/man1/resolve_stack_dump.1*
4006+%{_mandir}/man1/resolveip.1*
4007+%{_mandir}/man1/mysql_tzinfo_to_sql.1*
4008+%{_mandir}/man8/mysqld.8*
4009+
4010+%{_datadir}/mysql/errmsg-utf8.txt
4011+%{_datadir}/mysql/fill_help_tables.sql
4012+%{_datadir}/mysql/magic
4013+%{_datadir}/mysql/mysql_system_tables.sql
4014+%{_datadir}/mysql/mysql_system_tables_data.sql
4015+%{_datadir}/mysql/mysql_test_data_timezone.sql
4016+%{_datadir}/mysql/my-*.cnf
4017+%{_datadir}/mysql/config.*.ini
4018+
4019+/etc/rc.d/init.d/mysqld
4020+%attr(0755,mysql,mysql) %dir /var/run/mysqld
4021+%attr(0755,mysql,mysql) %dir /var/lib/mysql
4022+%attr(0640,mysql,mysql) %config(noreplace) %verify(not md5 size mtime) /var/log/mysqld.log
4023+
4024+# TODO / FIXME: Do we need "libmygcc.a"? If yes, append "-f optional-files-devel"
4025+# and fix the "rm -f" list in the "install" section.
4026+%files -n mysql-devel%{product_suffix}
4027+%defattr(-,root,root)
4028+/usr/include/mysql
4029+/usr/share/aclocal/mysql.m4
4030+%{_libdir}/mysql/libmysqlclient*.so
4031+
4032+%files -n mysql-embedded%{product_suffix}
4033+%defattr(-,root,root)
4034+%doc %{license_files_server}
4035+%{_libdir}/mysql/libmysqld.so.*
4036+%{_bindir}/mysql_embedded
4037+
4038+%files -n mysql-embedded-devel%{product_suffix}
4039+%defattr(-,root,root)
4040+%{_libdir}/mysql/libmysqld.so
4041+%{_bindir}/mysql_client_test_embedded
4042+%{_bindir}/mysqltest_embedded
4043+%{_mandir}/man1/mysql_client_test_embedded.1*
4044+%{_mandir}/man1/mysqltest_embedded.1*
4045+
4046+%files -n mysql-test%{product_suffix}
4047+%defattr(-,root,root)
4048+%{_bindir}/mysql_client_test
4049+%attr(-,mysql,mysql) %{_datadir}/mysql-test
4050+
4051+%{_mandir}/man1/mysql_client_test.1*
4052+
4053+%changelog
4054+* Tue Sep 18 2012 Joerg Bruehe <joerg.bruehe@oracle.com>
4055+- Restrict the vendor check to Oracle: There is no history here
4056+ which we have to allow for.
4057+
4058+* Thu Jul 26 2012 Joerg Bruehe <joerg.bruehe@oracle.com>
4059+- Add the vendor and release series checks from the traditional MySQL RPM
4060+ spec file, to protect against errors happening during upgrades.
4061+- Do some code alignment with the traditional MySQL RPM spec file,
4062+ to make synchronous maintenance (and possibly even integration?) easier.
4063+
4064+* Mon Feb 13 2012 Joerg Bruehe <joerg.bruehe@oracle.com>
4065+- Add "Provides:" lines for the generic names of the subpackages,
4066+ independent of "product_suffix".
4067+
4068+* Tue Feb 7 2012 Joerg Bruehe <joerg.bruehe@oracle.com>
4069+- Make "mysql_setpermission" and its man page appear in GPL builds only.
4070+
4071+* Thu Nov 24 2011 Joerg Bruehe <joerg.bruehe@oracle.com>
4072+- Add two patches (#18 + #19) regarding the test suite;
4073+ version 1 of "mysql-test-run.pl" had to go because the auto-detection
4074+ of Perl dependencies does not handle differences between run directory
4075+ and delivery location.
4076+
4077+* Thu Nov 3 2011 Joerg Bruehe <joerg.bruehe@oracle.com>
4078+- Adapt from MySQL 5.1 to 5.5, tested using 5.5.17:
4079+ - Done by the MySQL Build Team at Oracle:
4080+ set as packager, set copyright owner and related info;
4081+ - handle command line options, allowing different configurations, platforms, ...
4082+ - configurations will show up in the file name as "product_suffix",
4083+ - use "-n" for all subpackage specifications,
4084+ - license may be GPL or commercial, mention that in the description,
4085+ the license output and the included license files will vary,
4086+ - commercial is "nosource",
4087+ - improve "requires" listings for different platforms,
4088+ - explicitly use "product_suffix" in the "requires" entries;
4089+ - adapt to 5.5 changes in features and function:
4090+ - remove "mysql-bench" package (files are outdated, not maintained),
4091+ - no InnoDB plugin,
4092+ - the set of plugins will vary by configuration, to control the "server"
4093+ package contents use "-f release/support-files/plugins.files" in the
4094+ "files" section,
4095+ - remove "mysqlmanager", "mysql_fix_privilege_tables",
4096+ - add "mysql_embedded", "mysql-plugin", "mysqlaccess.conf", "magic",
4097+ - "errmsg.txt" is now in UTF8: "errmsg-utf8.txt",
4098+ - adapt patches to changed code where needed, rename these to include "5.5",
4099+ - stop using patches which are not applicable to 5.5;
4100+ - 5.5 uses a different way of building:
4101+ - autotools are replaced by cmake,
4102+ - both a "release" and a "debug" server are built in separate subtrees
4103+ ("out of source"!), this also affects path names in further handling,
4104+ - the debug server is added to the "server" subpackage,
4105+ - add "mysql-5.5-libdir.patch" to handle file placement at user site.
4106+
4107+* Mon Dec 20 2010 Tom Lane <tgl@redhat.com> 5.1.52-1.1
4108+- Update to MySQL 5.1.52, for various fixes described at
4109+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-52.html
4110+ including numerous small security issues
4111+Resolves: #652553
4112+- Sync with current Fedora package; this includes:
4113+- Duplicate COPYING and EXCEPTIONS-CLIENT in -libs and -embedded subpackages,
4114+ to ensure they are available when any subset of mysql RPMs are installed,
4115+ per revised packaging guidelines
4116+- Allow init script's STARTTIMEOUT/STOPTIMEOUT to be overridden from sysconfig
4117+
4118+* Thu Jul 15 2010 Tom Lane <tgl@redhat.com> 5.1.47-4
4119+- Add backported patch for CVE-2010-2008 (upstream bug 53804)
4120+Resolves: #614215
4121+- Add BuildRequires perl(Time::HiRes) ... seems to no longer be installed
4122+ by just pulling in perl.
4123+
4124+* Mon Jun 28 2010 Tom Lane <tgl@redhat.com> 5.1.47-3
4125+- Add -p "$mypidfile" to initscript's status call to improve corner cases.
4126+ (Note: can't be fixed in Fedora until 595597 is fixed there.)
4127+Resolves: #596008
4128+
4129+* Mon Jun 7 2010 Tom Lane <tgl@redhat.com> 5.1.47-2
4130+- Add back "partition" storage engine
4131+Resolves: #598585
4132+- Fix broken "federated" storage engine plugin
4133+Resolves: #587170
4134+- Read all certificates in SSL certificate files, to support chained certs
4135+Resolves: #598656
4136+
4137+* Mon May 24 2010 Tom Lane <tgl@redhat.com> 5.1.47-1
4138+- Update to MySQL 5.1.47, for various fixes described at
4139+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-47.html
4140+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-46.html
4141+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-45.html
4142+ including fixes for CVE-2010-1621, CVE-2010-1626,
4143+ CVE-2010-1848, CVE-2010-1849, CVE-2010-1850
4144+Resolves: #590598
4145+- Create mysql group explicitly in pre-server script, to ensure correct GID
4146+
4147+* Mon Mar 8 2010 Tom Lane <tgl@redhat.com> 5.1.44-2
4148+- Update to MySQL 5.1.44, for various fixes described at
4149+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-44.html
4150+Resolves: #565554
4151+- Remove mysql.info, which is not freely redistributable
4152+Related: #560181
4153+- Revert broken upstream fix for their bug 45058
4154+Related: #566547
4155+- Bring init script into some modicum of compliance with Fedora/LSB standards
4156+Resolves: #557711
4157+Resolves: #562749
4158+
4159+* Mon Feb 15 2010 Tom Lane <tgl@redhat.com> 5.1.43-2
4160+- Update to MySQL 5.1.43, for various fixes described at
4161+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-43.html
4162+Resolves: #565554
4163+- Remove mysql-cluster, which is no longer supported by upstream in this
4164+ source distribution. If we want it we'll need a separate SRPM for it.
4165+Resolves: #565210
4166+
4167+* Fri Jan 29 2010 Tom Lane <tgl@redhat.com> 5.1.42-7
4168+- Add backported patch for CVE-2008-7247 (upstream bug 39277)
4169+Resolves: #549329
4170+- Use non-expired certificates for SSL testing (upstream bug 50702)
4171+
4172+* Tue Jan 26 2010 Tom Lane <tgl@redhat.com> 5.1.42-6
4173+- Emit explicit error message if user tries to build RPM as root
4174+Resolves: #558915
4175+
4176+* Wed Jan 20 2010 Tom Lane <tgl@redhat.com> 5.1.42-5
4177+- Correct Source0: tag and comment to reflect how to get the tarball
4178+
4179+* Fri Jan 8 2010 Tom Lane <tgl@redhat.com> 5.1.42-4
4180+- Sync with current Fedora build, including:
4181+- Update to MySQL 5.1.42, for various fixes described at
4182+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-42.html
4183+- Disable symbolic links by default in /etc/my.cnf
4184+Resolves: #553653
4185+- Remove static libraries (.a files) from package, per packaging guidelines
4186+- Change %%define to %%global, per packaging guidelines
4187+- Disable building the innodb plugin; it tickles assorted gcc bugs and
4188+ doesn't seem entirely ready for prime time anyway.
4189+Resolves: #553632
4190+- Start mysqld_safe with --basedir=/usr, to avoid unwanted SELinux messages
4191+ (see 547485)
4192+- Stop waiting during "service mysqld start" if mysqld_safe exits
4193+Resolves: #544095
4194+
4195+* Mon Nov 23 2009 Tom Lane <tgl@redhat.com> 5.1.41-1
4196+- Update to MySQL 5.1.41, for various fixes described at
4197+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-41.html
4198+ including fixes for CVE-2009-4019
4199+Resolves: #549327
4200+- Don't set old_passwords=1; we aren't being bug-compatible with 3.23 anymore
4201+Resolves: #540735
4202+
4203+* Tue Nov 10 2009 Tom Lane <tgl@redhat.com> 5.1.40-1
4204+- Update to MySQL 5.1.40, for various fixes described at
4205+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-40.html
4206+- Do not force the --log-error setting in mysqld init script
4207+Resolves: #533736
4208+
4209+* Sat Oct 17 2009 Tom Lane <tgl@redhat.com> 5.1.39-4
4210+- Replace kluge fix for ndbd sparc crash with a real fix (mysql bug 48132)
4211+
4212+* Thu Oct 15 2009 Tom Lane <tgl@redhat.com> 5.1.39-3
4213+- Work around two different compiler bugs on sparc, one by backing off
4214+ optimization from -O2 to -O1, and the other with a klugy patch
4215+Related: #529298, #529299
4216+- Clean up bogosity in multilib stub header support: ia64 should not be
4217+ listed (it's not multilib), sparc and sparc64 should be
4218+
4219+* Wed Sep 23 2009 Tom Lane <tgl@redhat.com> 5.1.39-2
4220+- Work around upstream bug 46895 by disabling outfile_loaddata test
4221+
4222+* Tue Sep 22 2009 Tom Lane <tgl@redhat.com> 5.1.39-1
4223+- Update to MySQL 5.1.39, for various fixes described at
4224+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-39.html
4225+
4226+* Mon Aug 31 2009 Tom Lane <tgl@redhat.com> 5.1.37-5
4227+- Work around unportable assumptions about stpcpy(); re-enable main.mysql test
4228+- Clean up some obsolete parameters to the configure script
4229+
4230+* Sat Aug 29 2009 Tom Lane <tgl@redhat.com> 5.1.37-4
4231+- Remove one misguided patch; turns out I was chasing a glibc bug
4232+- Temporarily disable "main.mysql" test; there's something broken there too,
4233+ but we need to get mysql built in rawhide for dependency reasons
4234+
4235+* Fri Aug 21 2009 Tomas Mraz <tmraz@redhat.com> - 5.1.37-3
4236+- rebuilt with new openssl
4237+
4238+* Fri Aug 14 2009 Tom Lane <tgl@redhat.com> 5.1.37-2
4239+- Add a couple of patches to improve the probability of the regression tests
4240+ completing in koji builds
4241+
4242+* Sun Aug 2 2009 Tom Lane <tgl@redhat.com> 5.1.37-1
4243+- Update to MySQL 5.1.37, for various fixes described at
4244+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-37.html
4245+
4246+* Sat Jul 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.1.36-2
4247+- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
4248+
4249+* Fri Jul 10 2009 Tom Lane <tgl@redhat.com> 5.1.36-1
4250+- Update to MySQL 5.1.36, for various fixes described at
4251+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-36.html
4252+
4253+* Sat Jun 6 2009 Tom Lane <tgl@redhat.com> 5.1.35-1
4254+- Update to MySQL 5.1.35, for various fixes described at
4255+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-35.html
4256+- Ensure that /var/lib/mysql is created with the right SELinux context
4257+Resolves: #502966
4258+
4259+* Fri May 15 2009 Tom Lane <tgl@redhat.com> 5.1.34-1
4260+- Update to MySQL 5.1.34, for various fixes described at
4261+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-34.html
4262+- Increase startup timeout per bug #472222
4263+
4264+* Wed Apr 15 2009 Tom Lane <tgl@redhat.com> 5.1.33-2
4265+- Increase stack size of ndbd threads for safety's sake.
4266+Related: #494631
4267+
4268+* Tue Apr 7 2009 Tom Lane <tgl@redhat.com> 5.1.33-1
4269+- Update to MySQL 5.1.33.
4270+- Disable use of pthread_setschedparam; doesn't work the way code expects.
4271+Related: #477624
4272+
4273+* Wed Mar 4 2009 Tom Lane <tgl@redhat.com> 5.1.32-1
4274+- Update to MySQL 5.1.32.
4275+
4276+* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.1.31-2
4277+- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
4278+
4279+* Fri Feb 13 2009 Tom Lane <tgl@redhat.com> 5.1.31-1
4280+- Update to MySQL 5.1.31.
4281+
4282+* Thu Jan 22 2009 Tom Lane <tgl@redhat.com> 5.1.30-2
4283+- hm, apparently --with-innodb and --with-ndbcluster are still needed
4284+ even though no longer documented ...
4285+
4286+* Thu Jan 22 2009 Tom Lane <tgl@redhat.com> 5.1.30-1
4287+- Update to MySQL 5.1.30. Note that this includes an ABI break for
4288+ libmysqlclient (it's now got .so major version 16).
4289+- This also updates mysql for new openssl build
4290+
4291+* Wed Oct 1 2008 Tom Lane <tgl@redhat.com> 5.0.67-2
4292+- Build the "embedded server" library, and package it in a new sub-RPM
4293+ mysql-embedded, along with mysql-embedded-devel for devel support files.
4294+Resolves: #149829
4295+
4296+* Sat Aug 23 2008 Tom Lane <tgl@redhat.com> 5.0.67-1
4297+- Update to mysql version 5.0.67
4298+- Move mysql_config's man page to base package, again (apparently I synced
4299+ that change the wrong way while importing specfile changes for ndbcluster)
4300+
4301+* Sun Jul 27 2008 Tom Lane <tgl@redhat.com> 5.0.51a-2
4302+- Enable ndbcluster support
4303+Resolves: #163758
4304+- Suppress odd crash messages during package build, caused by trying to
4305+ build dbug manual (which we don't install anyway) with dbug disabled
4306+Resolves: #437053
4307+- Improve mysql.init to pass configured datadir to mysql_install_db,
4308+ and to force user=mysql for both mysql_install_db and mysqld_safe.
4309+Related: #450178
4310+
4311+* Mon Mar 3 2008 Tom Lane <tgl@redhat.com> 5.0.51a-1
4312+- Update to mysql version 5.0.51a
4313+
4314+* Mon Mar 3 2008 Tom Lane <tgl@redhat.com> 5.0.45-11
4315+- Fix mysql-stack-guard patch to work correctly on IA64
4316+- Fix mysql.init to wait correctly when socket is not in default place
4317+Related: #435494
4318+
4319+* Mon Mar 03 2008 Dennis Gilmore <dennis@ausil.us> 5.0.45-10
4320+- add sparc64 to 64 bit arches for test suite checking
4321+- add sparc, sparcv9 and sparc64 to multilib handling
4322+
4323+* Thu Feb 28 2008 Tom Lane <tgl@redhat.com> 5.0.45-9
4324+- Fix the stack overflow problem encountered in January. It seems the real
4325+issue is that the buildfarm machines were moved to RHEL5, which uses 64K not
4326+4K pages on PPC, and because RHEL5 takes the guard area out of the requested
4327+thread stack size we no longer had enough headroom.
4328+Related: #435337
4329+
4330+* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 5.0.45-8
4331+- Autorebuild for GCC 4.3
4332+
4333+* Tue Jan 8 2008 Tom Lane <tgl@redhat.com> 5.0.45-7
4334+- Unbelievable ... upstream still thinks that it's a good idea to have a
4335+ regression test that is guaranteed to begin failing come January 1.
4336+- ... and it seems we need to raise STACK_MIN_SIZE again too.
4337+
4338+* Thu Dec 13 2007 Tom Lane <tgl@redhat.com> 5.0.45-6
4339+- Back-port upstream fixes for CVE-2007-5925, CVE-2007-5969, CVE-2007-6303.
4340+Related: #422211
4341+
4342+* Wed Dec 5 2007 Tom Lane <tgl@redhat.com> 5.0.45-5
4343+- Rebuild for new openssl
4344+
4345+* Sat Aug 25 2007 Tom Lane <tgl@redhat.com> 5.0.45-4
4346+- Seems we need explicit BuildRequires on gawk and procps now
4347+- Rebuild to fix Fedora toolchain issues
4348+
4349+* Sun Aug 12 2007 Tom Lane <tgl@redhat.com> 5.0.45-3
4350+- Recent perl changes in rawhide mean we need a more specific BuildRequires
4351+
4352+* Thu Aug 2 2007 Tom Lane <tgl@redhat.com> 5.0.45-2
4353+- Update License tag to match code.
4354+- Work around recent Fedora change that makes "open" a macro name.
4355+
4356+* Sun Jul 22 2007 Tom Lane <tgl@redhat.com> 5.0.45-1
4357+- Update to MySQL 5.0.45
4358+Resolves: #246535
4359+- Move mysql_config's man page to base package
4360+Resolves: #245770
4361+- move my_print_defaults to base RPM, for consistency with Stacks packaging
4362+- mysql user is no longer deleted at RPM uninstall
4363+Resolves: #241912
4364+
4365+* Thu Mar 29 2007 Tom Lane <tgl@redhat.com> 5.0.37-2
4366+- Use a less hacky method of getting default values in initscript
4367+Related: #233771, #194596
4368+- Improve packaging of mysql-libs per suggestions from Remi Collet
4369+Resolves: #233731
4370+- Update default /etc/my.cnf ([mysql.server] has been bogus for a long time)
4371+
4372+* Mon Mar 12 2007 Tom Lane <tgl@redhat.com> 5.0.37-1
4373+- Update to MySQL 5.0.37
4374+Resolves: #231838
4375+- Put client library into a separate mysql-libs RPM to reduce dependencies
4376+Resolves: #205630
4377+
4378+* Fri Feb 9 2007 Tom Lane <tgl@redhat.com> 5.0.33-1
4379+- Update to MySQL 5.0.33
4380+- Install band-aid fix for "view" regression test designed to fail after 2006
4381+- Don't chmod -R the entire database directory tree on every startup
4382+Related: #221085
4383+- Fix unsafe use of install-info
4384+Resolves: #223713
4385+- Cope with new automake in F7
4386+Resolves: #224171
4387+
4388+* Thu Nov 9 2006 Tom Lane <tgl@redhat.com> 5.0.27-1
4389+- Update to MySQL 5.0.27 (see CVE-2006-4031, CVE-2006-4226, CVE-2006-4227)
4390+Resolves: #202247, #202675, #203427, #203428, #203432, #203434, #208641
4391+- Fix init script to return status 1 on server start timeout
4392+Resolves: #203910
4393+- Move mysqldumpslow from base package to mysql-server
4394+Resolves: #193559
4395+- Adjust link options for BDB module
4396+Resolves: #199368
4397+
4398+* Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 5.0.22-2.1
4399+- rebuild
4400+
4401+* Sat Jun 10 2006 Tom Lane <tgl@redhat.com> 5.0.22-2
4402+- Work around brew's tendency not to clean up failed builds completely,
4403+ by adding code in mysql-testing.patch to kill leftover mysql daemons.
4404+
4405+* Thu Jun 8 2006 Tom Lane <tgl@redhat.com> 5.0.22-1
4406+- Update to MySQL 5.0.22 (fixes CVE-2006-2753)
4407+- Install temporary workaround for gcc bug on s390x (bz #193912)
4408+
4409+* Tue May 2 2006 Tom Lane <tgl@redhat.com> 5.0.21-2
4410+- Fix bogus perl Requires for mysql-test
4411+
4412+* Mon May 1 2006 Tom Lane <tgl@redhat.com> 5.0.21-1
4413+- Update to MySQL 5.0.21
4414+
4415+* Mon Mar 27 2006 Tom Lane <tgl@redhat.com> 5.0.18-4
4416+- Modify multilib header hack to not break non-RH arches, per bug #181335
4417+- Remove logrotate script, per bug #180639.
4418+- Add a new mysql-test RPM to carry the regression test files;
4419+ hack up test scripts as needed to make them run in /usr/share/mysql-test.
4420+
4421+* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 5.0.18-2.1
4422+- bump again for double-long bug on ppc(64)
4423+
4424+* Thu Feb 9 2006 Tom Lane <tgl@redhat.com> 5.0.18-2
4425+- err-log option has been renamed to log-error, fix my.cnf and initscript
4426+
4427+* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 5.0.18-1.1
4428+- rebuilt for new gcc4.1 snapshot and glibc changes
4429+
4430+* Thu Jan 5 2006 Tom Lane <tgl@redhat.com> 5.0.18-1
4431+- Update to MySQL 5.0.18
4432+
4433+* Thu Dec 15 2005 Tom Lane <tgl@redhat.com> 5.0.16-4
4434+- fix my_config.h for ppc platforms
4435+
4436+* Thu Dec 15 2005 Tom Lane <tgl@redhat.com> 5.0.16-3
4437+- my_config.h needs to guard against 64-bit platforms that also define the
4438+ 32-bit symbol
4439+
4440+* Wed Dec 14 2005 Tom Lane <tgl@redhat.com> 5.0.16-2
4441+- oops, looks like we want uname -i not uname -m
4442+
4443+* Mon Dec 12 2005 Tom Lane <tgl@redhat.com> 5.0.16-1
4444+- Update to MySQL 5.0.16
4445+- Add EXCEPTIONS-CLIENT license info to the shipped documentation
4446+- Make my_config.h architecture-independent for multilib installs;
4447+ put the original my_config.h into my_config_$ARCH.h
4448+- Add -fwrapv to CFLAGS so that gcc 4.1 doesn't break it
4449+
4450+* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
4451+- rebuilt
4452+
4453+* Mon Nov 14 2005 Tom Lane <tgl@redhat.com> 5.0.15-3
4454+- Make stop script wait for daemon process to disappear (bz#172426)
4455+
4456+* Wed Nov 9 2005 Tom Lane <tgl@redhat.com> 5.0.15-2
4457+- Rebuild due to openssl library update.
4458+
4459+* Thu Nov 3 2005 Tom Lane <tgl@redhat.com> 5.0.15-1
4460+- Update to MySQL 5.0.15 (scratch build for now)
4461+
4462+* Wed Oct 5 2005 Tom Lane <tgl@redhat.com> 4.1.14-1
4463+- Update to MySQL 4.1.14
4464+
4465+* Tue Aug 23 2005 Tom Lane <tgl@redhat.com> 4.1.12-3
4466+- Use politically correct patch name.
4467+
4468+* Tue Jul 12 2005 Tom Lane <tgl@redhat.com> 4.1.12-2
4469+- Fix buffer overflow newly exposed in isam code; it's the same issue
4470+ previously found in myisam, and not very exciting, but I'm tired of
4471+ seeing build warnings.
4472+
4473+* Mon Jul 11 2005 Tom Lane <tgl@redhat.com> 4.1.12-1
4474+- Update to MySQL 4.1.12 (includes a fix for bz#158688, bz#158689)
4475+- Extend mysql-test-ssl.patch to solve rpl_openssl test failure (bz#155850)
4476+- Update mysql-lock-ssl.patch to match the upstream committed version
4477+- Add --with-isam to re-enable the old ISAM table type, per bz#159262
4478+- Add dependency on openssl-devel per bz#159569
4479+- Remove manual.txt, as upstream decided not to ship it anymore;
4480+ it was redundant with the mysql.info file anyway.
4481+
4482+* Mon May 9 2005 Tom Lane <tgl@redhat.com> 4.1.11-4
4483+- Include proper locking for OpenSSL in the server, per bz#155850
4484+
4485+* Mon Apr 25 2005 Tom Lane <tgl@redhat.com> 4.1.11-3
4486+- Enable openssl tests during build, per bz#155850
4487+- Might as well turn on --disable-dependency-tracking
4488+
4489+* Fri Apr 8 2005 Tom Lane <tgl@redhat.com> 4.1.11-2
4490+- Avoid dependency on <asm/atomic.h>, cause it won't build anymore on ia64.
4491+ This is probably a cleaner solution for bz#143537, too.
4492+
4493+* Thu Apr 7 2005 Tom Lane <tgl@redhat.com> 4.1.11-1
4494+- Update to MySQL 4.1.11 to fix bz#152911 as well as other issues
4495+- Move perl-DBI, perl-DBD-MySQL dependencies to server package (bz#154123)
4496+- Override configure thread library test to suppress HAVE_LINUXTHREADS check
4497+- Fix BDB failure on s390x (bz#143537)
4498+- At last we can enable "make test" on all arches
4499+
4500+* Fri Mar 11 2005 Tom Lane <tgl@redhat.com> 4.1.10a-1
4501+- Update to MySQL 4.1.10a to fix security vulnerabilities (bz#150868,
4502+ for CAN-2005-0711, and bz#150871 for CAN-2005-0709, CAN-2005-0710).
4503+
4504+* Sun Mar 6 2005 Tom Lane <tgl@redhat.com> 4.1.10-3
4505+- Fix package Requires: interdependencies.
4506+
4507+* Sat Mar 5 2005 Tom Lane <tgl@redhat.com> 4.1.10-2
4508+- Need -fno-strict-aliasing in at least one place, probably more.
4509+- Work around some C spec violations in mysql.
4510+
4511+* Fri Feb 18 2005 Tom Lane <tgl@redhat.com> 4.1.10-1
4512+- Update to MySQL 4.1.10.
4513+
4514+* Sat Jan 15 2005 Tom Lane <tgl@redhat.com> 4.1.9-1
4515+- Update to MySQL 4.1.9.
4516+
4517+* Wed Jan 12 2005 Tom Lane <tgl@redhat.com> 4.1.7-10
4518+- Don't assume /etc/my.cnf will specify pid-file (bz#143724)
4519+
4520+* Wed Jan 12 2005 Tim Waugh <twaugh@redhat.com> 4.1.7-9
4521+- Rebuilt for new readline.
4522+
4523+* Tue Dec 21 2004 Tom Lane <tgl@redhat.com> 4.1.7-8
4524+- Run make test on all archs except s390x (which seems to have a bdb issue)
4525+
4526+* Mon Dec 13 2004 Tom Lane <tgl@redhat.com> 4.1.7-7
4527+- Suppress someone's silly idea that libtool overhead can be skipped
4528+
4529+* Sun Dec 12 2004 Tom Lane <tgl@redhat.com> 4.1.7-6
4530+- Fix init script to not need a valid username for startup check (bz#142328)
4531+- Fix init script to honor settings appearing in /etc/my.cnf (bz#76051)
4532+- Enable SSL (bz#142032)
4533+
4534+* Thu Dec 2 2004 Tom Lane <tgl@redhat.com> 4.1.7-5
4535+- Add a restorecon to keep the mysql.log file in the right context (bz#143887)
4536+
4537+* Tue Nov 23 2004 Tom Lane <tgl@redhat.com> 4.1.7-4
4538+- Turn off old_passwords in default /etc/my.cnf file, for better compatibility
4539+ with mysql 3.x clients (per suggestion from Joe Orton).
4540+
4541+* Fri Oct 29 2004 Tom Lane <tgl@redhat.com> 4.1.7-3
4542+- Handle ldconfig more cleanly (put a file in /etc/ld.so.conf.d/).
4543+
4544+* Thu Oct 28 2004 Tom Lane <tgl@redhat.com> 4.1.7-2
4545+- rebuild in devel branch
4546+
4547+* Wed Oct 27 2004 Tom Lane <tgl@redhat.com> 4.1.7-1
4548+- Update to MySQL 4.1.x.
4549+
4550+* Tue Oct 12 2004 Tom Lane <tgl@redhat.com> 3.23.58-13
4551+- fix security issues CAN-2004-0835, CAN-2004-0836, CAN-2004-0837
4552+ (bugs #135372, 135375, 135387)
4553+- fix privilege escalation on GRANT ALL ON `Foo\_Bar` (CAN-2004-0957)
4554+
4555+* Wed Oct 06 2004 Tom Lane <tgl@redhat.com> 3.23.58-12
4556+- fix multilib problem with mysqlbug and mysql_config
4557+- adjust chkconfig priority per bug #128852
4558+- remove bogus quoting per bug #129409 (MySQL 4.0 has done likewise)
4559+- add sleep to mysql.init restart(); may or may not fix bug #133993
4560+
4561+* Tue Oct 05 2004 Tom Lane <tgl@redhat.com> 3.23.58-11
4562+- fix low-priority security issues CAN-2004-0388, CAN-2004-0381, CAN-2004-0457
4563+ (bugs #119442, 125991, 130347, 130348)
4564+- fix bug with dropping databases under recent kernels (bug #124352)
4565+
4566+* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com> 3.23.58-10
4567+- rebuilt
4568+
4569+* Sat Apr 17 2004 Warren Togami <wtogami@redhat.com> 3.23.58-9
4570+- remove redundant INSTALL-SOURCE, manual.*
4571+- compress manual.txt.bz2
4572+- BR time
4573+
4574+* Tue Mar 16 2004 Tom Lane <tgl@redhat.com> 3.23.58-8
4575+- repair logfile attributes in %%files, per bug #102190
4576+- repair quoting problem in mysqlhotcopy, per bug #112693
4577+- repair missing flush in mysql_setpermission, per bug #113960
4578+- repair broken error message printf, per bug #115165
4579+- delete mysql user during uninstall, per bug #117017
4580+- rebuilt
4581+
4582+* Tue Mar 02 2004 Elliot Lee <sopwith@redhat.com>
4583+- rebuilt
4584+
4585+* Tue Feb 24 2004 Tom Lane <tgl@redhat.com>
4586+- fix chown syntax in mysql.init
4587+- rebuild
4588+
4589+* Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
4590+- rebuilt
4591+
4592+* Tue Nov 18 2003 Kim Ho <kho@redhat.com> 3.23.58-5
4593+- update mysql.init to use anonymous user (UNKNOWN_MYSQL_USER) for
4594+ pinging mysql server (#108779)
4595+
4596+* Mon Oct 27 2003 Kim Ho <kho@redhat.com> 3.23.58-4
4597+- update mysql.init to wait (max 10 seconds) for mysql server to
4598+ start (#58732)
4599+
4600+* Mon Oct 27 2003 Patrick Macdonald <patrickm@redhat.com> 3.23.58-3
4601+- re-enable Berkeley DB support (#106832)
4602+- re-enable ia64 testing
4603+
4604+* Fri Sep 19 2003 Patrick Macdonald <patrickm@redhat.com> 3.23.58-2
4605+- rebuilt
4606+
4607+* Mon Sep 15 2003 Patrick Macdonald <patrickm@redhat.com> 3.23.58-1
4608+- upgrade to 3.23.58 for security fix
4609+
4610+* Tue Aug 26 2003 Patrick Macdonald <patrickm@redhat.com> 3.23.57-2
4611+- rebuilt
4612+
4613+* Wed Jul 02 2003 Patrick Macdonald <patrickm@redhat.com> 3.23.57-1
4614+- revert to prior version of MySQL due to license incompatibilities
4615+ with packages that link against the client. The MySQL folks are
4616+ looking into the issue.
4617+
4618+* Wed Jun 18 2003 Patrick Macdonald <patrickm@redhat.com> 4.0.13-4
4619+- restrict test on ia64 (temporary)
4620+
4621+* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com> 4.0.13-3
4622+- rebuilt
4623+
4624+* Thu May 29 2003 Patrick Macdonald <patrickm@redhat.com> 4.0.13-2
4625+- fix filter-requires-mysql.sh with less restrictive for mysql-bench
4626+
4627+* Wed May 28 2003 Patrick Macdonald <patrickm@redhat.com> 4.0.13-1
4628+- update for MySQL 4.0
4629+- back-level shared libraries available in mysqlclient10 package
4630+
4631+* Fri May 09 2003 Patrick Macdonald <patrickm@redhat.com> 3.23.56-2
4632+- add sql-bench package (#90110)
4633+
4634+* Wed Mar 19 2003 Patrick Macdonald <patrickm@redhat.com> 3.23.56-1
4635+- upgrade to 3.23.56 for security fixes
4636+- remove patch for double-free (included in 3.23.56)
4637+
4638+* Tue Feb 18 2003 Patrick Macdonald <patrickm@redhat.com> 3.23.54a-11
4639+- enable thread safe client
4640+- add patch for double free fix
4641+
4642+* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
4643+- rebuilt
4644+
4645+* Mon Jan 13 2003 Karsten Hopp <karsten@redhat.de> 3.23.54a-9
4646+- disable checks on s390x
4647+
4648+* Sat Jan 4 2003 Jeff Johnson <jbj@redhat.com> 3.23.54a-8
4649+- use internal dep generator.
4650+
4651+* Wed Jan 1 2003 Bill Nottingham <notting@redhat.com> 3.23.54a-7
4652+- fix mysql_config on hammer
4653+
4654+* Sun Dec 22 2002 Tim Powers <timp@redhat.com> 3.23.54a-6
4655+- don't use rpms internal dep generator
4656+
4657+* Tue Dec 17 2002 Elliot Lee <sopwith@redhat.com> 3.23.54a-5
4658+- Push it into the build system
4659+
4660+* Mon Dec 16 2002 Joe Orton <jorton@redhat.com> 3.23.54a-4
4661+- upgrade to 3.23.54a for safe_mysqld fix
4662+
4663+* Thu Dec 12 2002 Joe Orton <jorton@redhat.com> 3.23.54-3
4664+- upgrade to 3.23.54 for latest security fixes
4665+
4666+* Tue Nov 19 2002 Jakub Jelinek <jakub@redhat.com> 3.23.52-5
4667+- Always include <errno.h> for errno
4668+- Remove unpackaged files
4669+
4670+* Tue Nov 12 2002 Florian La Roche <Florian.LaRoche@redhat.de>
4671+- do not prereq userdel, not used at all
4672+
4673+* Mon Sep 9 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.52-4
4674+- Use %%{_libdir}
4675+- Add patch for x86-64
4676+
4677+* Wed Sep 4 2002 Jakub Jelinek <jakub@redhat.com> 3.23.52-3
4678+- rebuilt with gcc-3.2-7
4679+
4680+* Thu Aug 29 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.52-2
4681+- Add --enable-local-infile to configure - a new option
4682+ which doesn't default to the old behaviour (#72885)
4683+
4684+* Fri Aug 23 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.52-1
4685+- 3.23.52. Fixes a minor security problem, various bugfixes.
4686+
4687+* Sat Aug 10 2002 Elliot Lee <sopwith@redhat.com> 3.23.51-5
4688+- rebuilt with gcc-3.2 (we hope)
4689+
4690+* Mon Jul 22 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.51-4
4691+- rebuild
4692+
4693+* Thu Jul 18 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.51-3
4694+- Fix #63543 and #63542
4695+
4696+* Thu Jul 11 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.51-2
4697+- Turn off bdb on PPC(#68591)
4698+- Turn off the assembly optimizations, for safety.
4699+
4700+* Wed Jun 26 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.51-1
4701+- Work around annoying auto* thinking this is a crosscompile
4702+- 3.23.51
4703+
4704+* Fri Jun 21 2002 Tim Powers <timp@redhat.com>
4705+- automated rebuild
4706+
4707+* Mon Jun 10 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.50-2
4708+- Add dependency on perl-DBI and perl-DBD-MySQL (#66349)
4709+
4710+* Thu May 30 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.50-1
4711+- 3.23.50
4712+
4713+* Thu May 23 2002 Tim Powers <timp@redhat.com>
4714+- automated rebuild
4715+
4716+* Mon May 13 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.49-4
4717+- Rebuild
4718+- Don't set CXX to gcc, it doesn't work anymore
4719+- Exclude Alpha
4720+
4721+* Mon Apr 8 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.49-3
4722+- Add the various .cnf examples as doc files to mysql-server (#60349)
4723+- Don't include manual.ps, it's just 200 bytes with a URL inside (#60349)
4724+- Don't include random files in /usr/share/mysql (#60349)
4725+- langify (#60349)
4726+
4727+* Thu Feb 21 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.49-2
4728+- Rebuild
4729+
4730+* Sun Feb 17 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.49-1
4731+- 3.23.49
4732+
4733+* Thu Feb 14 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.48-2
4734+- work around perl dependency bug.
4735+
4736+* Mon Feb 11 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.48-1
4737+- 3.23.48
4738+
4739+* Thu Jan 17 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.47-4
4740+- Use kill, not mysqladmin, to flush logs and shut down. Thus,
4741+ an admin password can be set with no problems.
4742+- Remove reload from init script
4743+
4744+* Wed Jan 16 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.47-3
4745+- remove db3-devel from buildrequires,
4746+ MySQL has had its own bundled copy since the mid thirties
4747+
4748+* Sun Jan 6 2002 Trond Eivind Glomsrd <teg@redhat.com> 3.23.47-1
4749+- 3.23.47
4750+- Don't build for alpha, toolchain immature.
4751+
4752+* Mon Dec 3 2001 Trond Eivind Glomsrd <teg@redhat.com> 3.23.46-1
4753+- 3.23.46
4754+- use -fno-rtti and -fno-exceptions, and set CXX to increase stability.
4755+ Recommended by mysql developers.
4756+
4757+* Sun Nov 25 2001 Trond Eivind Glomsrd <teg@redhat.com> 3.23.45-1
4758+- 3.23.45
4759+
4760+* Wed Nov 14 2001 Trond Eivind Glomsrd <teg@redhat.com> 3.23.44-2
4761+- centralize definition of datadir in the initscript (#55873)
4762+
4763+* Fri Nov 2 2001 Trond Eivind Glomsrd <teg@redhat.com> 3.23.44-1
4764+- 3.23.44
4765+
4766+* Thu Oct 4 2001 Trond Eivind Glomsrd <teg@redhat.com> 3.23.43-1
4767+- 3.23.43
4768+
4769+* Mon Sep 10 2001 Trond Eivind Glomsrd <teg@redhat.com> 3.23.42-1
4770+- 3.23.42
4771+- reenable innodb
4772+
4773+* Tue Aug 14 2001 Trond Eivind Glomsrd <teg@redhat.com> 3.23.41-1
4774+- 3.23.41 bugfix release
4775+- disable innodb, to avoid the broken updates
4776+- Use "mysqladmin flush_logs" instead of kill -HUP in logrotate
4777+ script (#51711)
4778+
4779+* Sat Jul 21 2001 Trond Eivind Glomsrd <teg@redhat.com>
4780+- 3.23.40, bugfix release
4781+- Add zlib-devel to buildrequires:
4782+
4783+* Fri Jul 20 2001 Trond Eivind Glomsrd <teg@redhat.com>
4784+- BuildRequires-tweaking
4785+
4786+* Thu Jun 28 2001 Trond Eivind Glomsrd <teg@redhat.com>
4787+- Reenable test, but don't run them for s390, s390x or ia64
4788+- Make /etc/my.cnf config(noplace). Same for /etc/logrotate.d/mysqld
4789+
4790+* Thu Jun 14 2001 Trond Eivind Glomsrd <teg@redhat.com>
4791+- 3.23.29
4792+- enable innodb
4793+- enable assembly again
4794+- disable tests for now...
4795+
4796+* Tue May 15 2001 Trond Eivind Glomsrd <teg@redhat.com>
4797+- 3.23.38
4798+- Don't use BDB on Alpha - no fast mutexes
4799+
4800+* Tue Apr 24 2001 Trond Eivind Glomsrd <teg@redhat.com>
4801+- 3.23.37
4802+- Add _GNU_SOURCE to the compile flags
4803+
4804+* Wed Mar 28 2001 Trond Eivind Glomsrd <teg@redhat.com>
4805+- Make it obsolete our 6.2 PowerTools packages
4806+- 3.23.36 bugfix release - fixes some security issues
4807+ which didn't apply to our standard configuration
4808+- Make "make test" part of the build process, except on IA64
4809+ (it fails there)
4810+
4811+* Tue Mar 20 2001 Trond Eivind Glomsrd <teg@redhat.com>
4812+- 3.23.35 bugfix release
4813+- Don't delete the mysql user on uninstall
4814+
4815+* Tue Mar 13 2001 Trond Eivind Glomsrd <teg@redhat.com>
4816+- 3.23.34a bugfix release
4817+
4818+* Wed Feb 7 2001 Trond Eivind Glomsrd <teg@redhat.com>
4819+- added readline-devel to BuildRequires:
4820+
4821+* Tue Feb 6 2001 Trond Eivind Glomsrd <teg@redhat.com>
4822+- small i18n-fixes to initscript (action needs $)
4823+
4824+* Tue Jan 30 2001 Trond Eivind Glomsrd <teg@redhat.com>
4825+- make it shut down and rotate logs without using mysqladmin
4826+ (from #24909)
4827+
4828+* Mon Jan 29 2001 Trond Eivind Glomsrd <teg@redhat.com>
4829+- conflict with "MySQL"
4830+
4831+* Tue Jan 23 2001 Trond Eivind Glomsrd <teg@redhat.com>
4832+- improve gettextizing
4833+
4834+* Mon Jan 22 2001 Trond Eivind Glomsrd <teg@redhat.com>
4835+- 3.23.32
4836+- fix logrotate script (#24589)
4837+
4838+* Wed Jan 17 2001 Trond Eivind Glomsrd <teg@redhat.com>
4839+- gettextize
4840+- move the items in Requires(post): to Requires: in preparation
4841+ for an errata for 7.0 when 3.23.31 is released
4842+- 3.23.31
4843+
4844+* Tue Jan 16 2001 Trond Eivind Glomsrd <teg@redhat.com>
4845+- add the log file to the rpm database, and make it 0640
4846+ (#24116)
4847+- as above in logrotate script
4848+- changes to the init sequence - put most of the data
4849+ in /etc/my.cnf instead of hardcoding in the init script
4850+- use /var/run/mysqld/mysqld.pid instead of
4851+ /var/run/mysqld/pid
4852+- use standard safe_mysqld
4853+- shut down cleaner
4854+
4855+* Mon Jan 08 2001 Trond Eivind Glomsrd <teg@redhat.com>
4856+- 3.23.30
4857+- do an explicit chmod on /var/lib/mysql in post, to avoid
4858+ any problems with broken permissons. There is a report
4859+ of rm not changing this on its own (#22989)
4860+
4861+* Mon Jan 01 2001 Trond Eivind Glomsrd <teg@redhat.com>
4862+- bzipped source
4863+- changed from 85 to 78 in startup, so it starts before
4864+ apache (which can use modules requiring mysql)
4865+
4866+* Wed Dec 27 2000 Trond Eivind Glomsrd <teg@redhat.com>
4867+- 3.23.29a
4868+
4869+* Tue Dec 19 2000 Trond Eivind Glomsrd <teg@redhat.com>
4870+- add requirement for new libstdc++, build for errata
4871+
4872+* Mon Dec 18 2000 Trond Eivind Glomsrd <teg@redhat.com>
4873+- 3.23.29
4874+
4875+* Mon Nov 27 2000 Trond Eivind Glomsrd <teg@redhat.com>
4876+- 3.23.28 (gamma)
4877+- remove old patches, as they are now upstreamed
4878+
4879+* Thu Nov 14 2000 Trond Eivind Glomsrd <teg@redhat.com>
4880+- Add a requirement for a new glibc (#20735)
4881+- build on IA64
4882+
4883+* Wed Nov 1 2000 Trond Eivind Glomsrd <teg@redhat.com>
4884+- disable more assembly
4885+
4886+* Wed Nov 1 2000 Jakub Jelinek <jakub@redhat.com>
4887+- fix mysql on SPARC (#20124)
4888+
4889+* Tue Oct 31 2000 Trond Eivind Glomsrd <teg@redhat.com>
4890+- 3.23.27
4891+
4892+* Wed Oct 25 2000 Trond Eivind Glomsrd <teg@redhat.com>
4893+- add patch for fixing bogus aliasing in mysql from Jakub,
4894+ which should fix #18905 and #18620
4895+
4896+* Mon Oct 23 2000 Trond Eivind Glomsrd <teg@redhat.com>
4897+- check for negative niceness values, and negate it
4898+ if present (#17899)
4899+- redefine optflags on IA32 FTTB
4900+
4901+* Wed Oct 18 2000 Trond Eivind Glomsrd <teg@redhat.com>
4902+- 3.23.26, which among other fixes now uses mkstemp()
4903+ instead of tempnam().
4904+- revert changes made yesterday, the problem is now
4905+ isolated
4906+
4907+* Tue Oct 17 2000 Trond Eivind Glomsrd <teg@redhat.com>
4908+- use the compat C++ compiler FTTB. Argh.
4909+- add requirement of ncurses4 (see above)
4910+
4911+* Sun Oct 01 2000 Trond Eivind Glomsrd <teg@redhat.com>
4912+- 3.23.25
4913+- fix shutdown problem (#17956)
4914+
4915+* Tue Sep 26 2000 Trond Eivind Glomsrd <teg@redhat.com>
4916+- Don't try to include no-longer-existing PUBLIC file
4917+ as doc (#17532)
4918+
4919+* Thu Sep 12 2000 Trond Eivind Glomsrd <teg@redhat.com>
4920+- rename config file to /etc/my.cnf, which is what
4921+ mysqld wants... doh. (#17432)
4922+- include a changed safe_mysqld, so the pid file option
4923+ works.
4924+- make mysql dir world readable to they can access the
4925+ mysql socket. (#17432)
4926+- 3.23.24
4927+
4928+* Wed Sep 06 2000 Trond Eivind Glomsrd <teg@redhat.com>
4929+- 3.23.23
4930+
4931+* Sun Aug 27 2000 Trond Eivind Glomsrd <teg@redhat.com>
4932+- Add "|| :" to condrestart to avoid non-zero exit code
4933+
4934+* Thu Aug 24 2000 Trond Eivind Glomsrd <teg@redhat.com>
4935+- it's mysql.com, not mysql.org and use correct path to
4936+ source (#16830)
4937+
4938+* Wed Aug 16 2000 Trond Eivind Glomsrd <teg@redhat.com>
4939+- source file from /etc/rc.d, not /etc/rd.d. Doh.
4940+
4941+* Sun Aug 13 2000 Trond Eivind Glomsrd <teg@redhat.com>
4942+- don't run ldconfig -n, it doesn't update ld.so.cache
4943+ (#16034)
4944+- include some missing binaries
4945+- use safe_mysqld to start the server (request from
4946+ mysql developers)
4947+
4948+* Sat Aug 05 2000 Bill Nottingham <notting@redhat.com>
4949+- condrestart fixes
4950+
4951+* Mon Aug 01 2000 Trond Eivind Glomsrd <teg@redhat.com>
4952+- 3.23.22. Disable the old patches, they're now in.
4953+
4954+* Thu Jul 27 2000 Trond Eivind Glomsrd <teg@redhat.com>
4955+- bugfixes in the initscript
4956+- move the .so link to the devel package
4957+
4958+* Wed Jul 19 2000 Trond Eivind Glomsrd <teg@redhat.com>
4959+- rebuild due to glibc changes
4960+
4961+* Tue Jul 18 2000 Trond Eivind Glomsrd <teg@redhat.com>
4962+- disable compiler patch
4963+- don't include info directory file
4964+
4965+* Mon Jul 17 2000 Trond Eivind Glomsrd <teg@redhat.com>
4966+- move back to /etc/rc.d/init.d
4967+
4968+* Fri Jul 14 2000 Trond Eivind Glomsrd <teg@redhat.com>
4969+- more cleanups in initscript
4970+
4971+* Thu Jul 13 2000 Trond Eivind Glomsrd <teg@redhat.com>
4972+- add a patch to work around compiler bug
4973+ (from monty@mysql.com)
4974+
4975+* Wed Jul 12 2000 Trond Eivind Glomsrd <teg@redhat.com>
4976+- don't build the SQL daemon statically (glibc problems)
4977+- fix the logrotate script - only flush log if mysql
4978+ is running
4979+- change the reloading procedure
4980+- remove icon - glint is obsolete a long time ago
4981+
4982+* Wed Jul 12 2000 Prospector <bugzilla@redhat.com>
4983+- automatic rebuild
4984+
4985+* Mon Jul 10 2000 Trond Eivind Glomsrd <teg@redhat.com>
4986+- try the new compiler again
4987+- build the SQL daemon statically
4988+- add compile time support for complex charsets
4989+- enable assembler
4990+- more cleanups in initscript
4991+
4992+* Sun Jul 09 2000 Trond Eivind Glomsrd <teg@redhat.com>
4993+- use old C++ compiler
4994+- Exclusivearch x86
4995+
4996+* Sat Jul 08 2000 Trond Eivind Glomsrd <teg@redhat.com>
4997+- move .so files to devel package
4998+- more cleanups
4999+- exclude sparc for now
5000+
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches

to all changes: