[packages/percona-server/v5.0.x: 157/202] - updated percona patches (release-5.0.91-22); rel 3

glen glen at pld-linux.org
Wed Oct 21 16:22:13 CEST 2015


commit db97ae77023e6c544d978891984aa44904a34b7d
Author: Elan Ruusamäe <glen at pld-linux.org>
Date:   Sat Dec 18 18:48:41 2010 +0000

    - updated percona patches (release-5.0.91-22); rel 3
    
    Changed files:
        mysql-fixes.patch -> 1.1.2.2
        mysql-innodb_show_bp.patch -> 1.1.2.3
        mysql-innodb_split_buf_pool_mutex.patch -> 1.1.2.3
        mysql-mysql-test.patch -> 1.1.2.1
        mysql-userstatv2.patch -> 1.1.2.13
        mysql.spec -> 1.353.2.98
        percona.sh -> 1.7.2.1

 mysql-fixes.patch                       | 11 ----------
 mysql-innodb_show_bp.patch              |  6 +++---
 mysql-innodb_split_buf_pool_mutex.patch | 37 +++++++++++++++++++++++++--------
 mysql-mysql-test.patch                  | 32 ++++++++++++++++++++++++++++
 mysql-userstatv2.patch                  | 12 +++++++++++
 mysql.spec                              |  4 +---
 percona.sh                              |  3 ++-
 7 files changed, 78 insertions(+), 27 deletions(-)
---
diff --git a/mysql.spec b/mysql.spec
index 359e3c5..4986c77 100644
--- a/mysql.spec
+++ b/mysql.spec
@@ -25,7 +25,7 @@ Summary(uk.UTF-8):	MySQL - швидкий SQL-сервер
 Summary(zh_CN.UTF-8):	MySQL数据库服务器
 Name:		mysql
 Version:	5.0.91
-Release:	2
+Release:	3
 License:	GPL + MySQL FLOSS Exception
 Group:		Applications/Databases
 #Source0:	http://ftp.gwdg.de/pub/misc/mysql/Downloads/MySQL-5.0/%{name}-%{version}.tar.gz
@@ -67,7 +67,6 @@ Patch14:	%{name}-bug-16470.patch
 Patch15:	%{name}-system-users.patch
 Patch16:	%{name}-errorlog-no-rename.patch
 Patch18:	%{name}-xtrabackup.patch
-Patch19:	%{name}-fixes.patch
 Patch21:	%{name}-atomic.patch
 Patch22:	%{name}-fix-dummy-thread-race-condition.patch
 # ourdelta
@@ -563,7 +562,6 @@ mv sphinx-*/mysqlse sql/sphinx
 %patch120 -p1
 # </percona>
 
-%patch19 -p1
 %patch21 -p0
 %patch22 -p1
 %patch23 -p1
diff --git a/mysql-fixes.patch b/mysql-fixes.patch
deleted file mode 100644
index aa75ba2..0000000
--- a/mysql-fixes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- mysql-5.0.81/sql/ha_innodb.cc.orig	2009-05-20 21:59:21.165842451 +0200
-+++ mysql-5.0.81/sql/ha_innodb.cc	2009-05-20 22:08:31.797661582 +0200
-@@ -6660,7 +6756,7 @@
- 				table->field[10]->store(index->name, strlen(index->name), system_charset_info);
- 				// fprintf(stderr, " index %s, table %s", index->name, index->table_name);
- 
--				if((p = strchr(index->table_name, '/')))
-+				if(p = (char *)strchr(index->table_name, '/'))
- 				{
- 					strncpy(db_name_raw, index->table_name, p-index->table_name);
- 					db_name_raw[p-index->table_name] = 0;
diff --git a/mysql-innodb_show_bp.patch b/mysql-innodb_show_bp.patch
index 766a3b7..d964785 100644
--- a/mysql-innodb_show_bp.patch
+++ b/mysql-innodb_show_bp.patch
@@ -248,7 +248,7 @@ diff -r fe944d2c6e1f sql/ha_innodb.cc
 +	dict_index_t*	index;
 +	buf_block_t*    block;
 +
-+	char *p;
++	const char *p;
 +	char db_name_raw[NAME_LEN*5+1];
 +	char table_name_raw[NAME_LEN*5+1];
 +
@@ -314,7 +314,7 @@ diff -r fe944d2c6e1f sql/ha_innodb.cc
 +				table->field[10]->store(index->name, strlen(index->name), system_charset_info);
 +				// fprintf(stderr, " index %s, table %s", index->name, index->table_name);
 +
-+				if((p = strchr(index->table_name, '/')))
++				if((p = strchr((char *) index->table_name, '/')))
 +				{
 +					strncpy(db_name_raw, index->table_name, p-index->table_name);
 +					db_name_raw[p-index->table_name] = 0;
@@ -322,7 +322,7 @@ diff -r fe944d2c6e1f sql/ha_innodb.cc
 +					p++;            
 +				} else {
 +					table->field[11]->store(NULL, 0, system_charset_info);
-+					p = (char *)index->table_name;
++					p = index->table_name;
 +				}
 +				strcpy(table_name_raw, p);
 +
diff --git a/mysql-innodb_split_buf_pool_mutex.patch b/mysql-innodb_split_buf_pool_mutex.patch
index 11a39c5..a23c1e9 100644
--- a/mysql-innodb_split_buf_pool_mutex.patch
+++ b/mysql-innodb_split_buf_pool_mutex.patch
@@ -832,16 +832,25 @@ diff -ruN a/innobase/buf/buf0flu.c b/innobase/buf/buf0flu.c
  	(buf_pool->init_flush)[flush_type] = FALSE;
  
  	if ((buf_pool->n_flush[flush_type] == 0)
-@@ -1014,7 +1048,7 @@
+@@ -1013,11 +1047,15 @@
+ 	buf_block_t*	block;
  	ulint		n_replaceable;
  	ulint		distance	= 0;
++	ibool		optimistic = TRUE;
  	
 -	mutex_enter(&(buf_pool->mutex));
-+	//mutex_enter(&(buf_pool->mutex)); /* optimistic */
- 
+-
++	//mutex_enter(&(buf_pool->mutex));
++retry:
  	n_replaceable = UT_LIST_GET_LEN(buf_pool->free);
  
-@@ -1025,6 +1059,12 @@
++	if (!optimistic)
++		mutex_enter(&(buf_pool->LRU_mutex));
++
+ 	block = UT_LIST_GET_LAST(buf_pool->LRU);
+ 
+ 	while ((block != NULL)
+@@ -1025,6 +1063,12 @@
  	       				+ BUF_FLUSH_EXTRA_MARGIN)
  	       && (distance < BUF_LRU_FREE_SEARCH_LEN)) {
  
@@ -854,16 +863,26 @@ diff -ruN a/innobase/buf/buf0flu.c b/innobase/buf/buf0flu.c
  		mutex_enter(&block->mutex);
  
  		if (buf_flush_ready_for_replace(block)) {
-@@ -1038,7 +1078,7 @@
+@@ -1038,11 +1082,17 @@
  		block = UT_LIST_GET_PREV(LRU, block);
  	}
  	
 -	mutex_exit(&(buf_pool->mutex));
-+	//mutex_exit(&(buf_pool->mutex)); /* optimistic */
++	//mutex_exit(&(buf_pool->mutex));
++	if (!optimistic)
++		mutex_exit(&(buf_pool->LRU_mutex));
  
  	if (n_replaceable >= BUF_FLUSH_FREE_BLOCK_MARGIN) {
  
-@@ -1057,8 +1097,9 @@
+ 		return(0);
++	} else if (optimistic) {
++		/* confirm it again with LRU_mutex for exactness */
++		optimistic = FALSE;
++		goto retry;
+ 	}
+ 	
+ 	return(BUF_FLUSH_FREE_BLOCK_MARGIN + BUF_FLUSH_EXTRA_MARGIN
+@@ -1057,8 +1107,9 @@
  immediately, without waiting. */ 
  
  void
@@ -874,7 +893,7 @@ diff -ruN a/innobase/buf/buf0flu.c b/innobase/buf/buf0flu.c
  {
  	ulint	n_to_flush;
  	ulint	n_flushed;
-@@ -1068,7 +1109,7 @@
+@@ -1068,7 +1119,7 @@
  	if (n_to_flush > 0) {
  		n_flushed = buf_flush_batch(BUF_FLUSH_LRU, n_to_flush,
  							ut_dulint_zero);
@@ -883,7 +902,7 @@ diff -ruN a/innobase/buf/buf0flu.c b/innobase/buf/buf0flu.c
  			/* There was an LRU type flush batch already running;
  			let us wait for it to end */
  		   
-@@ -1118,11 +1159,11 @@
+@@ -1118,11 +1169,11 @@
  {
  	ibool	ret;
  	
diff --git a/mysql-mysql-test.patch b/mysql-mysql-test.patch
index 7fce8e0..00e0eb9 100644
--- a/mysql-mysql-test.patch
+++ b/mysql-mysql-test.patch
@@ -106,3 +106,35 @@
  select @@profiling;
  @@profiling
  1
+--- a/mysql-test/r/mysql.result 2010-02-19 23:59:36.000000000 -0500
++++ b/mysql-test/r/mysql.result 2010-02-19 23:58:50.000000000 -0500
+@@ -162,8 +162,8 @@
+ ERROR 1049 (42000) at line 1: Unknown database 'invalid'
+ Test connect with dbname + hostname
+ Test connect with dbname + _invalid_ hostname
+-ERROR 2005 (HY000) at line 1: Unknown MySQL server host 'invalid_hostname' (errno)
+-ERROR 2005 (HY000) at line 1: Unknown MySQL server host 'invalid_hostname' (errno)
++ERROR 2003 (HY000) at line 1: Can't connect to MySQL server on 'invalid_hostname' (errno)
++ERROR 2003 (HY000) at line 1: Can't connect to MySQL server on 'invalid_hostname' (errno)
+ The commands reported in the bug report
+ ERROR 2005 (HY000) at line 1: Unknown MySQL server host 'cyril has found a bug :)XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' (errno)
+ Too long dbname
+@@ -198,6 +198,6 @@
+ 1
+ COUNT (*)
+ 1
+-ERROR 2005 (HY000) at line 1: Unknown MySQL server host 'invalid_hostname' (errno)
++ERROR 2003 (HY000) at line 1: Can't connect to MySQL server on 'invalid_hostname' (errno)
+ <TABLE BORDER=1><TR><TH><</TH></TR><TR><TD>< & ></TD></TR></TABLE>
+ End of 5.0 tests
+--- a/mysql-test/r/mysql_upgrade.result 2010-02-19 23:58:16.000000000 -0500
++++ b/mysql-test/r/mysql_upgrade.result 2010-02-20 00:01:34.000000000 -0500
+@@ -58,7 +58,7 @@
+ mysql.user                                         OK
+ DROP USER mysqltest1@'%';
+ Run mysql_upgrade with a non existing server socket
+-mysqlcheck: Got error: 2005: Unknown MySQL server host 'not_existing_host' (errno) when trying to connect
++mysqlcheck: Got error: 2003: Can't connect to MySQL server on 'not_existing_host' (errno) when trying to connect
+ FATAL ERROR: Upgrade failed
+ set GLOBAL sql_mode='STRICT_ALL_TABLES,ANSI_QUOTES,NO_ZERO_DATE';
+ mysql.columns_priv                                 OK
diff --git a/mysql-userstatv2.patch b/mysql-userstatv2.patch
index fc421b0..bb7546c 100644
--- a/mysql-userstatv2.patch
+++ b/mysql-userstatv2.patch
@@ -4288,3 +4288,15 @@ diff -r 592f6c3641ba zlib/Makefile.in
  LIBS = $(NON_THREADED_LIBS)
  LIBTOOL = @LIBTOOL@
  LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@
+diff -Nur a/include/mysql_com.h b/include/mysql_com.h
+--- a/include/mysql_com.h	2010-05-22 00:26:45.000000000 -0700
++++ b/include/mysql_com.h	2010-05-22 00:27:14.000000000 -0700
+@@ -228,7 +228,7 @@
+ 
+   my_bool report_error; /* We should report error (we have unreported error) */
+   my_bool return_errno;
+-#if defined(MYSQL_SERVER) && !defined(EMBEDDED_LIBRARY)
++#if defined(MYSQL_SERVER)
+   /*
+     Controls whether a big packet should be skipped.
+ 
diff --git a/percona.sh b/percona.sh
index 0b6472e..9b52c76 100644
--- a/percona.sh
+++ b/percona.sh
@@ -1,8 +1,9 @@
 #!/bin/sh
 # updates percona patches
 # http://www.percona.com/docs/wiki/release:start
+# https://launchpad.net/percona-server/release-5.0.91-22
 
-version=release-5.1.53-11
+version=release-5.0.91-22
 bzr_branch=lp:percona-server/$version
 branch=MYSQL_5_1
 
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/percona-server.git/commitdiff/431f68fe79a66d5dfdd53f2655709e6c925fbc22



More information about the pld-cvs-commit mailing list