Merge lp:~tsarev/percona-server/quilt-5.1-2 into lp:~stewart/percona-server/quilt-5.1

Proposed by Oleg Tsarev
Status: Rejected
Rejected by: Stewart Smith
Proposed branch: lp:~tsarev/percona-server/quilt-5.1-2
Merge into: lp:~stewart/percona-server/quilt-5.1
Prerequisite: lp:~tsarev/percona-server/quilt-5.1-1
Diff against target: 6864 lines (+1120/-1643)
59 files modified
patches/bug580324.patch (+6/-9)
patches/bug677407.patch (+2/-3)
patches/bug813587.patch (+4/-5)
patches/bugfix48929.patch (+4/-6)
patches/control_online_alter_index.patch (+12/-18)
patches/error_pad.patch (+2/-3)
patches/fix-bug671764.patch (+2/-3)
patches/i_s_innodb_buffer_pool_pages.patch (+12/-18)
patches/innodb_adjust_defaults.patch (+2/-3)
patches/innodb_admin_command_base.patch (+8/-12)
patches/innodb_buffer_pool_shm.patch (+4/-6)
patches/innodb_bug60788.patch (+10/-11)
patches/innodb_deadlock_count.patch (+10/-15)
patches/innodb_dict_size_limit.patch (+24/-36)
patches/innodb_expand_fast_index_creation.patch (+20/-30)
patches/innodb_expand_import.patch (+10/-15)
patches/innodb_expand_undo_slots.patch (+12/-18)
patches/innodb_extend_slow.patch (+38/-52)
patches/innodb_extra_rseg.patch (+22/-33)
patches/innodb_fast_checksum.patch (+22/-33)
patches/innodb_fast_shutdown.patch (+12/-18)
patches/innodb_files_extend.patch (+42/-63)
patches/innodb_fix_misc.patch (+48/-68)
patches/innodb_io_patches.patch (+36/-54)
patches/innodb_lru_dump_restore.patch (+41/-53)
patches/innodb_opt_lru_count.patch (+16/-24)
patches/innodb_overwrite_relay_log_info.patch (+12/-18)
patches/innodb_pass_corrupt_table.patch (+60/-90)
patches/innodb_purge_thread.patch (+16/-24)
patches/innodb_recovery_patches.patch (+19/-28)
patches/innodb_separate_doublewrite.patch (+34/-51)
patches/innodb_show_enhancements.patch (+10/-15)
patches/innodb_show_lock_name.patch (+14/-21)
patches/innodb_show_status.patch (+22/-33)
patches/innodb_show_sys_tables.patch (+15/-22)
patches/innodb_split_buf_pool_mutex.patch (+38/-57)
patches/innodb_stats.patch (+56/-78)
patches/innodb_swap_builtin_plugin.patch (+20/-30)
patches/innodb_thread_concurrency_timer_based.patch (+8/-12)
patches/log_connection_error.patch (+8/-12)
patches/microsec_process.patch (+4/-6)
patches/mysql-syslog.patch (+4/-6)
patches/mysql-test.diff (+64/-96)
patches/mysql_dump_ignore_ct.patch (+4/-6)
patches/mysql_remove_eol_carret.patch (+8/-12)
patches/optimizer_fix.patch (+12/-18)
patches/percona-support.patch (+14/-16)
patches/profiling_slow.patch (+18/-27)
patches/query_cache_enhance.patch (+26/-39)
patches/remove_fcntl_excessive_calls.patch (+4/-6)
patches/response-time-distribution.patch (+52/-77)
patches/show_patches.patch (+24/-36)
patches/show_slave_status_nolock.patch (+12/-18)
patches/show_temp_51.patch (+18/-27)
patches/slave_timeout_fix.patch (+2/-2)
patches/sql_no_fcache.patch (+22/-33)
patches/suppress_log_warning_1592.patch (+9/-13)
patches/userstat.patch (+56/-84)
patches/utf8_general50_ci.patch (+14/-21)
To merge this branch: bzr merge lp:~tsarev/percona-server/quilt-5.1-2
Reviewer Review Type Date Requested Status
Laurynas Biveinis (community) Approve
Yasufumi Kinoshita (community) Approve
Stewart Smith Pending
Review via email: mp+69431@code.launchpad.net

Commit message

1. patches/bug813587.patch: fix offsets
2. patches/innodb_bug60788.patch: fix offsets
3. patches/innodb_extend_slow.patch: fix offsets
4. patches/innodb_fix_misc.patch: fix offsets
5. patches/innodb_lru_dump_restore.patch: updated on 'quilt refresh'
6. patches/innodb_recovery_patches.patch: fix offsets
7. patches/innodb_show_sys_tables.patch: updated on 'quilt refresh'
8. patches/innodb_stats.patch: updated on 'quilt refresh'
9. patches/percona-support.patch: updated on 'quilt refresh'
10. patches/response-time-distribution.patch: fix offsets
11. update all patches: remove timestamp from header
12. update all patches: remove "diff -ruN a/... b/..." - this is not good, but not found solution for this yet.

Description of the change

1. patches/bug813587.patch: fix offsets
2. patches/innodb_bug60788.patch: fix offsets
3. patches/innodb_extend_slow.patch: fix offsets
4. patches/innodb_fix_misc.patch: fix offsets
5. patches/innodb_lru_dump_restore.patch: updated on 'quilt refresh'
6. patches/innodb_recovery_patches.patch: fix offsets
7. patches/innodb_show_sys_tables.patch: updated on 'quilt refresh'
8. patches/innodb_stats.patch: updated on 'quilt refresh'
9. patches/percona-support.patch: updated on 'quilt refresh'
10. patches/response-time-distribution.patch: fix offsets
11. update all patches: remove timestamp from header
12. update all patches: remove "diff -ruN a/... b/..." - this is not good, but not found solution for this yet.

To post a comment you must log in.
Revision history for this message
Oleg Tsarev (tsarev) wrote :

I checked correctness by following way:

rm -rf a b
bzr update -r 248
make clean && make all && mv Percona-Server-5.1.57-rel12.8 a
bzr update -r 249
make clean && make all && mv Percona-Server-5.1.57-rel12.8 b
diff -ruN a b # nothing to output

Revision history for this message
Yasufumi Kinoshita (yasufumi-kinoshita) :
review: Approve
Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :

LGTM

review: Approve
Revision history for this message
Stewart Smith (stewart) wrote :

I've done most of this with the merge of the quilt branch, so will do a refresh and push it, but not actually merge this branch itself.

Unmerged revisions

249. By Oleg Tsarev

1. patches/bug813587.patch: fix offsets
2. patches/innodb_bug60788.patch: fix offsets
3. patches/innodb_extend_slow.patch: fix offsets
4. patches/innodb_fix_misc.patch: fix offsets
5. patches/innodb_lru_dump_restore.patch: updated on 'quilt refresh'
6. patches/innodb_recovery_patches.patch: fix offsets
7. patches/innodb_show_sys_tables.patch: updated on 'quilt refresh'
8. patches/innodb_stats.patch: updated on 'quilt refresh'
9. patches/percona-support.patch: updated on 'quilt refresh'
10. patches/response-time-distribution.patch: fix offsets
11. update all patches: remove timestamp from header
12. update all patches: remove "diff -ruN a/... b/..." - this is not good, but not found solution for this yet.

248. By Oleg Tsarev

1. Makefile:
  * add symlink to quiltrc to $(PERCONA_SERVER) dir
  * split "main" target to "prepare" and "main" (prepare just unpack source code and setup for patch appling, main also apply patches)
  * add target "regenerate" (old normalize_patches.sh) (requires for future porting to new mysql version)
  * fix "clean" target
2. apply_patches:
  * fix usages: "--quiltrc=quiltrc"
  * now uses sh instead of bash
3. install_tests:
  * rename to install_tests from install_tests.sh
  * fix path to series
4. normalize_patches:
  * rename to normalize_patches from normalize_patches.sh
  * now use quilt for regenerate patches
5. quiltrc:
  * add QUILT_[REFRESH|DIFF|PATCH]_[ARGS|OPTS] options
6. regenerate_patch.sh:
  * removed (unecessary now)

247. By Stewart Smith

add back in applying of handlersocket patch, was accidently removed

246. By Stewart Smith

make it optional if we use quilt to apply patches. this means you only need quilt installed for a dev environment

245. By Stewart Smith

merge trunk

244. By Stewart Smith

merge Oleg's patch fixes

243. By Stewart Smith

move to using quilt for patch management. We also have a quiltrc file that is needed in ~/.quiltrc for those editing patches. This moves all patches into patches/ and this is symlinked into generated Percona Server tree.

242. By Stewart Smith

merge bug794776 fix: write_to_slow_log used without initialization

241. By Stewart Smith

merge fix of Percona-Server directories, including very useful symlinks to simplify jenkins build

240. By Stewart Smith

merge fix for precona_innodb_deadlock failures

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'patches/bug580324.patch'
2--- patches/bug580324.patch 2011-06-23 02:18:22 +0000
3+++ patches/bug580324.patch 2011-07-27 11:11:52 +0000
4@@ -5,9 +5,8 @@
5 #!!! notice !!!
6 # Any small change to this file in the main branch
7 # should be done or reviewed by the maintainer!
8-diff -ruN a/sql/sql_base.cc b/sql/sql_base.cc
9---- a/sql/sql_base.cc 2010-05-27 19:54:18.000000000 +0400
10-+++ b/sql/sql_base.cc 2010-05-27 19:55:20.000000000 +0400
11+--- a/sql/sql_base.cc
12++++ b/sql/sql_base.cc
13 @@ -233,8 +233,12 @@
14 uint create_table_def_key(THD *thd, char *key, TABLE_LIST *table_list,
15 bool tmp_table)
16@@ -23,9 +22,8 @@
17 if (tmp_table)
18 {
19 int4store(key + key_length, thd->server_id);
20-diff -ruN a/sql/sql_parse.cc b/sql/sql_parse.cc
21---- a/sql/sql_parse.cc 2010-05-27 19:54:18.000000000 +0400
22-+++ b/sql/sql_parse.cc 2010-05-27 20:03:20.000000000 +0400
23+--- a/sql/sql_parse.cc
24++++ b/sql/sql_parse.cc
25 @@ -1341,10 +1341,12 @@
26 break;
27 #else
28@@ -89,9 +87,8 @@
29 thd->set_query(fields, query_length);
30 general_log_print(thd, command, "%s %s", table_list.table_name, fields);
31 if (lower_case_table_names)
32-diff -ruN a/strings/ctype-utf8.c b/strings/ctype-utf8.c
33---- a/strings/ctype-utf8.c 2010-05-06 19:28:05.000000000 +0400
34-+++ b/strings/ctype-utf8.c 2010-05-27 20:04:20.000000000 +0400
35+--- a/strings/ctype-utf8.c
36++++ b/strings/ctype-utf8.c
37 @@ -4116,6 +4116,10 @@
38 {
39 int code;
40
41=== modified file 'patches/bug677407.patch'
42--- patches/bug677407.patch 2011-06-23 02:18:22 +0000
43+++ patches/bug677407.patch 2011-07-27 11:11:52 +0000
44@@ -49,9 +49,8 @@
45 NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
46 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
47
48-diff -ruN a/storage/innodb_plugin/trx/trx0i_s.c b/storage/innodb_plugin/trx/trx0i_s.c
49---- a/storage/innodb_plugin/trx/trx0i_s.c 2010-11-03 16:39:54.000000000 +0300
50-+++ b/storage/innodb_plugin/trx/trx0i_s.c 2010-11-30 13:57:03.000000000 +0300
51+--- a/storage/innodb_plugin/trx/trx0i_s.c
52++++ b/storage/innodb_plugin/trx/trx0i_s.c
53 @@ -157,10 +157,6 @@
54 ullint last_read; /*!< last time the cache was read;
55 measured in microseconds since
56
57=== modified file 'patches/bug813587.patch'
58--- patches/bug813587.patch 2011-07-22 05:41:42 +0000
59+++ patches/bug813587.patch 2011-07-27 11:11:52 +0000
60@@ -6,10 +6,9 @@
61 # Clear MySQL connection errors in ha_federated::close(), since they
62 # can affect queries on other tables due to table cache eviction.
63 #
64-diff -ruN Percona-Server.orig/storage/federated/ha_federated.cc Percona-Server/storage/federated/ha_federated.cc
65---- Percona-Server.orig/storage/federated/ha_federated.cc 2011-04-12 16:11:47.000000000 +0400
66-+++ Percona-Server/storage/federated/ha_federated.cc 2011-07-21 13:13:25.000000000 +0400
67-@@ -1641,6 +1641,7 @@ int ha_federated::open(const char *name,
68+--- a/storage/federated/ha_federated.cc
69++++ b/storage/federated/ha_federated.cc
70+@@ -1641,6 +1641,7 @@
71
72 int ha_federated::close(void)
73 {
74@@ -17,7 +16,7 @@
75 DBUG_ENTER("ha_federated::close");
76
77 free_result();
78-@@ -1651,6 +1652,10 @@ int ha_federated::close(void)
79+@@ -1651,6 +1652,10 @@
80 mysql_close(mysql);
81 mysql= NULL;
82
83
84=== modified file 'patches/bugfix48929.patch'
85--- patches/bugfix48929.patch 2011-07-22 05:41:42 +0000
86+++ patches/bugfix48929.patch 2011-07-27 11:11:52 +0000
87@@ -5,9 +5,8 @@
88 #!!! notice !!!
89 # Any small change to this file in the main branch
90 # should be done or reviewed by the maintainer!
91-diff -ruN a/configure.in b/configure.in
92---- a/configure.in 2010-07-07 03:33:05.008972002 +0400
93-+++ b/configure.in 2010-07-07 03:33:05.788972002 +0400
94+--- a/configure.in
95++++ b/configure.in
96 @@ -815,7 +815,7 @@
97 AC_HEADER_STDC
98 AC_HEADER_SYS_WAIT
99@@ -17,9 +16,8 @@
100 stdlib.h stddef.h \
101 strings.h string.h synch.h sys/mman.h sys/socket.h netinet/in.h arpa/inet.h \
102 sys/timeb.h sys/types.h sys/un.h sys/vadvise.h sys/wait.h term.h \
103-diff -ruN a/sql/mysqld.cc b/sql/mysqld.cc
104---- a/sql/mysqld.cc 2010-07-07 03:33:05.278972002 +0400
105-+++ b/sql/mysqld.cc 2010-07-07 03:33:05.788972002 +0400
106+--- a/sql/mysqld.cc
107++++ b/sql/mysqld.cc
108 @@ -55,6 +55,10 @@
109 #include "sp_rcontext.h"
110 #include "sp_cache.h"
111
112=== modified file 'patches/control_online_alter_index.patch'
113--- patches/control_online_alter_index.patch 2011-06-23 02:18:22 +0000
114+++ patches/control_online_alter_index.patch 2011-07-27 11:11:52 +0000
115@@ -5,9 +5,8 @@
116 #!!! notice !!!
117 # Any small change to this file in the main branch
118 # should be done or reviewed by the maintainer!
119-diff -ruN a/sql/handler.h b/sql/handler.h
120---- a/sql/handler.h 2010-07-21 22:49:53.660561079 +0900
121-+++ b/sql/handler.h 2010-07-21 22:50:24.106530090 +0900
122+--- a/sql/handler.h
123++++ b/sql/handler.h
124 @@ -169,6 +169,19 @@
125 #define HA_ONLINE_DROP_UNIQUE_INDEX (1L << 9) /*drop uniq. online*/
126 #define HA_ONLINE_ADD_PK_INDEX (1L << 10)/*add prim. online*/
127@@ -28,9 +27,8 @@
128 /*
129 HA_PARTITION_FUNCTION_SUPPORTED indicates that the function is
130 supported at all.
131-diff -ruN a/sql/mysqld.cc b/sql/mysqld.cc
132---- a/sql/mysqld.cc 2010-07-21 22:49:54.011529414 +0900
133-+++ b/sql/mysqld.cc 2010-07-21 22:50:24.112527179 +0900
134+--- a/sql/mysqld.cc
135++++ b/sql/mysqld.cc
136 @@ -5898,6 +5898,7 @@
137 OPT_USERSTAT_RUNNING,
138 OPT_THREAD_STATISTICS,
139@@ -53,9 +51,8 @@
140 {"ansi", 'a', "Use ANSI SQL syntax instead of MySQL syntax. This mode "
141 "will also set transaction isolation level 'serializable'.", 0, 0, 0,
142 GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0},
143-diff -ruN a/sql/set_var.cc b/sql/set_var.cc
144---- a/sql/set_var.cc 2010-07-21 22:49:54.019529438 +0900
145-+++ b/sql/set_var.cc 2010-07-21 22:50:24.122532110 +0900
146+--- a/sql/set_var.cc
147++++ b/sql/set_var.cc
148 @@ -758,6 +758,11 @@
149 sys_engine_condition_pushdown(&vars, "engine_condition_pushdown",
150 &SV::engine_condition_pushdown);
151@@ -68,9 +65,8 @@
152 #ifdef WITH_NDBCLUSTER_STORAGE_ENGINE
153 /* ndb thread specific variable settings */
154 static sys_var_thd_ulong
155-diff -ruN a/sql/sql_class.h b/sql/sql_class.h
156---- a/sql/sql_class.h 2010-07-21 22:49:53.742561560 +0900
157-+++ b/sql/sql_class.h 2010-07-21 22:50:24.130529404 +0900
158+--- a/sql/sql_class.h
159++++ b/sql/sql_class.h
160 @@ -381,6 +381,8 @@
161 my_bool ndb_use_transactions;
162 my_bool ndb_index_stat_enable;
163@@ -80,9 +76,8 @@
164 my_bool old_alter_table;
165 my_bool old_passwords;
166
167-diff -ruN a/sql/sql_partition.cc b/sql/sql_partition.cc
168---- a/sql/sql_partition.cc 2010-06-04 00:50:11.000000000 +0900
169-+++ b/sql/sql_partition.cc 2010-07-21 22:50:24.140530183 +0900
170+--- a/sql/sql_partition.cc
171++++ b/sql/sql_partition.cc
172 @@ -4381,7 +4381,12 @@
173 alter_info->no_parts= curr_part_no - new_part_no;
174 }
175@@ -97,9 +92,8 @@
176 {
177 my_error(ER_PARTITION_FUNCTION_FAILURE, MYF(0));
178 DBUG_RETURN(1);
179-diff -ruN a/sql/sql_table.cc b/sql/sql_table.cc
180---- a/sql/sql_table.cc 2010-06-04 00:50:11.000000000 +0900
181-+++ b/sql/sql_table.cc 2010-07-21 22:50:24.146531063 +0900
182+--- a/sql/sql_table.cc
183++++ b/sql/sql_table.cc
184 @@ -7003,6 +7003,10 @@
185 uint *idx_end_p;
186
187
188=== modified file 'patches/error_pad.patch'
189--- patches/error_pad.patch 2011-06-23 02:18:22 +0000
190+++ patches/error_pad.patch 2011-07-27 11:11:52 +0000
191@@ -5,9 +5,8 @@
192 #!!! notice !!!
193 # Any small change to this file in the main branch
194 # should be done or reviewed by the maintainer!
195-diff -ruN a/extra/comp_err.c b/extra/comp_err.c
196---- a/extra/comp_err.c 2010-08-03 17:24:24.000000000 +0000
197-+++ b/extra/comp_err.c 2010-09-14 16:49:28.000000000 +0000
198+--- a/extra/comp_err.c
199++++ b/extra/comp_err.c
200 @@ -30,11 +30,12 @@
201 #include <assert.h>
202 #include <my_dir.h>
203
204=== modified file 'patches/fix-bug671764.patch'
205--- patches/fix-bug671764.patch 2011-07-01 10:47:59 +0000
206+++ patches/fix-bug671764.patch 2011-07-27 11:11:52 +0000
207@@ -5,9 +5,8 @@
208 #!!! notice !!!
209 # Any small change to this file in the main branch
210 # should be done or reviewed by the maintainer!
211-diff -ruN a/configure.in b/configure.in
212---- a/configure.in 2010-11-29 18:45:47.000000000 +0000
213-+++ b/configure.in 2010-11-29 18:45:51.000000000 +0000
214+--- a/configure.in
215++++ b/configure.in
216 @@ -2776,7 +2776,7 @@
217 MAN_DROP="$MAN_DROP embedded"
218 grep -v 'embedded' $MANLISTFIL > $TMPLISTFIL ; mv -f $TMPLISTFIL $MANLISTFIL
219
220=== modified file 'patches/i_s_innodb_buffer_pool_pages.patch'
221--- patches/i_s_innodb_buffer_pool_pages.patch 2011-06-23 02:18:22 +0000
222+++ patches/i_s_innodb_buffer_pool_pages.patch 2011-07-27 11:11:52 +0000
223@@ -5,9 +5,8 @@
224 #!!! notice !!!
225 # Any small change to this file in the main branch
226 # should be done or reviewed by the maintainer!
227-diff -ruN a/storage/innodb_plugin/buf/buf0buf.c b/storage/innodb_plugin/buf/buf0buf.c
228---- a/storage/innodb_plugin/buf/buf0buf.c 2010-07-14 15:57:23.322321253 +0900
229-+++ b/storage/innodb_plugin/buf/buf0buf.c 2010-07-14 16:04:45.521321527 +0900
230+--- a/storage/innodb_plugin/buf/buf0buf.c
231++++ b/storage/innodb_plugin/buf/buf0buf.c
232 @@ -269,14 +269,6 @@
233 UNIV_INTERN ibool buf_debug_prints = FALSE;
234 #endif /* UNIV_DEBUG */
235@@ -23,9 +22,8 @@
236 #endif /* !UNIV_HOTBACKUP */
237
238 /********************************************************************//**
239-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
240---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-29 15:55:25.000000000 +0900
241-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-29 16:04:05.000000000 +0900
242+--- a/storage/innodb_plugin/handler/ha_innodb.cc
243++++ b/storage/innodb_plugin/handler/ha_innodb.cc
244 @@ -11256,6 +11256,9 @@
245 innobase_system_variables, /* system variables */
246 NULL /* reserved */
247@@ -36,9 +34,8 @@
248 i_s_innodb_trx,
249 i_s_innodb_locks,
250 i_s_innodb_lock_waits,
251-diff -ruN a/storage/innodb_plugin/handler/i_s.cc b/storage/innodb_plugin/handler/i_s.cc
252---- a/storage/innodb_plugin/handler/i_s.cc 2010-04-29 15:28:20.000000000 +0900
253-+++ b/storage/innodb_plugin/handler/i_s.cc 2010-04-29 16:04:05.000000000 +0900
254+--- a/storage/innodb_plugin/handler/i_s.cc
255++++ b/storage/innodb_plugin/handler/i_s.cc
256 @@ -42,6 +42,7 @@
257 #include "buf0buf.h" /* for buf_pool and PAGE_ZIP_MIN_SIZE */
258 #include "ha_prototypes.h" /* for innobase_convert_name() */
259@@ -753,9 +750,8 @@
260 /* Fields of the dynamic table INFORMATION_SCHEMA.innodb_trx */
261 static ST_FIELD_INFO innodb_trx_fields_info[] =
262 {
263-diff -ruN a/storage/innodb_plugin/handler/i_s.h b/storage/innodb_plugin/handler/i_s.h
264---- a/storage/innodb_plugin/handler/i_s.h 2010-04-29 15:28:20.000000000 +0900
265-+++ b/storage/innodb_plugin/handler/i_s.h 2010-04-29 16:04:05.000000000 +0900
266+--- a/storage/innodb_plugin/handler/i_s.h
267++++ b/storage/innodb_plugin/handler/i_s.h
268 @@ -26,6 +26,9 @@
269 #ifndef i_s_h
270 #define i_s_h
271@@ -766,9 +762,8 @@
272 extern struct st_mysql_plugin i_s_innodb_trx;
273 extern struct st_mysql_plugin i_s_innodb_locks;
274 extern struct st_mysql_plugin i_s_innodb_lock_waits;
275-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
276---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-29 16:03:34.000000000 +0900
277-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-29 16:04:05.000000000 +0900
278+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
279++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
280 @@ -27,5 +27,6 @@
281 {"innodb_show_status","Improvements to SHOW INNODB STATUS","Memory information and lock info fixes","http://www.percona.com/docs/wiki/percona-xtradb"},
282 {"innodb_io","Improvements to InnoDB IO","","http://www.percona.com/docs/wiki/percona-xtradb"},
283@@ -776,9 +771,8 @@
284 +{"innodb_buffer_pool_pages","Information of buffer pool content","","http://www.percona.com/docs/wiki/percona-xtradb"},
285 {NULL, NULL, NULL, NULL}
286 };
287-diff -ruN a/storage/innodb_plugin/include/buf0buf.h b/storage/innodb_plugin/include/buf0buf.h
288---- a/storage/innodb_plugin/include/buf0buf.h 2010-07-14 15:57:23.333331973 +0900
289-+++ b/storage/innodb_plugin/include/buf0buf.h 2010-07-14 16:03:45.885392395 +0900
290+--- a/storage/innodb_plugin/include/buf0buf.h
291++++ b/storage/innodb_plugin/include/buf0buf.h
292 @@ -1286,6 +1286,15 @@
293 #define BUF_POOL_ZIP_FOLD_BPAGE(b) BUF_POOL_ZIP_FOLD((buf_block_t*) (b))
294 /* @} */
295
296=== modified file 'patches/innodb_adjust_defaults.patch'
297--- patches/innodb_adjust_defaults.patch 2011-06-23 02:18:22 +0000
298+++ patches/innodb_adjust_defaults.patch 2011-07-27 11:11:52 +0000
299@@ -5,9 +5,8 @@
300 #!!! notice !!!
301 # Any small change to this file in the main branch
302 # should be done or reviewed by the maintainer!
303-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
304---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-30 16:39:14.000000000 +0900
305-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-30 16:43:26.000000000 +0900
306+--- a/storage/innodb_plugin/handler/ha_innodb.cc
307++++ b/storage/innodb_plugin/handler/ha_innodb.cc
308 @@ -11300,7 +11300,7 @@
309 static MYSQL_SYSVAR_ULONG(use_purge_thread, srv_use_purge_thread,
310 PLUGIN_VAR_RQCMDARG | PLUGIN_VAR_READONLY,
311
312=== modified file 'patches/innodb_admin_command_base.patch'
313--- patches/innodb_admin_command_base.patch 2011-06-23 02:18:22 +0000
314+++ patches/innodb_admin_command_base.patch 2011-07-27 11:11:52 +0000
315@@ -5,9 +5,8 @@
316 #!!! notice !!!
317 # Any small change to this file in the main branch
318 # should be done or reviewed by the maintainer!
319-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
320---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:27:30.222410116 +0900
321-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:27:44.073104773 +0900
322+--- a/storage/innodb_plugin/handler/ha_innodb.cc
323++++ b/storage/innodb_plugin/handler/ha_innodb.cc
324 @@ -11612,6 +11612,7 @@
325 i_s_innodb_cmpmem_reset,
326 i_s_innodb_table_stats,
327@@ -16,9 +15,8 @@
328 i_s_innodb_patches
329 mysql_declare_plugin_end;
330
331-diff -ruN a/storage/innodb_plugin/handler/i_s.cc b/storage/innodb_plugin/handler/i_s.cc
332---- a/storage/innodb_plugin/handler/i_s.cc 2010-08-27 16:22:04.261021936 +0900
333-+++ b/storage/innodb_plugin/handler/i_s.cc 2010-08-27 16:27:44.077058655 +0900
334+--- a/storage/innodb_plugin/handler/i_s.cc
335++++ b/storage/innodb_plugin/handler/i_s.cc
336 @@ -2947,3 +2947,139 @@
337 STRUCT_FLD(system_vars, NULL),
338 STRUCT_FLD(__reserved1, NULL)
339@@ -159,9 +157,8 @@
340 + STRUCT_FLD(system_vars, NULL),
341 + STRUCT_FLD(__reserved1, NULL)
342 +};
343-diff -ruN a/storage/innodb_plugin/handler/i_s.h b/storage/innodb_plugin/handler/i_s.h
344---- a/storage/innodb_plugin/handler/i_s.h 2010-08-27 16:22:04.261987654 +0900
345-+++ b/storage/innodb_plugin/handler/i_s.h 2010-08-27 16:27:44.079059299 +0900
346+--- a/storage/innodb_plugin/handler/i_s.h
347++++ b/storage/innodb_plugin/handler/i_s.h
348 @@ -40,5 +40,6 @@
349 extern struct st_mysql_plugin i_s_innodb_rseg;
350 extern struct st_mysql_plugin i_s_innodb_table_stats;
351@@ -169,9 +166,8 @@
352 +extern struct st_mysql_plugin i_s_innodb_admin_command;
353
354 #endif /* i_s_h */
355-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
356---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:27:30.223001821 +0900
357-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:27:44.074104321 +0900
358+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
359++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
360 @@ -38,5 +38,6 @@
361 {"innodb_stats","Additional features about InnoDB statistics/optimizer","","http://www.percona.com/docs/wiki/percona-xtradb"},
362 {"innodb_recovery_patches","Bugfixes and adjustments about recovery process","","http://www.percona.com/docs/wiki/percona-xtradb"},
363
364=== modified file 'patches/innodb_buffer_pool_shm.patch'
365--- patches/innodb_buffer_pool_shm.patch 2011-07-22 05:41:42 +0000
366+++ patches/innodb_buffer_pool_shm.patch 2011-07-27 11:11:52 +0000
367@@ -5,9 +5,8 @@
368 #!!! notice !!!
369 # Any small change to this file in the main branch
370 # should be done or reviewed by the maintainer!
371-diff -ruN a/storage/innodb_plugin/buf/buf0buf.c b/storage/innodb_plugin/buf/buf0buf.c
372---- a/storage/innodb_plugin/buf/buf0buf.c 2010-07-14 16:32:49.669501663 +0900
373-+++ b/storage/innodb_plugin/buf/buf0buf.c 2010-07-14 16:40:16.149438645 +0900
374+--- a/storage/innodb_plugin/buf/buf0buf.c
375++++ b/storage/innodb_plugin/buf/buf0buf.c
376 @@ -773,10 +773,12 @@
377 buf_block_t* block;
378 byte* frame;
379@@ -32,9 +31,8 @@
380 /* Init block structs and assign frames for them. Then we
381 assign the frames to the first blocks (we already mapped the
382 memory above). */
383-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
384---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-07-14 16:34:18.597725479 +0900
385-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-07-14 16:40:16.159323612 +0900
386+--- a/storage/innodb_plugin/handler/ha_innodb.cc
387++++ b/storage/innodb_plugin/handler/ha_innodb.cc
388 @@ -198,6 +198,8 @@
389 static my_bool innobase_create_status_file = FALSE;
390 static my_bool innobase_stats_on_metadata = TRUE;
391
392=== modified file 'patches/innodb_bug60788.patch'
393--- patches/innodb_bug60788.patch 2011-07-22 05:41:42 +0000
394+++ patches/innodb_bug60788.patch 2011-07-27 11:11:52 +0000
395@@ -7,10 +7,9 @@
396 # Changes InnoDB IO code so that fsync(), pread() and pwrite() are restarted
397 # when interrupted by a signal.
398 #
399-diff -ruN a/storage/innodb_plugin/os/os0file.c b/storage/innodb_plugin/os/os0file.c
400---- a/storage/innodb_plugin/os/os0file.c 2011-04-18 13:21:07.000000000 +0400
401-+++ b/storage/innodb_plugin/os/os0file.c 2011-04-18 17:38:21.000000000 +0400
402-@@ -1987,6 +1987,9 @@
403+--- a/storage/innodb_plugin/os/os0file.c
404++++ b/storage/innodb_plugin/os/os0file.c
405+@@ -1988,6 +1988,9 @@
406 failures++;
407
408 retry = TRUE;
409@@ -20,7 +19,7 @@
410 } else {
411
412 retry = FALSE;
413-@@ -2119,6 +2122,7 @@
414+@@ -2120,6 +2123,7 @@
415 off_t offs;
416 #if defined(HAVE_PREAD) && !defined(HAVE_BROKEN_PREAD)
417 ssize_t n_bytes;
418@@ -28,7 +27,7 @@
419 #endif /* HAVE_PREAD && !HAVE_BROKEN_PREAD */
420 ulint sec;
421 ulint ms;
422-@@ -2159,7 +2163,18 @@
423+@@ -2160,7 +2164,18 @@
424 os_n_pending_reads++;
425 os_mutex_exit(os_file_count_mutex);
426
427@@ -48,7 +47,7 @@
428
429 os_mutex_enter(os_file_count_mutex);
430 os_file_n_pending_preads--;
431-@@ -2178,6 +2193,7 @@
432+@@ -2179,6 +2194,7 @@
433 {
434 off_t ret_offset;
435 ssize_t ret;
436@@ -56,7 +55,7 @@
437 #ifndef UNIV_HOTBACKUP
438 ulint i;
439 #endif /* !UNIV_HOTBACKUP */
440-@@ -2198,7 +2214,17 @@
441+@@ -2199,7 +2215,17 @@
442 if (ret_offset < 0) {
443 ret = -1;
444 } else {
445@@ -75,7 +74,7 @@
446 }
447
448 #ifndef UNIV_HOTBACKUP
449-@@ -2237,6 +2263,7 @@
450+@@ -2238,6 +2264,7 @@
451 offset */
452 {
453 ssize_t ret;
454@@ -83,7 +82,7 @@
455 off_t offs;
456
457 ut_a((offset & 0xFFFFFFFFUL) == offset);
458-@@ -2264,7 +2291,18 @@
459+@@ -2265,7 +2292,18 @@
460 os_n_pending_writes++;
461 os_mutex_exit(os_file_count_mutex);
462
463@@ -103,7 +102,7 @@
464
465 os_mutex_enter(os_file_count_mutex);
466 os_file_n_pending_pwrites--;
467-@@ -2311,7 +2349,17 @@
468+@@ -2312,7 +2350,17 @@
469 goto func_exit;
470 }
471
472
473=== modified file 'patches/innodb_deadlock_count.patch'
474--- patches/innodb_deadlock_count.patch 2011-06-23 02:18:22 +0000
475+++ patches/innodb_deadlock_count.patch 2011-07-27 11:11:52 +0000
476@@ -5,9 +5,8 @@
477 #!!! notice !!!
478 # Any small change to this file in the main branch
479 # should be done or reviewed by the maintainer!
480-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
481---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-10 15:32:14.468241191 +0400
482-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-10 15:32:14.926992081 +0400
483+--- a/storage/innodb_plugin/handler/ha_innodb.cc
484++++ b/storage/innodb_plugin/handler/ha_innodb.cc
485 @@ -566,6 +566,8 @@
486 (char*) &export_vars.innodb_data_written, SHOW_LONG},
487 {"dblwr_pages_written",
488@@ -17,9 +16,8 @@
489 {"dblwr_writes",
490 (char*) &export_vars.innodb_dblwr_writes, SHOW_LONG},
491 {"dict_tables",
492-diff -ruN a/storage/innodb_plugin/include/lock0lock.h b/storage/innodb_plugin/include/lock0lock.h
493---- a/storage/innodb_plugin/include/lock0lock.h 2010-08-10 15:32:14.478241628 +0400
494-+++ b/storage/innodb_plugin/include/lock0lock.h 2010-08-10 15:32:14.926992081 +0400
495+--- a/storage/innodb_plugin/include/lock0lock.h
496++++ b/storage/innodb_plugin/include/lock0lock.h
497 @@ -43,6 +43,7 @@
498 #endif /* UNIV_DEBUG */
499 /* Buffer for storing information about the most recent deadlock error */
500@@ -28,9 +26,8 @@
501
502 /*********************************************************************//**
503 Gets the size of a lock struct.
504-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
505---- a/storage/innodb_plugin/include/srv0srv.h 2010-08-10 15:32:14.478241628 +0400
506-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-08-10 15:32:14.936991959 +0400
507+--- a/storage/innodb_plugin/include/srv0srv.h
508++++ b/storage/innodb_plugin/include/srv0srv.h
509 @@ -689,6 +689,7 @@
510 ulint innodb_buffer_pool_write_requests;/*!< srv_buf_pool_write_requests */
511 ulint innodb_buffer_pool_read_ahead; /*!< srv_read_ahead */
512@@ -39,9 +36,8 @@
513 ulint innodb_dblwr_pages_written; /*!< srv_dblwr_pages_written */
514 ulint innodb_dblwr_writes; /*!< srv_dblwr_writes */
515 ibool innodb_have_atomic_builtins; /*!< HAVE_ATOMIC_BUILTINS */
516-diff -ruN a/storage/innodb_plugin/lock/lock0lock.c b/storage/innodb_plugin/lock/lock0lock.c
517---- a/storage/innodb_plugin/lock/lock0lock.c 2010-08-10 15:32:14.478241628 +0400
518-+++ b/storage/innodb_plugin/lock/lock0lock.c 2010-08-10 15:32:14.936991959 +0400
519+--- a/storage/innodb_plugin/lock/lock0lock.c
520++++ b/storage/innodb_plugin/lock/lock0lock.c
521 @@ -3330,6 +3330,7 @@
522 break;
523
524@@ -50,9 +46,8 @@
525 fputs("*** WE ROLL BACK TRANSACTION (2)\n",
526 lock_latest_err_file);
527 break;
528-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
529---- a/storage/innodb_plugin/srv/srv0srv.c 2010-08-10 15:32:14.478241628 +0400
530-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-08-10 15:32:14.936991959 +0400
531+--- a/storage/innodb_plugin/srv/srv0srv.c
532++++ b/storage/innodb_plugin/srv/srv0srv.c
533 @@ -444,7 +444,7 @@
534 static ulint srv_n_rows_updated_old = 0;
535 static ulint srv_n_rows_deleted_old = 0;
536
537=== modified file 'patches/innodb_dict_size_limit.patch'
538--- patches/innodb_dict_size_limit.patch 2011-06-23 02:18:22 +0000
539+++ patches/innodb_dict_size_limit.patch 2011-07-27 11:11:52 +0000
540@@ -5,9 +5,8 @@
541 #!!! notice !!!
542 # Any small change to this file in the main branch
543 # should be done or reviewed by the maintainer!
544-diff -ruN a/storage/innodb_plugin/btr/btr0sea.c b/storage/innodb_plugin/btr/btr0sea.c
545---- a/storage/innodb_plugin/btr/btr0sea.c 2010-08-04 02:24:19.000000000 +0900
546-+++ b/storage/innodb_plugin/btr/btr0sea.c 2010-08-27 16:09:42.926020757 +0900
547+--- a/storage/innodb_plugin/btr/btr0sea.c
548++++ b/storage/innodb_plugin/btr/btr0sea.c
549 @@ -1173,6 +1173,173 @@
550 mem_free(folds);
551 }
552@@ -182,9 +181,8 @@
553 /********************************************************************//**
554 Drops a page hash index when a page is freed from a fseg to the file system.
555 Drops possible hash index if the page happens to be in the buffer pool. */
556-diff -ruN a/storage/innodb_plugin/dict/dict0boot.c b/storage/innodb_plugin/dict/dict0boot.c
557---- a/storage/innodb_plugin/dict/dict0boot.c 2010-08-04 02:24:19.000000000 +0900
558-+++ b/storage/innodb_plugin/dict/dict0boot.c 2010-08-27 16:09:42.927104460 +0900
559+--- a/storage/innodb_plugin/dict/dict0boot.c
560++++ b/storage/innodb_plugin/dict/dict0boot.c
561 @@ -283,6 +283,7 @@
562 system tables */
563 /*-------------------------*/
564@@ -217,9 +215,8 @@
565
566 dict_mem_table_add_col(table, heap, "INDEX_ID", DATA_BINARY, 0, 0);
567 dict_mem_table_add_col(table, heap, "POS", DATA_INT, 0, 4);
568-diff -ruN a/storage/innodb_plugin/dict/dict0crea.c b/storage/innodb_plugin/dict/dict0crea.c
569---- a/storage/innodb_plugin/dict/dict0crea.c 2010-08-04 02:24:19.000000000 +0900
570-+++ b/storage/innodb_plugin/dict/dict0crea.c 2010-08-27 16:09:42.928062387 +0900
571+--- a/storage/innodb_plugin/dict/dict0crea.c
572++++ b/storage/innodb_plugin/dict/dict0crea.c
573 @@ -1211,6 +1211,9 @@
574 /* Foreign constraint system tables have already been
575 created, and they are ok */
576@@ -242,9 +239,8 @@
577 row_mysql_unlock_data_dictionary(trx);
578
579 trx_free_for_mysql(trx);
580-diff -ruN a/storage/innodb_plugin/dict/dict0dict.c b/storage/innodb_plugin/dict/dict0dict.c
581---- a/storage/innodb_plugin/dict/dict0dict.c 2010-08-04 02:24:19.000000000 +0900
582-+++ b/storage/innodb_plugin/dict/dict0dict.c 2010-08-27 16:09:42.930057360 +0900
583+--- a/storage/innodb_plugin/dict/dict0dict.c
584++++ b/storage/innodb_plugin/dict/dict0dict.c
585 @@ -613,6 +613,8 @@
586
587 table = dict_table_get_on_id_low(table_id);
588@@ -340,9 +336,8 @@
589 /* We always create search info whether or not adaptive
590 hash index is enabled or not. */
591 info = index->search_info;
592-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
593---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:09:22.832057795 +0900
594-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:09:42.939059876 +0900
595+--- a/storage/innodb_plugin/handler/ha_innodb.cc
596++++ b/storage/innodb_plugin/handler/ha_innodb.cc
597 @@ -560,6 +560,8 @@
598 (char*) &export_vars.innodb_dblwr_pages_written, SHOW_LONG},
599 {"dblwr_writes",
600@@ -372,9 +367,8 @@
601 MYSQL_SYSVAR(use_sys_malloc),
602 MYSQL_SYSVAR(change_buffering),
603 #if defined UNIV_DEBUG || defined UNIV_IBUF_DEBUG
604-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
605---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:09:22.832057795 +0900
606-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:09:42.944058939 +0900
607+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
608++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
609 @@ -32,5 +32,6 @@
610 {"innodb_extra_rseg","allow to create extra rollback segments","When create new db, the new parameter allows to create more rollback segments","http://www.percona.com/docs/wiki/percona-xtradb"},
611 {"innodb_overwrite_relay_log_info","overwrite relay-log.info when slave recovery","Building as plugin, it is not used.","http://www.percona.com/docs/wiki/percona-xtradb:innodb_overwrite_relay_log_info"},
612@@ -382,9 +376,8 @@
613 +{"innodb_dict_size_limit","Limit dictionary cache size","Variable innodb_dict_size_limit in bytes","http://www.percona.com/docs/wiki/percona-xtradb"},
614 {NULL, NULL, NULL, NULL}
615 };
616-diff -ruN a/storage/innodb_plugin/ibuf/ibuf0ibuf.c b/storage/innodb_plugin/ibuf/ibuf0ibuf.c
617---- a/storage/innodb_plugin/ibuf/ibuf0ibuf.c 2010-08-27 15:54:18.077987587 +0900
618-+++ b/storage/innodb_plugin/ibuf/ibuf0ibuf.c 2010-08-27 16:09:42.949020590 +0900
619+--- a/storage/innodb_plugin/ibuf/ibuf0ibuf.c
620++++ b/storage/innodb_plugin/ibuf/ibuf0ibuf.c
621 @@ -514,6 +514,7 @@
622
623 /* Use old-style record format for the insert buffer. */
624@@ -393,9 +386,8 @@
625
626 dict_mem_table_add_col(table, heap, "DUMMY_COLUMN", DATA_BINARY, 0, 0);
627
628-diff -ruN a/storage/innodb_plugin/include/btr0sea.h b/storage/innodb_plugin/include/btr0sea.h
629---- a/storage/innodb_plugin/include/btr0sea.h 2010-08-04 02:24:19.000000000 +0900
630-+++ b/storage/innodb_plugin/include/btr0sea.h 2010-08-27 16:09:42.951112397 +0900
631+--- a/storage/innodb_plugin/include/btr0sea.h
632++++ b/storage/innodb_plugin/include/btr0sea.h
633 @@ -140,6 +140,13 @@
634 s- or x-latched, or an index page
635 for which we know that
636@@ -410,9 +402,8 @@
637 /********************************************************************//**
638 Drops a page hash index when a page is freed from a fseg to the file system.
639 Drops possible hash index if the page happens to be in the buffer pool. */
640-diff -ruN a/storage/innodb_plugin/include/dict0dict.h b/storage/innodb_plugin/include/dict0dict.h
641---- a/storage/innodb_plugin/include/dict0dict.h 2010-08-04 02:24:19.000000000 +0900
642-+++ b/storage/innodb_plugin/include/dict0dict.h 2010-08-27 16:09:42.953188223 +0900
643+--- a/storage/innodb_plugin/include/dict0dict.h
644++++ b/storage/innodb_plugin/include/dict0dict.h
645 @@ -1131,6 +1131,12 @@
646 /*====================================*/
647 dict_table_t* table, /*!< in: table */
648@@ -426,9 +417,8 @@
649 /* Buffers for storing detailed information about the latest foreign key
650 and unique key errors */
651 extern FILE* dict_foreign_err_file;
652-diff -ruN a/storage/innodb_plugin/include/dict0dict.ic b/storage/innodb_plugin/include/dict0dict.ic
653---- a/storage/innodb_plugin/include/dict0dict.ic 2010-08-04 02:24:19.000000000 +0900
654-+++ b/storage/innodb_plugin/include/dict0dict.ic 2010-08-27 16:09:42.955104393 +0900
655+--- a/storage/innodb_plugin/include/dict0dict.ic
656++++ b/storage/innodb_plugin/include/dict0dict.ic
657 @@ -786,6 +786,13 @@
658 HASH_SEARCH(name_hash, dict_sys->table_hash, table_fold,
659 dict_table_t*, table, ut_ad(table->cached),
660@@ -456,9 +446,8 @@
661 ut_ad(!table || table->cached);
662
663 /* TODO: should get the type information from MySQL */
664-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
665---- a/storage/innodb_plugin/include/srv0srv.h 2010-08-27 16:09:22.833022367 +0900
666-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-08-27 16:09:42.957104575 +0900
667+--- a/storage/innodb_plugin/include/srv0srv.h
668++++ b/storage/innodb_plugin/include/srv0srv.h
669 @@ -219,7 +219,7 @@
670 extern ulint srv_adaptive_checkpoint;
671
672@@ -476,9 +465,8 @@
673 ulint innodb_buffer_pool_pages_total; /*!< Buffer pool size */
674 ulint innodb_buffer_pool_pages_data; /*!< Data pages */
675 ulint innodb_buffer_pool_pages_dirty; /*!< Dirty data pages */
676-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
677---- a/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:09:22.834056830 +0900
678-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:09:42.960059093 +0900
679+--- a/storage/innodb_plugin/srv/srv0srv.c
680++++ b/storage/innodb_plugin/srv/srv0srv.c
681 @@ -391,6 +391,7 @@
682 UNIV_INTERN ulint srv_adaptive_checkpoint = 0; /* 0: none 1: reflex 2: estimate */
683
684
685=== modified file 'patches/innodb_expand_fast_index_creation.patch'
686--- patches/innodb_expand_fast_index_creation.patch 2011-06-23 02:18:22 +0000
687+++ patches/innodb_expand_fast_index_creation.patch 2011-07-27 11:11:52 +0000
688@@ -4,9 +4,8 @@
689 # Expands the applicability of InnoDB fast index creation to mysqldump,
690 # ALTER TABLE and OPTIMIZE TABLE.
691 #
692-diff -ruN a/client/client_priv.h b/client/client_priv.h
693---- a/client/client_priv.h 2011-04-11 23:22:54.000000000 +0400
694-+++ b/client/client_priv.h 2011-04-11 23:22:55.000000000 +0400
695+--- a/client/client_priv.h
696++++ b/client/client_priv.h
697 @@ -97,5 +97,6 @@
698 OPT_FIRST_SLAVE,
699 OPT_ALL,
700@@ -14,9 +13,8 @@
701 + OPT_INNODB_OPTIMIZE_KEYS,
702 OPT_MAX_CLIENT_OPTION
703 };
704-diff -ruN a/client/mysqldump.c b/client/mysqldump.c
705---- a/client/mysqldump.c 2011-04-11 23:22:49.000000000 +0400
706-+++ b/client/mysqldump.c 2011-04-11 23:22:55.000000000 +0400
707+--- a/client/mysqldump.c
708++++ b/client/mysqldump.c
709 @@ -45,6 +45,7 @@
710 #include <m_ctype.h>
711 #include <hash.h>
712@@ -171,9 +169,8 @@
713 /* Moved enable keys to before unlock per bug 15977 */
714 if (opt_disable_keys)
715 {
716-diff -ruN /dev/null b/mysql-test/r/percona_mysqldump_innodb_optimize_keys.result
717---- /dev/null 1970-01-01 00:00:00.000000000 +0000
718-+++ b/mysql-test/r/percona_mysqldump_innodb_optimize_keys.result 2011-04-11 23:22:55.000000000 +0400
719+--- /dev/null
720++++ b/mysql-test/r/percona_mysqldump_innodb_optimize_keys.result
721 @@ -0,0 +1,109 @@
722 +#
723 +# Test the --innodb-optimize-keys option.
724@@ -284,9 +281,8 @@
725 +
726 +######################################
727 +DROP TABLE t1, t2;
728-diff -ruN a/mysql-test/suite/innodb_plugin/r/innodb.result b/mysql-test/suite/innodb_plugin/r/innodb.result
729---- a/mysql-test/suite/innodb_plugin/r/innodb.result 2011-02-11 22:49:37.000000000 +0300
730-+++ b/mysql-test/suite/innodb_plugin/r/innodb.result 2011-04-11 23:22:55.000000000 +0400
731+--- a/mysql-test/suite/innodb_plugin/r/innodb.result
732++++ b/mysql-test/suite/innodb_plugin/r/innodb.result
733 @@ -1679,7 +1679,7 @@
734 71
735 SELECT variable_value - @innodb_rows_inserted_orig FROM information_schema.global_status WHERE LOWER(variable_name) = 'innodb_rows_inserted';
736@@ -296,9 +292,8 @@
737 SELECT variable_value - @innodb_rows_updated_orig FROM information_schema.global_status WHERE LOWER(variable_name) = 'innodb_rows_updated';
738 variable_value - @innodb_rows_updated_orig
739 866
740-diff -ruN a/mysql-test/suite/innodb_plugin/t/innodb-index.test b/mysql-test/suite/innodb_plugin/t/innodb-index.test
741---- a/mysql-test/suite/innodb_plugin/t/innodb-index.test 2011-02-11 22:49:34.000000000 +0300
742-+++ b/mysql-test/suite/innodb_plugin/t/innodb-index.test 2011-04-11 23:22:55.000000000 +0400
743+--- a/mysql-test/suite/innodb_plugin/t/innodb-index.test
744++++ b/mysql-test/suite/innodb_plugin/t/innodb-index.test
745 @@ -38,6 +38,11 @@
746 show create table t1;
747 --error ER_MULTIPLE_PRI_KEY
748@@ -311,9 +306,8 @@
749 --error ER_DUP_ENTRY
750 alter table t1 drop primary key, add primary key (b);
751 create unique index c on t1 (c);
752-diff -ruN a/mysql-test/suite/innodb_plugin/t/innodb.test b/mysql-test/suite/innodb_plugin/t/innodb.test
753---- a/mysql-test/suite/innodb_plugin/t/innodb.test 2011-02-11 22:49:35.000000000 +0300
754-+++ b/mysql-test/suite/innodb_plugin/t/innodb.test 2011-04-11 23:22:55.000000000 +0400
755+--- a/mysql-test/suite/innodb_plugin/t/innodb.test
756++++ b/mysql-test/suite/innodb_plugin/t/innodb.test
757 @@ -15,6 +15,12 @@
758
759 -- source include/have_innodb_plugin.inc
760@@ -327,9 +321,8 @@
761 let $MYSQLD_DATADIR= `select @@datadir`;
762
763 # Save the original values of some variables in order to be able to
764-diff -ruN /dev/null b/mysql-test/t/percona_mysqldump_innodb_optimize_keys.test
765---- /dev/null 1970-01-01 00:00:00.000000000 +0000
766-+++ b/mysql-test/t/percona_mysqldump_innodb_optimize_keys.test 2011-04-11 23:22:55.000000000 +0400
767+--- /dev/null
768++++ b/mysql-test/t/percona_mysqldump_innodb_optimize_keys.test
769 @@ -0,0 +1,62 @@
770 +# Embedded server doesn't support external clients
771 +--source include/not_embedded.inc
772@@ -393,9 +386,8 @@
773 +
774 +# Wait till we reached the initial number of concurrent sessions
775 +--source include/wait_until_count_sessions.inc
776-diff -ruN a/sql/sql_lex.cc b/sql/sql_lex.cc
777---- a/sql/sql_lex.cc 2011-04-11 23:22:49.000000000 +0400
778-+++ b/sql/sql_lex.cc 2011-04-11 23:22:55.000000000 +0400
779+--- a/sql/sql_lex.cc
780++++ b/sql/sql_lex.cc
781 @@ -1494,6 +1494,9 @@
782 alter_list(rhs.alter_list, mem_root),
783 key_list(rhs.key_list, mem_root),
784@@ -414,9 +406,8 @@
785 /* partition_names are not deeply copied currently */
786 }
787
788-diff -ruN a/sql/sql_lex.h b/sql/sql_lex.h
789---- a/sql/sql_lex.h 2011-04-11 23:22:50.000000000 +0400
790-+++ b/sql/sql_lex.h 2011-04-11 23:22:55.000000000 +0400
791+--- a/sql/sql_lex.h
792++++ b/sql/sql_lex.h
793 @@ -896,6 +896,9 @@
794 List<Alter_column> alter_list;
795 List<Key> key_list;
796@@ -446,9 +437,8 @@
797 flags= 0;
798 keys_onoff= LEAVE_AS_IS;
799 tablespace_op= NO_TABLESPACE_OP;
800-diff -ruN a/sql/sql_table.cc b/sql/sql_table.cc
801---- a/sql/sql_table.cc 2011-04-11 23:22:40.000000000 +0400
802-+++ b/sql/sql_table.cc 2011-04-11 23:44:23.000000000 +0400
803+--- a/sql/sql_table.cc
804++++ b/sql/sql_table.cc
805 @@ -2559,7 +2559,7 @@
806 file The handler for the new table.
807 key_info_buffer OUT An array of KEY structs for the indexes.
808
809=== modified file 'patches/innodb_expand_import.patch'
810--- patches/innodb_expand_import.patch 2011-06-23 02:18:22 +0000
811+++ patches/innodb_expand_import.patch 2011-07-27 11:11:52 +0000
812@@ -5,9 +5,8 @@
813 #!!! notice !!!
814 # Any small change to this file in the main branch
815 # should be done or reviewed by the maintainer!
816-diff -ruN a/storage/innodb_plugin/fil/fil0fil.c b/storage/innodb_plugin/fil/fil0fil.c
817---- a/storage/innodb_plugin/fil/fil0fil.c 2010-04-29 15:44:28.000000000 +0900
818-+++ b/storage/innodb_plugin/fil/fil0fil.c 2010-04-30 10:43:13.000000000 +0900
819+--- a/storage/innodb_plugin/fil/fil0fil.c
820++++ b/storage/innodb_plugin/fil/fil0fil.c
821 @@ -40,6 +40,12 @@
822 #include "dict0dict.h"
823 #include "page0page.h"
824@@ -497,9 +496,8 @@
825 ut_free(buf2);
826
827 if (UNIV_UNLIKELY(space_id != id
828-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
829---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-29 16:54:08.000000000 +0900
830-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-30 10:28:05.000000000 +0900
831+--- a/storage/innodb_plugin/handler/ha_innodb.cc
832++++ b/storage/innodb_plugin/handler/ha_innodb.cc
833 @@ -7125,6 +7125,14 @@
834 err = row_discard_tablespace_for_mysql(dict_table->name, trx);
835 } else {
836@@ -535,9 +533,8 @@
837 MYSQL_SYSVAR(extra_rsegments),
838 MYSQL_SYSVAR(dict_size_limit),
839 MYSQL_SYSVAR(use_sys_malloc),
840-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
841---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-29 18:58:20.000000000 +0900
842-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-30 10:28:05.000000000 +0900
843+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
844++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
845 @@ -32,6 +32,7 @@
846 {"innodb_extra_rseg","allow to create extra rollback segments","When create new db, the new parameter allows to create more rollback segments","http://www.percona.com/docs/wiki/percona-xtradb"},
847 {"innodb_overwrite_relay_log_info","overwrite relay-log.info when slave recovery","Building as plugin, it is not used.","http://www.percona.com/docs/wiki/percona-xtradb:innodb_overwrite_relay_log_info"},
848@@ -546,9 +543,8 @@
849 {"innodb_dict_size_limit","Limit dictionary cache size","Variable innodb_dict_size_limit in bytes","http://www.percona.com/docs/wiki/percona-xtradb"},
850 {"innodb_split_buf_pool_mutex","More fix of buffer_pool mutex","Spliting buf_pool_mutex and optimizing based on innodb_opt_lru_count","http://www.percona.com/docs/wiki/percona-xtradb"},
851 {NULL, NULL, NULL, NULL}
852-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
853---- a/storage/innodb_plugin/include/srv0srv.h 2010-04-29 16:54:08.000000000 +0900
854-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-04-30 10:28:05.000000000 +0900
855+--- a/storage/innodb_plugin/include/srv0srv.h
856++++ b/storage/innodb_plugin/include/srv0srv.h
857 @@ -218,6 +218,8 @@
858 extern ulint srv_read_ahead;
859 extern ulint srv_adaptive_checkpoint;
860@@ -558,9 +554,8 @@
861 extern ulint srv_extra_rsegments;
862 extern ulint srv_dict_size_limit;
863 /*-------------------------------------------*/
864-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
865---- a/storage/innodb_plugin/srv/srv0srv.c 2010-04-29 18:58:20.000000000 +0900
866-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-04-30 10:28:05.000000000 +0900
867+--- a/storage/innodb_plugin/srv/srv0srv.c
868++++ b/storage/innodb_plugin/srv/srv0srv.c
869 @@ -390,6 +390,8 @@
870 UNIV_INTERN ulint srv_read_ahead = 3; /* 1: random 2: linear 3: Both */
871 UNIV_INTERN ulint srv_adaptive_checkpoint = 0; /* 0: none 1: reflex 2: estimate */
872
873=== modified file 'patches/innodb_expand_undo_slots.patch'
874--- patches/innodb_expand_undo_slots.patch 2011-06-23 02:18:22 +0000
875+++ patches/innodb_expand_undo_slots.patch 2011-07-27 11:11:52 +0000
876@@ -5,9 +5,8 @@
877 #!!! notice !!!
878 # Any small change to this file in the main branch
879 # should be done or reviewed by the maintainer!
880-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
881---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-29 16:06:22.000000000 +0900
882-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-29 16:06:59.000000000 +0900
883+--- a/storage/innodb_plugin/handler/ha_innodb.cc
884++++ b/storage/innodb_plugin/handler/ha_innodb.cc
885 @@ -165,6 +165,7 @@
886 #endif /* UNIV_LOG_ARCHIVE */
887 static my_bool innobase_use_doublewrite = TRUE;
888@@ -47,9 +46,8 @@
889 MYSQL_SYSVAR(fast_shutdown),
890 MYSQL_SYSVAR(file_io_threads),
891 MYSQL_SYSVAR(read_io_threads),
892-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
893---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-29 16:06:22.000000000 +0900
894-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-29 16:06:59.000000000 +0900
895+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
896++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
897 @@ -28,5 +28,6 @@
898 {"innodb_io","Improvements to InnoDB IO","","http://www.percona.com/docs/wiki/percona-xtradb"},
899 {"innodb_opt_lru_count","Fix of buffer_pool mutex","Decreases contention on buffer_pool mutex on LRU operations","http://www.percona.com/docs/wiki/percona-xtradb"},
900@@ -57,9 +55,8 @@
901 +{"innodb_expand_undo_slots","expandable maximum number of undo slots","from 1024 (default) to about 4000","http://www.percona.com/docs/wiki/percona-xtradb"},
902 {NULL, NULL, NULL, NULL}
903 };
904-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
905---- a/storage/innodb_plugin/include/srv0srv.h 2010-04-29 15:55:25.000000000 +0900
906-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-04-29 16:06:59.000000000 +0900
907+--- a/storage/innodb_plugin/include/srv0srv.h
908++++ b/storage/innodb_plugin/include/srv0srv.h
909 @@ -112,6 +112,8 @@
910 extern ulint* srv_data_file_sizes;
911 extern ulint* srv_data_file_is_raw_partition;
912@@ -69,9 +66,8 @@
913 extern ibool srv_auto_extend_last_data_file;
914 extern ulint srv_last_file_size_max;
915 extern char** srv_log_group_home_dirs;
916-diff -ruN a/storage/innodb_plugin/include/trx0rseg.h b/storage/innodb_plugin/include/trx0rseg.h
917---- a/storage/innodb_plugin/include/trx0rseg.h 2010-04-06 23:07:13.000000000 +0900
918-+++ b/storage/innodb_plugin/include/trx0rseg.h 2010-04-29 16:06:59.000000000 +0900
919+--- a/storage/innodb_plugin/include/trx0rseg.h
920++++ b/storage/innodb_plugin/include/trx0rseg.h
921 @@ -123,8 +123,11 @@
922 trx_rseg_t* rseg); /* in, own: instance to free */
923
924@@ -85,9 +81,8 @@
925
926 /* Maximum number of transactions supported by a single rollback segment */
927 #define TRX_RSEG_MAX_N_TRXS (TRX_RSEG_N_SLOTS / 2)
928-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
929---- a/storage/innodb_plugin/srv/srv0srv.c 2010-04-29 15:55:25.000000000 +0900
930-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-04-29 16:06:59.000000000 +0900
931+--- a/storage/innodb_plugin/srv/srv0srv.c
932++++ b/storage/innodb_plugin/srv/srv0srv.c
933 @@ -142,6 +142,8 @@
934 /* size in database pages */
935 UNIV_INTERN ulint* srv_data_file_sizes = NULL;
936@@ -97,9 +92,8 @@
937 /* if TRUE, then we auto-extend the last data file */
938 UNIV_INTERN ibool srv_auto_extend_last_data_file = FALSE;
939 /* if != 0, this tells the max size auto-extending may increase the
940-diff -ruN a/storage/innodb_plugin/trx/trx0undo.c b/storage/innodb_plugin/trx/trx0undo.c
941---- a/storage/innodb_plugin/trx/trx0undo.c 2010-04-06 23:07:14.000000000 +0900
942-+++ b/storage/innodb_plugin/trx/trx0undo.c 2010-04-29 16:06:59.000000000 +0900
943+--- a/storage/innodb_plugin/trx/trx0undo.c
944++++ b/storage/innodb_plugin/trx/trx0undo.c
945 @@ -1395,9 +1395,47 @@
946 rseg_header = trx_rsegf_get_new(rseg->space, rseg->zip_size,
947 rseg->page_no, &mtr);
948
949=== modified file 'patches/innodb_extend_slow.patch'
950--- patches/innodb_extend_slow.patch 2011-07-22 05:41:42 +0000
951+++ patches/innodb_extend_slow.patch 2011-07-27 11:11:52 +0000
952@@ -5,9 +5,8 @@
953 #!!! notice !!!
954 # Any small change to this file in the main branch
955 # should be done or reviewed by the maintainer!
956-diff -ruN a/storage/innodb_plugin/buf/buf0buf.c b/storage/innodb_plugin/buf/buf0buf.c
957---- a/storage/innodb_plugin/buf/buf0buf.c 2010-08-27 16:13:11.061058561 +0900
958-+++ b/storage/innodb_plugin/buf/buf0buf.c 2010-08-27 16:30:47.341987400 +0900
959+--- a/storage/innodb_plugin/buf/buf0buf.c
960++++ b/storage/innodb_plugin/buf/buf0buf.c
961 @@ -51,6 +51,40 @@
962 #include "dict0dict.h"
963 #include "log0recv.h"
964@@ -238,9 +237,8 @@
965 return(TRUE);
966 }
967
968-diff -ruN a/storage/innodb_plugin/buf/buf0rea.c b/storage/innodb_plugin/buf/buf0rea.c
969---- a/storage/innodb_plugin/buf/buf0rea.c 2010-08-27 16:23:31.014020792 +0900
970-+++ b/storage/innodb_plugin/buf/buf0rea.c 2010-08-27 16:30:47.342987531 +0900
971+--- a/storage/innodb_plugin/buf/buf0rea.c
972++++ b/storage/innodb_plugin/buf/buf0rea.c
973 @@ -75,7 +75,8 @@
974 treat the tablespace as dropped; this is a timestamp we
975 use to stop dangling page reads from a tablespace
976@@ -334,9 +332,8 @@
977 }
978 }
979
980-diff -ruN a/storage/innodb_plugin/fil/fil0fil.c b/storage/innodb_plugin/fil/fil0fil.c
981---- a/storage/innodb_plugin/fil/fil0fil.c 2010-08-27 16:15:55.187400372 +0900
982-+++ b/storage/innodb_plugin/fil/fil0fil.c 2010-08-27 16:30:47.346992376 +0900
983+--- a/storage/innodb_plugin/fil/fil0fil.c
984++++ b/storage/innodb_plugin/fil/fil0fil.c
985 @@ -4373,7 +4373,7 @@
986 node->name, node->handle, buf,
987 offset_low, offset_high,
988@@ -375,9 +372,8 @@
989 #endif
990 ut_a(ret);
991
992-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
993---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:30:34.589021493 +0900
994-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:30:47.356987871 +0900
995+--- a/storage/innodb_plugin/handler/ha_innodb.cc
996++++ b/storage/innodb_plugin/handler/ha_innodb.cc
997 @@ -1391,6 +1391,16 @@
998 trx->check_unique_secondary = !thd_test_options(
999 thd, OPTION_RELAXED_UNIQUE_CHECKS);
1000@@ -454,9 +450,8 @@
1001
1002 trx->mysql_n_tables_locked = 0;
1003 prebuilt->used_in_HANDLER = FALSE;
1004-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
1005---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:30:34.590004526 +0900
1006-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:30:47.361987777 +0900
1007+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
1008++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
1009 @@ -40,5 +40,6 @@
1010 {"innodb_purge_thread","Enable to use purge devoted thread","","http://www.percona.com/docs/wiki/percona-xtradb"},
1011 {"innodb_admin_command_base","XtraDB specific command interface through i_s","","http://www.percona.com/docs/wiki/percona-xtradb"},
1012@@ -464,9 +459,8 @@
1013 +{"innodb_extend_slow","Extended statistics in slow.log","It is InnoDB-part only. It needs to patch also to mysqld.","http://www.percona.com/docs/wiki/percona-xtradb"},
1014 {NULL, NULL, NULL, NULL}
1015 };
1016-diff -ruN a/storage/innodb_plugin/include/buf0rea.h b/storage/innodb_plugin/include/buf0rea.h
1017---- a/storage/innodb_plugin/include/buf0rea.h 2010-08-27 15:54:18.078987755 +0900
1018-+++ b/storage/innodb_plugin/include/buf0rea.h 2010-08-27 16:30:47.363031394 +0900
1019+--- a/storage/innodb_plugin/include/buf0rea.h
1020++++ b/storage/innodb_plugin/include/buf0rea.h
1021 @@ -27,6 +27,7 @@
1022 #define buf0rea_h
1023
1024@@ -496,9 +490,8 @@
1025 /********************************************************************//**
1026 Issues read requests for pages which the ibuf module wants to read in, in
1027 order to contract the insert buffer tree. Technically, this function is like
1028-diff -ruN a/storage/innodb_plugin/include/fil0fil.h b/storage/innodb_plugin/include/fil0fil.h
1029---- a/storage/innodb_plugin/include/fil0fil.h 2010-08-27 15:52:14.325059269 +0900
1030-+++ b/storage/innodb_plugin/include/fil0fil.h 2010-08-27 16:30:47.365059512 +0900
1031+--- a/storage/innodb_plugin/include/fil0fil.h
1032++++ b/storage/innodb_plugin/include/fil0fil.h
1033 @@ -610,9 +610,12 @@
1034 Reads or writes data. This operation is asynchronous (aio).
1035 @return DB_SUCCESS, or DB_TABLESPACE_DELETED if we are trying to do
1036@@ -524,9 +517,8 @@
1037 /**********************************************************************//**
1038 Waits for an aio operation to complete. This function is used to write the
1039 handler for completed requests. The aio array of pending requests is divided
1040-diff -ruN a/storage/innodb_plugin/include/os0file.h b/storage/innodb_plugin/include/os0file.h
1041---- a/storage/innodb_plugin/include/os0file.h 2010-08-04 02:24:19.000000000 +0900
1042-+++ b/storage/innodb_plugin/include/os0file.h 2010-08-27 16:30:47.366987560 +0900
1043+--- a/storage/innodb_plugin/include/os0file.h
1044++++ b/storage/innodb_plugin/include/os0file.h
1045 @@ -36,6 +36,7 @@
1046 #define os0file_h
1047
1048@@ -572,9 +564,8 @@
1049 /************************************************************************//**
1050 Wakes up all async i/o threads so that they know to exit themselves in
1051 shutdown. */
1052-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
1053---- a/storage/innodb_plugin/include/srv0srv.h 2010-08-27 16:27:30.225055856 +0900
1054-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-08-27 16:30:47.367988259 +0900
1055+--- a/storage/innodb_plugin/include/srv0srv.h
1056++++ b/storage/innodb_plugin/include/srv0srv.h
1057 @@ -62,6 +62,9 @@
1058 #define SRV_AUTO_EXTEND_INCREMENT \
1059 (srv_auto_extend_increment * ((1024 * 1024) / UNIV_PAGE_SIZE))
1060@@ -585,9 +576,8 @@
1061 /* This is set to TRUE if the MySQL user has set it in MySQL */
1062 extern ibool srv_lower_case_table_names;
1063
1064-diff -ruN a/storage/innodb_plugin/include/trx0trx.h b/storage/innodb_plugin/include/trx0trx.h
1065---- a/storage/innodb_plugin/include/trx0trx.h 2010-08-27 16:08:45.301058614 +0900
1066-+++ b/storage/innodb_plugin/include/trx0trx.h 2010-08-27 16:30:47.369989369 +0900
1067+--- a/storage/innodb_plugin/include/trx0trx.h
1068++++ b/storage/innodb_plugin/include/trx0trx.h
1069 @@ -738,6 +738,17 @@
1070 /*------------------------------*/
1071 char detailed_error[256]; /*!< detailed error message for last
1072@@ -606,9 +596,8 @@
1073 };
1074
1075 #define TRX_MAX_N_THREADS 32 /* maximum number of
1076-diff -ruN a/storage/innodb_plugin/lock/lock0lock.c b/storage/innodb_plugin/lock/lock0lock.c
1077---- a/storage/innodb_plugin/lock/lock0lock.c 2010-08-27 15:52:14.332058513 +0900
1078-+++ b/storage/innodb_plugin/lock/lock0lock.c 2010-08-27 16:30:47.374058285 +0900
1079+--- a/storage/innodb_plugin/lock/lock0lock.c
1080++++ b/storage/innodb_plugin/lock/lock0lock.c
1081 @@ -1757,6 +1757,8 @@
1082 {
1083 lock_t* lock;
1084@@ -649,9 +638,8 @@
1085 trx->que_state = TRX_QUE_LOCK_WAIT;
1086 trx->was_chosen_as_deadlock_victim = FALSE;
1087 trx->wait_started = time(NULL);
1088-diff -ruN a/storage/innodb_plugin/os/os0file.c b/storage/innodb_plugin/os/os0file.c
1089---- a/storage/innodb_plugin/os/os0file.c 2010-08-27 16:23:31.038058669 +0900
1090-+++ b/storage/innodb_plugin/os/os0file.c 2010-08-27 16:30:47.380058815 +0900
1091+--- a/storage/innodb_plugin/os/os0file.c
1092++++ b/storage/innodb_plugin/os/os0file.c
1093 @@ -38,6 +38,8 @@
1094 #include "srv0start.h"
1095 #include "fil0fil.h"
1096@@ -661,7 +649,7 @@
1097 #include "log0recv.h"
1098 #ifndef UNIV_HOTBACKUP
1099 # include "os0sync.h"
1100-@@ -2097,22 +2099,30 @@
1101+@@ -2098,22 +2100,30 @@
1102 /*******************************************************************//**
1103 Does a synchronous read operation in Posix.
1104 @return number of bytes read, -1 if error */
1105@@ -694,7 +682,7 @@
1106
1107 ut_a((offset & 0xFFFFFFFFUL) == offset);
1108
1109-@@ -2133,6 +2143,15 @@
1110+@@ -2134,6 +2144,15 @@
1111
1112 os_n_file_reads++;
1113
1114@@ -710,7 +698,7 @@
1115 #if defined(HAVE_PREAD) && !defined(HAVE_BROKEN_PREAD)
1116 os_mutex_enter(os_file_count_mutex);
1117 os_file_n_pending_preads++;
1118-@@ -2146,6 +2165,13 @@
1119+@@ -2147,6 +2166,13 @@
1120 os_n_pending_reads--;
1121 os_mutex_exit(os_file_count_mutex);
1122
1123@@ -724,7 +712,7 @@
1124 return(n_bytes);
1125 #else
1126 {
1127-@@ -2182,6 +2208,13 @@
1128+@@ -2183,6 +2209,13 @@
1129 os_n_pending_reads--;
1130 os_mutex_exit(os_file_count_mutex);
1131
1132@@ -738,7 +726,7 @@
1133 return(ret);
1134 }
1135 #endif
1136-@@ -2312,7 +2345,7 @@
1137+@@ -2313,7 +2346,7 @@
1138 @return TRUE if request was successful, FALSE if fail */
1139 UNIV_INTERN
1140 ibool
1141@@ -747,7 +735,7 @@
1142 /*=========*/
1143 os_file_t file, /*!< in: handle to a file */
1144 void* buf, /*!< in: buffer where to read */
1145-@@ -2320,7 +2353,8 @@
1146+@@ -2321,7 +2354,8 @@
1147 offset where to read */
1148 ulint offset_high, /*!< in: most significant 32 bits of
1149 offset */
1150@@ -757,7 +745,7 @@
1151 {
1152 #ifdef __WIN__
1153 BOOL ret;
1154-@@ -2395,7 +2429,7 @@
1155+@@ -2396,7 +2430,7 @@
1156 os_bytes_read_since_printout += n;
1157
1158 try_again:
1159@@ -766,7 +754,7 @@
1160
1161 if ((ulint)ret == n) {
1162
1163-@@ -3652,10 +3686,11 @@
1164+@@ -3653,10 +3687,11 @@
1165 (can be used to identify a completed
1166 aio operation); ignored if mode is
1167 OS_AIO_SYNC */
1168@@ -779,7 +767,7 @@
1169 {
1170 os_aio_array_t* array;
1171 os_aio_slot_t* slot;
1172-@@ -3697,8 +3732,8 @@
1173+@@ -3698,8 +3733,8 @@
1174 wait in the Windows case. */
1175
1176 if (type == OS_FILE_READ) {
1177@@ -790,7 +778,7 @@
1178 }
1179
1180 ut_a(type == OS_FILE_WRITE);
1181-@@ -3731,6 +3766,11 @@
1182+@@ -3732,6 +3767,11 @@
1183 ut_error;
1184 }
1185
1186@@ -802,9 +790,8 @@
1187 slot = os_aio_array_reserve_slot(type, array, message1, message2, file,
1188 name, buf, offset, offset_high, n);
1189 if (type == OS_FILE_READ) {
1190-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
1191---- a/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:27:30.233022109 +0900
1192-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:30:47.384058509 +0900
1193+--- a/storage/innodb_plugin/srv/srv0srv.c
1194++++ b/storage/innodb_plugin/srv/srv0srv.c
1195 @@ -86,6 +86,9 @@
1196 #include "trx0i_s.h"
1197 #include "os0sync.h" /* for HAVE_ATOMIC_BUILTINS */
1198@@ -860,9 +847,8 @@
1199 os_fast_mutex_lock(&srv_conc_mutex);
1200
1201 srv_conc_n_waiting_threads--;
1202-diff -ruN a/storage/innodb_plugin/trx/trx0trx.c b/storage/innodb_plugin/trx/trx0trx.c
1203---- a/storage/innodb_plugin/trx/trx0trx.c 2010-08-27 16:08:45.306058896 +0900
1204-+++ b/storage/innodb_plugin/trx/trx0trx.c 2010-08-27 16:30:47.387058330 +0900
1205+--- a/storage/innodb_plugin/trx/trx0trx.c
1206++++ b/storage/innodb_plugin/trx/trx0trx.c
1207 @@ -179,6 +179,15 @@
1208 trx->global_read_view = NULL;
1209 trx->read_view = NULL;
1210
1211=== modified file 'patches/innodb_extra_rseg.patch'
1212--- patches/innodb_extra_rseg.patch 2011-06-23 02:18:22 +0000
1213+++ patches/innodb_extra_rseg.patch 2011-07-27 11:11:52 +0000
1214@@ -5,9 +5,8 @@
1215 #!!! notice !!!
1216 # Any small change to this file in the main branch
1217 # should be done or reviewed by the maintainer!
1218-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
1219---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 15:56:27.388990435 +0900
1220-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 15:57:21.943242617 +0900
1221+--- a/storage/innodb_plugin/handler/ha_innodb.cc
1222++++ b/storage/innodb_plugin/handler/ha_innodb.cc
1223 @@ -11177,6 +11177,11 @@
1224 "Enable/Disable unsafe group commit when support_xa=OFF and use with binlog or other XA storage engine.",
1225 NULL, NULL, 0, 0, 1, 0);
1226@@ -36,9 +35,8 @@
1227 i_s_innodb_buffer_pool_pages,
1228 i_s_innodb_buffer_pool_pages_index,
1229 i_s_innodb_buffer_pool_pages_blob,
1230-diff -ruN a/storage/innodb_plugin/handler/i_s.cc b/storage/innodb_plugin/handler/i_s.cc
1231---- a/storage/innodb_plugin/handler/i_s.cc 2010-08-27 15:55:39.396056760 +0900
1232-+++ b/storage/innodb_plugin/handler/i_s.cc 2010-08-27 15:57:21.946209184 +0900
1233+--- a/storage/innodb_plugin/handler/i_s.cc
1234++++ b/storage/innodb_plugin/handler/i_s.cc
1235 @@ -43,6 +43,8 @@
1236 #include "ha_prototypes.h" /* for innobase_convert_name() */
1237 #include "srv0start.h" /* for srv_was_started */
1238@@ -215,9 +213,8 @@
1239 + /* void* */
1240 + STRUCT_FLD(__reserved1, NULL)
1241 +};
1242-diff -ruN a/storage/innodb_plugin/handler/i_s.h b/storage/innodb_plugin/handler/i_s.h
1243---- a/storage/innodb_plugin/handler/i_s.h 2010-08-27 15:55:39.398061420 +0900
1244-+++ b/storage/innodb_plugin/handler/i_s.h 2010-08-27 15:57:21.948402335 +0900
1245+--- a/storage/innodb_plugin/handler/i_s.h
1246++++ b/storage/innodb_plugin/handler/i_s.h
1247 @@ -37,5 +37,6 @@
1248 extern struct st_mysql_plugin i_s_innodb_cmpmem;
1249 extern struct st_mysql_plugin i_s_innodb_cmpmem_reset;
1250@@ -225,9 +222,8 @@
1251 +extern struct st_mysql_plugin i_s_innodb_rseg;
1252
1253 #endif /* i_s_h */
1254-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
1255---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 15:56:27.390020919 +0900
1256-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 15:57:21.943242617 +0900
1257+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
1258++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
1259 @@ -29,5 +29,6 @@
1260 {"innodb_opt_lru_count","Fix of buffer_pool mutex","Decreases contention on buffer_pool mutex on LRU operations","http://www.percona.com/docs/wiki/percona-xtradb"},
1261 {"innodb_buffer_pool_pages","Information of buffer pool content","","http://www.percona.com/docs/wiki/percona-xtradb"},
1262@@ -235,9 +231,8 @@
1263 +{"innodb_extra_rseg","allow to create extra rollback segments","When create new db, the new parameter allows to create more rollback segments","http://www.percona.com/docs/wiki/percona-xtradb"},
1264 {NULL, NULL, NULL, NULL}
1265 };
1266-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
1267---- a/storage/innodb_plugin/include/srv0srv.h 2010-08-27 15:56:27.391059197 +0900
1268-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-08-27 15:57:21.949178913 +0900
1269+--- a/storage/innodb_plugin/include/srv0srv.h
1270++++ b/storage/innodb_plugin/include/srv0srv.h
1271 @@ -216,6 +216,8 @@
1272 extern ulint srv_read_ahead;
1273 extern ulint srv_adaptive_checkpoint;
1274@@ -247,9 +242,8 @@
1275 /*-------------------------------------------*/
1276
1277 extern ulint srv_n_rows_inserted;
1278-diff -ruN a/storage/innodb_plugin/include/trx0rseg.h b/storage/innodb_plugin/include/trx0rseg.h
1279---- a/storage/innodb_plugin/include/trx0rseg.h 2010-08-27 15:56:27.392056954 +0900
1280-+++ b/storage/innodb_plugin/include/trx0rseg.h 2010-08-27 15:57:21.951103043 +0900
1281+--- a/storage/innodb_plugin/include/trx0rseg.h
1282++++ b/storage/innodb_plugin/include/trx0rseg.h
1283 @@ -114,6 +114,17 @@
1284 /*=========================*/
1285 trx_sysf_t* sys_header, /*!< in: trx system header */
1286@@ -268,9 +262,8 @@
1287 /***************************************************************************
1288 Free's an instance of the rollback segment in memory. */
1289 UNIV_INTERN
1290-diff -ruN a/storage/innodb_plugin/include/trx0sys.h b/storage/innodb_plugin/include/trx0sys.h
1291---- a/storage/innodb_plugin/include/trx0sys.h 2010-08-04 02:24:19.000000000 +0900
1292-+++ b/storage/innodb_plugin/include/trx0sys.h 2010-08-27 15:57:21.952410637 +0900
1293+--- a/storage/innodb_plugin/include/trx0sys.h
1294++++ b/storage/innodb_plugin/include/trx0sys.h
1295 @@ -134,6 +134,13 @@
1296 void
1297 trx_sys_create(void);
1298@@ -285,9 +278,8 @@
1299 /****************************************************************//**
1300 Looks for a free slot for a rollback segment in the trx system file copy.
1301 @return slot index or ULINT_UNDEFINED if not found */
1302-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
1303---- a/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 15:56:27.393071672 +0900
1304-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 15:57:21.956058333 +0900
1305+--- a/storage/innodb_plugin/srv/srv0srv.c
1306++++ b/storage/innodb_plugin/srv/srv0srv.c
1307 @@ -388,6 +388,8 @@
1308 UNIV_INTERN ulint srv_enable_unsafe_group_commit = 0; /* 0:disable 1:enable */
1309 UNIV_INTERN ulint srv_read_ahead = 3; /* 1: random 2: linear 3: Both */
1310@@ -297,9 +289,8 @@
1311 /*-------------------------------------------*/
1312 UNIV_INTERN ulong srv_n_spin_wait_rounds = 30;
1313 UNIV_INTERN ulong srv_n_free_tickets_to_enter = 500;
1314-diff -ruN a/storage/innodb_plugin/srv/srv0start.c b/storage/innodb_plugin/srv/srv0start.c
1315---- a/storage/innodb_plugin/srv/srv0start.c 2010-08-27 15:54:18.103988092 +0900
1316-+++ b/storage/innodb_plugin/srv/srv0start.c 2010-08-27 15:57:21.959058733 +0900
1317+--- a/storage/innodb_plugin/srv/srv0start.c
1318++++ b/storage/innodb_plugin/srv/srv0start.c
1319 @@ -1533,6 +1533,14 @@
1320 dict_create();
1321 srv_startup_is_before_trx_rollback_phase = FALSE;
1322@@ -315,9 +306,8 @@
1323 #ifdef UNIV_LOG_ARCHIVE
1324 } else if (srv_archive_recovery) {
1325 fprintf(stderr,
1326-diff -ruN a/storage/innodb_plugin/trx/trx0rseg.c b/storage/innodb_plugin/trx/trx0rseg.c
1327---- a/storage/innodb_plugin/trx/trx0rseg.c 2010-08-04 02:24:20.000000000 +0900
1328-+++ b/storage/innodb_plugin/trx/trx0rseg.c 2010-08-27 15:57:21.961059126 +0900
1329+--- a/storage/innodb_plugin/trx/trx0rseg.c
1330++++ b/storage/innodb_plugin/trx/trx0rseg.c
1331 @@ -286,3 +286,39 @@
1332 }
1333 }
1334@@ -358,9 +348,8 @@
1335 +
1336 + return(rseg);
1337 +}
1338-diff -ruN a/storage/innodb_plugin/trx/trx0sys.c b/storage/innodb_plugin/trx/trx0sys.c
1339---- a/storage/innodb_plugin/trx/trx0sys.c 2010-08-04 02:24:20.000000000 +0900
1340-+++ b/storage/innodb_plugin/trx/trx0sys.c 2010-08-27 15:57:21.963058358 +0900
1341+--- a/storage/innodb_plugin/trx/trx0sys.c
1342++++ b/storage/innodb_plugin/trx/trx0sys.c
1343 @@ -1044,6 +1044,31 @@
1344 trx_sys_init_at_db_start();
1345 }
1346
1347=== modified file 'patches/innodb_fast_checksum.patch'
1348--- patches/innodb_fast_checksum.patch 2011-06-23 02:18:22 +0000
1349+++ patches/innodb_fast_checksum.patch 2011-07-27 11:11:52 +0000
1350@@ -5,9 +5,8 @@
1351 #!!! notice !!!
1352 # Any small change to this file in the main branch
1353 # should be done or reviewed by the maintainer!
1354-diff -ruN a/storage/innodb_plugin/buf/buf0buf.c b/storage/innodb_plugin/buf/buf0buf.c
1355---- a/storage/innodb_plugin/buf/buf0buf.c 2010-08-27 16:40:36.508988536 +0900
1356-+++ b/storage/innodb_plugin/buf/buf0buf.c 2010-08-27 16:42:03.596041861 +0900
1357+--- a/storage/innodb_plugin/buf/buf0buf.c
1358++++ b/storage/innodb_plugin/buf/buf0buf.c
1359 @@ -343,6 +343,27 @@
1360 return(checksum);
1361 }
1362@@ -92,9 +91,8 @@
1363 (ulong) mach_read_from_4(read_buf + FIL_PAGE_SPACE_OR_CHKSUM),
1364 (ulong) mach_read_from_4(read_buf + UNIV_PAGE_SIZE
1365 - FIL_PAGE_END_LSN_OLD_CHKSUM),
1366-diff -ruN a/storage/innodb_plugin/buf/buf0flu.c b/storage/innodb_plugin/buf/buf0flu.c
1367---- a/storage/innodb_plugin/buf/buf0flu.c 2010-08-27 16:38:38.226023489 +0900
1368-+++ b/storage/innodb_plugin/buf/buf0flu.c 2010-08-27 16:42:03.597411439 +0900
1369+--- a/storage/innodb_plugin/buf/buf0flu.c
1370++++ b/storage/innodb_plugin/buf/buf0flu.c
1371 @@ -957,7 +957,9 @@
1372
1373 mach_write_to_4(page + FIL_PAGE_SPACE_OR_CHKSUM,
1374@@ -106,9 +104,8 @@
1375 : BUF_NO_CHECKSUM_MAGIC);
1376
1377 /* We overwrite the first 4 bytes of the end lsn field to store
1378-diff -ruN a/storage/innodb_plugin/fil/fil0fil.c b/storage/innodb_plugin/fil/fil0fil.c
1379---- a/storage/innodb_plugin/fil/fil0fil.c 2010-08-27 16:40:36.522990504 +0900
1380-+++ b/storage/innodb_plugin/fil/fil0fil.c 2010-08-27 16:42:03.602023484 +0900
1381+--- a/storage/innodb_plugin/fil/fil0fil.c
1382++++ b/storage/innodb_plugin/fil/fil0fil.c
1383 @@ -3150,7 +3150,9 @@
1384 mach_write_ull(page + FIL_PAGE_FILE_FLUSH_LSN, current_lsn);
1385 mach_write_to_4(page + FIL_PAGE_SPACE_OR_CHKSUM,
1386@@ -159,9 +156,8 @@
1387 : BUF_NO_CHECKSUM_MAGIC);
1388 mach_write_to_4(page + UNIV_PAGE_SIZE - FIL_PAGE_END_LSN_OLD_CHKSUM,
1389 srv_use_checksums
1390-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
1391---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:40:36.538021443 +0900
1392-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:42:03.611021803 +0900
1393+--- a/storage/innodb_plugin/handler/ha_innodb.cc
1394++++ b/storage/innodb_plugin/handler/ha_innodb.cc
1395 @@ -185,6 +185,7 @@
1396 #endif /* UNIV_LOG_ARCHIVE */
1397 static my_bool innobase_use_doublewrite = TRUE;
1398@@ -202,9 +198,8 @@
1399 MYSQL_SYSVAR(commit_concurrency),
1400 MYSQL_SYSVAR(concurrency_tickets),
1401 MYSQL_SYSVAR(data_file_path),
1402-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
1403---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:40:36.560063279 +0900
1404-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:42:03.615988127 +0900
1405+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
1406++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
1407 @@ -44,5 +44,6 @@
1408 {"innodb_lru_dump_restore","Dump and restore command for content of buffer pool","","http://www.percona.com/docs/wiki/percona-xtradb"},
1409 {"innodb_separate_doublewrite","Add option 'innodb_doublewrite_file' to separate doublewrite dedicated tablespace","","http://www.percona.com/docs/wiki/percona-xtradb"},
1410@@ -212,9 +207,8 @@
1411 +{"innodb_fast_checksum","Using the checksum on 32bit-unit calculation","incompatible for unpatched ver.","http://www.percona.com/docs/wiki/percona-xtradb"},
1412 {NULL, NULL, NULL, NULL}
1413 };
1414-diff -ruN a/storage/innodb_plugin/include/buf0buf.h b/storage/innodb_plugin/include/buf0buf.h
1415---- a/storage/innodb_plugin/include/buf0buf.h 2010-08-27 16:40:36.563059330 +0900
1416-+++ b/storage/innodb_plugin/include/buf0buf.h 2010-08-27 16:42:03.638058638 +0900
1417+--- a/storage/innodb_plugin/include/buf0buf.h
1418++++ b/storage/innodb_plugin/include/buf0buf.h
1419 @@ -477,6 +477,11 @@
1420 buf_calc_page_new_checksum(
1421 /*=======================*/
1422@@ -227,9 +221,8 @@
1423 /********************************************************************//**
1424 In versions < 4.0.14 and < 4.1.1 there was a bug that the checksum only
1425 looked at the first few bytes of the page. This calculates that old
1426-diff -ruN a/storage/innodb_plugin/include/fil0fil.h b/storage/innodb_plugin/include/fil0fil.h
1427---- a/storage/innodb_plugin/include/fil0fil.h 2010-08-27 16:40:36.572063042 +0900
1428-+++ b/storage/innodb_plugin/include/fil0fil.h 2010-08-27 16:42:03.640021168 +0900
1429+--- a/storage/innodb_plugin/include/fil0fil.h
1430++++ b/storage/innodb_plugin/include/fil0fil.h
1431 @@ -117,6 +117,7 @@
1432 #define FIL_PAGE_ARCH_LOG_NO_OR_SPACE_ID 34 /*!< starting from 4.1.x this
1433 contains the space id of the page */
1434@@ -238,9 +231,8 @@
1435 /* @} */
1436 /** File page trailer @{ */
1437 #define FIL_PAGE_END_LSN_OLD_CHKSUM 8 /*!< the low 4 bytes of this are used
1438-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
1439---- a/storage/innodb_plugin/include/srv0srv.h 2010-08-27 16:40:36.580092150 +0900
1440-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-08-27 16:42:03.640988120 +0900
1441+--- a/storage/innodb_plugin/include/srv0srv.h
1442++++ b/storage/innodb_plugin/include/srv0srv.h
1443 @@ -212,6 +212,7 @@
1444
1445 extern ibool srv_use_doublewrite_buf;
1446@@ -249,9 +241,8 @@
1447
1448 extern ibool srv_set_thread_priorities;
1449 extern int srv_query_thread_priority;
1450-diff -ruN a/storage/innodb_plugin/include/ut0rnd.h b/storage/innodb_plugin/include/ut0rnd.h
1451---- a/storage/innodb_plugin/include/ut0rnd.h 2010-08-04 02:24:20.000000000 +0900
1452-+++ b/storage/innodb_plugin/include/ut0rnd.h 2010-08-27 16:42:03.642990139 +0900
1453+--- a/storage/innodb_plugin/include/ut0rnd.h
1454++++ b/storage/innodb_plugin/include/ut0rnd.h
1455 @@ -124,6 +124,13 @@
1456 const byte* str, /*!< in: string of bytes */
1457 ulint len) /*!< in: length */
1458@@ -266,9 +257,8 @@
1459 /***********************************************************//**
1460 Looks for a prime number slightly greater than the given argument.
1461 The prime is chosen so that it is not near any power of 2.
1462-diff -ruN a/storage/innodb_plugin/include/ut0rnd.ic b/storage/innodb_plugin/include/ut0rnd.ic
1463---- a/storage/innodb_plugin/include/ut0rnd.ic 2010-08-04 02:24:20.000000000 +0900
1464-+++ b/storage/innodb_plugin/include/ut0rnd.ic 2010-08-27 16:42:03.643990557 +0900
1465+--- a/storage/innodb_plugin/include/ut0rnd.ic
1466++++ b/storage/innodb_plugin/include/ut0rnd.ic
1467 @@ -226,3 +226,28 @@
1468
1469 return(fold);
1470@@ -298,9 +288,8 @@
1471 +
1472 + return(fold);
1473 +}
1474-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
1475---- a/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:40:36.599058304 +0900
1476-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:42:03.647012289 +0900
1477+--- a/storage/innodb_plugin/srv/srv0srv.c
1478++++ b/storage/innodb_plugin/srv/srv0srv.c
1479 @@ -387,6 +387,7 @@
1480
1481 UNIV_INTERN ibool srv_use_doublewrite_buf = TRUE;
1482
1483=== modified file 'patches/innodb_fast_shutdown.patch'
1484--- patches/innodb_fast_shutdown.patch 2011-06-23 02:18:22 +0000
1485+++ patches/innodb_fast_shutdown.patch 2011-07-27 11:11:52 +0000
1486@@ -11,9 +11,8 @@
1487 # suite.
1488 #
1489 # The patch also implements os_event_wait_time() for POSIX systems.
1490-diff -ruN /dev/null b/COPYING.innodb_fast_shutdown
1491---- /dev/null 1970-01-01 00:00:00.000000000 +0000
1492-+++ b/COPYING.innodb_fast_shutdown 2010-11-16 21:37:51.000000000 +0300
1493+--- /dev/null
1494++++ b/COPYING.innodb_fast_shutdown
1495 @@ -0,0 +1,10 @@
1496 +Copyright (c) 2010, Kristian Nielsen
1497 +All rights reserved.
1498@@ -25,9 +24,8 @@
1499 + * Neither the name of the author nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
1500 +
1501 +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
1502-diff -ruN a/storage/innodb_plugin/include/os0sync.h b/storage/innodb_plugin/include/os0sync.h
1503---- a/storage/innodb_plugin/include/os0sync.h 2010-11-16 21:33:00.000000000 +0300
1504-+++ b/storage/innodb_plugin/include/os0sync.h 2010-11-16 21:34:06.000000000 +0300
1505+--- a/storage/innodb_plugin/include/os0sync.h
1506++++ b/storage/innodb_plugin/include/os0sync.h
1507 @@ -189,14 +189,14 @@
1508
1509 /**********************************************************//**
1510@@ -45,9 +43,8 @@
1511 OS_SYNC_INFINITE_TIME */
1512 #ifdef __WIN__
1513 /**********************************************************//**
1514-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
1515---- a/storage/innodb_plugin/include/srv0srv.h 2010-11-16 21:33:00.000000000 +0300
1516-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-11-16 21:34:06.000000000 +0300
1517+--- a/storage/innodb_plugin/include/srv0srv.h
1518++++ b/storage/innodb_plugin/include/srv0srv.h
1519 @@ -57,6 +57,9 @@
1520 thread starts running */
1521 extern os_event_t srv_lock_timeout_thread_event;
1522@@ -58,9 +55,8 @@
1523 /* If the last data file is auto-extended, we add this many pages to it
1524 at a time */
1525 #define SRV_AUTO_EXTEND_INCREMENT \
1526-diff -ruN a/storage/innodb_plugin/log/log0log.c b/storage/innodb_plugin/log/log0log.c
1527---- a/storage/innodb_plugin/log/log0log.c 2010-11-16 21:33:00.000000000 +0300
1528-+++ b/storage/innodb_plugin/log/log0log.c 2010-11-16 21:34:06.000000000 +0300
1529+--- a/storage/innodb_plugin/log/log0log.c
1530++++ b/storage/innodb_plugin/log/log0log.c
1531 @@ -3103,6 +3103,7 @@
1532 algorithm only works if the server is idle at shutdown */
1533
1534@@ -69,9 +65,8 @@
1535 loop:
1536 os_thread_sleep(100000);
1537
1538-diff -ruN a/storage/innodb_plugin/os/os0sync.c b/storage/innodb_plugin/os/os0sync.c
1539---- a/storage/innodb_plugin/os/os0sync.c 2010-11-16 21:33:00.000000000 +0300
1540-+++ b/storage/innodb_plugin/os/os0sync.c 2010-11-16 21:34:06.000000000 +0300
1541+--- a/storage/innodb_plugin/os/os0sync.c
1542++++ b/storage/innodb_plugin/os/os0sync.c
1543 @@ -31,6 +31,9 @@
1544
1545 #ifdef __WIN__
1546@@ -162,9 +157,8 @@
1547 #endif
1548 }
1549
1550-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
1551---- a/storage/innodb_plugin/srv/srv0srv.c 2010-11-16 21:33:00.000000000 +0300
1552-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-11-16 21:34:06.000000000 +0300
1553+--- a/storage/innodb_plugin/srv/srv0srv.c
1554++++ b/storage/innodb_plugin/srv/srv0srv.c
1555 @@ -708,6 +708,8 @@
1556
1557 UNIV_INTERN os_event_t srv_lock_timeout_thread_event;
1558
1559=== modified file 'patches/innodb_files_extend.patch'
1560--- patches/innodb_files_extend.patch 2011-06-23 02:18:22 +0000
1561+++ patches/innodb_files_extend.patch 2011-07-27 11:11:52 +0000
1562@@ -5,9 +5,8 @@
1563 #!!! notice !!!
1564 # Any small change to this file in the main branch
1565 # should be done or reviewed by the maintainer!
1566-diff -ruN a/storage/innodb_plugin/buf/buf0buddy.c b/storage/innodb_plugin/buf/buf0buddy.c
1567---- a/storage/innodb_plugin/buf/buf0buddy.c 2010-08-27 16:13:11.055058310 +0900
1568-+++ b/storage/innodb_plugin/buf/buf0buddy.c 2010-08-27 16:44:21.664059035 +0900
1569+--- a/storage/innodb_plugin/buf/buf0buddy.c
1570++++ b/storage/innodb_plugin/buf/buf0buddy.c
1571 @@ -43,7 +43,7 @@
1572 #endif /* UNIV_DEBUG */
1573 /** Statistics of the buddy system, indexed by block size.
1574@@ -17,9 +16,8 @@
1575
1576 /**********************************************************************//**
1577 Get the offset of the buddy of a compressed page frame.
1578-diff -ruN a/storage/innodb_plugin/fil/fil0fil.c b/storage/innodb_plugin/fil/fil0fil.c
1579---- a/storage/innodb_plugin/fil/fil0fil.c 2010-08-27 16:43:11.941989968 +0900
1580-+++ b/storage/innodb_plugin/fil/fil0fil.c 2010-08-27 16:44:21.668058937 +0900
1581+--- a/storage/innodb_plugin/fil/fil0fil.c
1582++++ b/storage/innodb_plugin/fil/fil0fil.c
1583 @@ -690,7 +690,7 @@
1584 ut_a(space->purpose != FIL_LOG);
1585 ut_a(!trx_sys_sys_space(space->id));
1586@@ -60,9 +58,8 @@
1587 ut_ad(fil_validate());
1588 #ifndef UNIV_HOTBACKUP
1589 # ifndef UNIV_LOG_DEBUG
1590-diff -ruN a/storage/innodb_plugin/fsp/fsp0fsp.c b/storage/innodb_plugin/fsp/fsp0fsp.c
1591---- a/storage/innodb_plugin/fsp/fsp0fsp.c 2010-08-27 16:40:36.528021375 +0900
1592-+++ b/storage/innodb_plugin/fsp/fsp0fsp.c 2010-08-27 16:44:21.673058570 +0900
1593+--- a/storage/innodb_plugin/fsp/fsp0fsp.c
1594++++ b/storage/innodb_plugin/fsp/fsp0fsp.c
1595 @@ -657,16 +657,18 @@
1596 0 for uncompressed pages */
1597 ulint offset) /*!< in: page offset */
1598@@ -111,9 +108,8 @@
1599
1600 if (UNIV_UNLIKELY(init_xdes)) {
1601
1602-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
1603---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:43:11.951020997 +0900
1604-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:44:21.682059132 +0900
1605+--- a/storage/innodb_plugin/handler/ha_innodb.cc
1606++++ b/storage/innodb_plugin/handler/ha_innodb.cc
1607 @@ -151,6 +151,9 @@
1608 static ulong innobase_read_io_threads;
1609 static ulong innobase_write_io_threads;
1610@@ -226,9 +222,8 @@
1611 MYSQL_SYSVAR(additional_mem_pool_size),
1612 MYSQL_SYSVAR(autoextend_increment),
1613 MYSQL_SYSVAR(buffer_pool_size),
1614-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
1615---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:43:11.956017166 +0900
1616-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:44:21.687100395 +0900
1617+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
1618++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
1619 @@ -45,5 +45,6 @@
1620 {"innodb_separate_doublewrite","Add option 'innodb_doublewrite_file' to separate doublewrite dedicated tablespace","","http://www.percona.com/docs/wiki/percona-xtradb"},
1621 {"innodb_pass_corrupt_table","Treat tables as corrupt instead of crash, when meet corrupt blocks","","http://www.percona.com/docs/wiki/percona-xtradb"},
1622@@ -236,9 +231,8 @@
1623 +{"innodb_files_extend","allow >4GB transaction log files, and can vary universal page size of datafiles","incompatible for unpatched ver.","http://www.percona.com/docs/wiki/percona-xtradb"},
1624 {NULL, NULL, NULL, NULL}
1625 };
1626-diff -ruN a/storage/innodb_plugin/include/buf0buddy.h b/storage/innodb_plugin/include/buf0buddy.h
1627---- a/storage/innodb_plugin/include/buf0buddy.h 2010-08-27 16:13:11.077063445 +0900
1628-+++ b/storage/innodb_plugin/include/buf0buddy.h 2010-08-27 16:44:21.689059215 +0900
1629+--- a/storage/innodb_plugin/include/buf0buddy.h
1630++++ b/storage/innodb_plugin/include/buf0buddy.h
1631 @@ -83,7 +83,7 @@
1632
1633 /** Statistics of the buddy system, indexed by block size.
1634@@ -248,9 +242,8 @@
1635
1636 #ifndef UNIV_NONINL
1637 # include "buf0buddy.ic"
1638-diff -ruN a/storage/innodb_plugin/include/buf0buf.h b/storage/innodb_plugin/include/buf0buf.h
1639---- a/storage/innodb_plugin/include/buf0buf.h 2010-08-27 16:43:11.959021085 +0900
1640-+++ b/storage/innodb_plugin/include/buf0buf.h 2010-08-27 16:44:21.691058408 +0900
1641+--- a/storage/innodb_plugin/include/buf0buf.h
1642++++ b/storage/innodb_plugin/include/buf0buf.h
1643 @@ -1452,11 +1452,11 @@
1644 /* @{ */
1645 UT_LIST_BASE_NODE_T(buf_page_t) zip_clean;
1646@@ -267,9 +260,8 @@
1647 #if BUF_BUDDY_LOW > PAGE_ZIP_MIN_SIZE
1648 # error "BUF_BUDDY_LOW > PAGE_ZIP_MIN_SIZE"
1649 #endif
1650-diff -ruN a/storage/innodb_plugin/include/buf0types.h b/storage/innodb_plugin/include/buf0types.h
1651---- a/storage/innodb_plugin/include/buf0types.h 2010-08-04 02:24:19.000000000 +0900
1652-+++ b/storage/innodb_plugin/include/buf0types.h 2010-08-27 16:44:21.692071229 +0900
1653+--- a/storage/innodb_plugin/include/buf0types.h
1654++++ b/storage/innodb_plugin/include/buf0types.h
1655 @@ -70,12 +70,13 @@
1656 buddy system; must be at least
1657 sizeof(buf_page_t) */
1658@@ -285,9 +277,8 @@
1659 /* @} */
1660
1661 #endif
1662-diff -ruN a/storage/innodb_plugin/include/fsp0types.h b/storage/innodb_plugin/include/fsp0types.h
1663---- a/storage/innodb_plugin/include/fsp0types.h 2010-11-29 19:38:03.000000000 +0900
1664-+++ b/storage/innodb_plugin/include/fsp0types.h 2011-02-02 23:29:13.000000000 +0900
1665+--- a/storage/innodb_plugin/include/fsp0types.h
1666++++ b/storage/innodb_plugin/include/fsp0types.h
1667 @@ -42,7 +42,7 @@
1668 /* @} */
1669
1670@@ -297,9 +288,8 @@
1671
1672 /** On a page of any file segment, data may be put starting from this
1673 offset */
1674-diff -ruN a/storage/innodb_plugin/include/log0log.h b/storage/innodb_plugin/include/log0log.h
1675---- a/storage/innodb_plugin/include/log0log.h 2010-11-03 22:39:54.000000000 +0900
1676-+++ b/storage/innodb_plugin/include/log0log.h 2010-12-13 20:17:00.600329611 +0900
1677+--- a/storage/innodb_plugin/include/log0log.h
1678++++ b/storage/innodb_plugin/include/log0log.h
1679 @@ -672,6 +672,9 @@
1680 when mysqld is first time started
1681 on the restored database, it can
1682@@ -310,9 +300,8 @@
1683 #define LOG_FILE_ARCH_COMPLETED OS_FILE_LOG_BLOCK_SIZE
1684 /* this 4-byte field is TRUE when
1685 the writing of an archived log file
1686-diff -ruN a/storage/innodb_plugin/include/mtr0log.ic b/storage/innodb_plugin/include/mtr0log.ic
1687---- a/storage/innodb_plugin/include/mtr0log.ic 2010-08-27 16:38:38.273059844 +0900
1688-+++ b/storage/innodb_plugin/include/mtr0log.ic 2010-08-27 16:44:21.693073476 +0900
1689+--- a/storage/innodb_plugin/include/mtr0log.ic
1690++++ b/storage/innodb_plugin/include/mtr0log.ic
1691 @@ -203,7 +203,7 @@
1692 system tablespace */
1693 if ((space == TRX_SYS_SPACE
1694@@ -322,9 +311,8 @@
1695 if (trx_doublewrite_buf_is_being_created) {
1696 /* Do nothing: we only come to this branch in an
1697 InnoDB database creation. We do not redo log
1698-diff -ruN a/storage/innodb_plugin/include/os0file.h b/storage/innodb_plugin/include/os0file.h
1699---- a/storage/innodb_plugin/include/os0file.h 2010-12-13 20:14:59.101402758 +0900
1700-+++ b/storage/innodb_plugin/include/os0file.h 2010-12-13 20:17:00.602329548 +0900
1701+--- a/storage/innodb_plugin/include/os0file.h
1702++++ b/storage/innodb_plugin/include/os0file.h
1703 @@ -107,7 +107,7 @@
1704 if this fails for a log block, then it is equivalent to a media failure in the
1705 log. */
1706@@ -343,9 +331,8 @@
1707 /* File types for directory entry data type */
1708
1709 enum os_file_type_enum{
1710-diff -ruN a/storage/innodb_plugin/include/page0types.h b/storage/innodb_plugin/include/page0types.h
1711---- a/storage/innodb_plugin/include/page0types.h 2010-08-04 02:24:19.000000000 +0900
1712-+++ b/storage/innodb_plugin/include/page0types.h 2010-08-27 16:44:21.695063547 +0900
1713+--- a/storage/innodb_plugin/include/page0types.h
1714++++ b/storage/innodb_plugin/include/page0types.h
1715 @@ -56,8 +56,9 @@
1716
1717 /** Number of supported compressed page sizes */
1718@@ -367,9 +354,8 @@
1719
1720 /**********************************************************************//**
1721 Write the "deleted" flag of a record on a compressed page. The flag must
1722-diff -ruN a/storage/innodb_plugin/include/trx0sys.h b/storage/innodb_plugin/include/trx0sys.h
1723---- a/storage/innodb_plugin/include/trx0sys.h 2010-08-27 16:38:38.277021207 +0900
1724-+++ b/storage/innodb_plugin/include/trx0sys.h 2010-08-27 16:44:21.696063957 +0900
1725+--- a/storage/innodb_plugin/include/trx0sys.h
1726++++ b/storage/innodb_plugin/include/trx0sys.h
1727 @@ -515,9 +515,9 @@
1728 /** Contents of TRX_SYS_MYSQL_LOG_MAGIC_N_FLD */
1729 #define TRX_SYS_MYSQL_LOG_MAGIC_N 873422344
1730@@ -383,9 +369,8 @@
1731 /** The offset of the MySQL replication info in the trx system header;
1732 this contains the same fields as TRX_SYS_MYSQL_LOG_INFO below */
1733 #define TRX_SYS_MYSQL_MASTER_LOG_INFO (UNIV_PAGE_SIZE - 2000)
1734-diff -ruN a/storage/innodb_plugin/include/univ.i b/storage/innodb_plugin/include/univ.i
1735---- a/storage/innodb_plugin/include/univ.i 2010-08-04 02:24:19.000000000 +0900
1736-+++ b/storage/innodb_plugin/include/univ.i 2010-08-27 16:44:21.698059254 +0900
1737+--- a/storage/innodb_plugin/include/univ.i
1738++++ b/storage/innodb_plugin/include/univ.i
1739 @@ -286,9 +286,13 @@
1740 */
1741
1742@@ -418,9 +403,8 @@
1743 +extern ulint srv_page_size_shift;
1744 +extern ulint srv_page_size;
1745 #endif
1746-diff -ruN a/storage/innodb_plugin/log/log0log.c b/storage/innodb_plugin/log/log0log.c
1747---- a/storage/innodb_plugin/log/log0log.c 2010-08-27 16:27:30.229021112 +0900
1748-+++ b/storage/innodb_plugin/log/log0log.c 2010-08-27 16:44:21.701058790 +0900
1749+--- a/storage/innodb_plugin/log/log0log.c
1750++++ b/storage/innodb_plugin/log/log0log.c
1751 @@ -591,7 +591,9 @@
1752
1753 offset = (gr_lsn_size_offset + difference) % group_size;
1754@@ -471,9 +455,8 @@
1755 #endif /* UNIV_LOG_ARCHIVE */
1756
1757 for (i = 0; i < LOG_MAX_N_GROUPS; i++) {
1758-diff -ruN a/storage/innodb_plugin/log/log0recv.c b/storage/innodb_plugin/log/log0recv.c
1759---- a/storage/innodb_plugin/log/log0recv.c 2010-08-27 16:23:31.034058951 +0900
1760-+++ b/storage/innodb_plugin/log/log0recv.c 2010-08-27 16:44:21.705059074 +0900
1761+--- a/storage/innodb_plugin/log/log0recv.c
1762++++ b/storage/innodb_plugin/log/log0recv.c
1763 @@ -702,8 +702,22 @@
1764
1765 group->lsn = mach_read_ull(
1766@@ -526,9 +509,8 @@
1767 #ifdef UNIV_LOG_ARCHIVE
1768 group = UT_LIST_GET_FIRST(log_sys->log_groups);
1769
1770-diff -ruN a/storage/innodb_plugin/page/page0zip.c b/storage/innodb_plugin/page/page0zip.c
1771---- a/storage/innodb_plugin/page/page0zip.c 2010-08-27 16:40:36.584058988 +0900
1772-+++ b/storage/innodb_plugin/page/page0zip.c 2010-08-27 16:44:21.709058243 +0900
1773+--- a/storage/innodb_plugin/page/page0zip.c
1774++++ b/storage/innodb_plugin/page/page0zip.c
1775 @@ -49,7 +49,7 @@
1776
1777 #ifndef UNIV_HOTBACKUP
1778@@ -538,9 +520,8 @@
1779 #endif /* !UNIV_HOTBACKUP */
1780
1781 /* Please refer to ../include/page0zip.ic for a description of the
1782-diff -ruN a/storage/innodb_plugin/row/row0merge.c b/storage/innodb_plugin/row/row0merge.c
1783---- a/storage/innodb_plugin/row/row0merge.c 2010-08-27 16:40:36.591058306 +0900
1784-+++ b/storage/innodb_plugin/row/row0merge.c 2010-08-27 16:44:21.713021156 +0900
1785+--- a/storage/innodb_plugin/row/row0merge.c
1786++++ b/storage/innodb_plugin/row/row0merge.c
1787 @@ -92,7 +92,7 @@
1788 row_merge_block_t. Thus, it must be able to hold one merge record,
1789 whose maximum size is the same as the minimum size of
1790@@ -550,9 +531,8 @@
1791
1792 /** @brief Merge record in row_merge_block_t.
1793
1794-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
1795---- a/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:43:11.968059077 +0900
1796-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:44:21.716988122 +0900
1797+--- a/storage/innodb_plugin/srv/srv0srv.c
1798++++ b/storage/innodb_plugin/srv/srv0srv.c
1799 @@ -217,6 +217,13 @@
1800 UNIV_INTERN ulint srv_n_read_io_threads = ULINT_MAX;
1801 UNIV_INTERN ulint srv_n_write_io_threads = ULINT_MAX;
1802@@ -567,9 +547,8 @@
1803 /* User settable value of the number of pages that must be present
1804 in the buffer cache and accessed sequentially for InnoDB to trigger a
1805 readahead request. */
1806-diff -ruN a/storage/innodb_plugin/srv/srv0start.c b/storage/innodb_plugin/srv/srv0start.c
1807---- a/storage/innodb_plugin/srv/srv0start.c 2010-08-27 16:40:36.602058774 +0900
1808-+++ b/storage/innodb_plugin/srv/srv0start.c 2010-08-27 16:44:21.720021228 +0900
1809+--- a/storage/innodb_plugin/srv/srv0start.c
1810++++ b/storage/innodb_plugin/srv/srv0start.c
1811 @@ -1512,10 +1512,12 @@
1812 }
1813 #endif /* UNIV_LOG_ARCHIVE */
1814
1815=== modified file 'patches/innodb_fix_misc.patch'
1816--- patches/innodb_fix_misc.patch 2011-07-22 05:41:42 +0000
1817+++ patches/innodb_fix_misc.patch 2011-07-27 11:11:52 +0000
1818@@ -11,9 +11,8 @@
1819 #!!! notice !!!
1820 # Any small change to this file in the main branch
1821 # should be done or reviewed by the maintainer!
1822-diff -ruN a/storage/innodb_plugin/buf/buf0buddy.c b/storage/innodb_plugin/buf/buf0buddy.c
1823---- a/storage/innodb_plugin/buf/buf0buddy.c 2011-06-23 17:58:32.811788353 +0900
1824-+++ b/storage/innodb_plugin/buf/buf0buddy.c 2011-06-23 17:59:22.291827133 +0900
1825+--- a/storage/innodb_plugin/buf/buf0buddy.c
1826++++ b/storage/innodb_plugin/buf/buf0buddy.c
1827 @@ -377,7 +377,9 @@
1828 buf_page_t* bpage, /*!< in: block to relocate */
1829 buf_page_t* dpage) /*!< in: free block to relocate to */
1830@@ -40,9 +39,8 @@
1831
1832 UNIV_MEM_INVALID(bpage, sizeof *bpage);
1833
1834-diff -ruN a/storage/innodb_plugin/buf/buf0buf.c b/storage/innodb_plugin/buf/buf0buf.c
1835---- a/storage/innodb_plugin/buf/buf0buf.c 2011-02-21 20:31:57.781983359 +0900
1836-+++ b/storage/innodb_plugin/buf/buf0buf.c 2011-02-21 20:32:39.523946003 +0900
1837+--- a/storage/innodb_plugin/buf/buf0buf.c
1838++++ b/storage/innodb_plugin/buf/buf0buf.c
1839 @@ -953,74 +953,6 @@
1840 return(NULL);
1841 }
1842@@ -484,9 +482,8 @@
1843
1844 mutex_exit(&LRU_list_mutex);
1845
1846-diff -ruN a/storage/innodb_plugin/buf/buf0flu.c b/storage/innodb_plugin/buf/buf0flu.c
1847---- a/storage/innodb_plugin/buf/buf0flu.c 2011-02-21 20:31:57.784983260 +0900
1848-+++ b/storage/innodb_plugin/buf/buf0flu.c 2011-02-21 20:32:39.524915732 +0900
1849+--- a/storage/innodb_plugin/buf/buf0flu.c
1850++++ b/storage/innodb_plugin/buf/buf0flu.c
1851 @@ -367,7 +367,7 @@
1852
1853 if (UNIV_LIKELY(bpage->in_LRU_list && buf_page_in_file(bpage))) {
1854@@ -520,9 +517,8 @@
1855 break;
1856 case BUF_BLOCK_FILE_PAGE:
1857 UT_LIST_REMOVE(flush_list, buf_pool->flush_list, bpage);
1858-diff -ruN a/storage/innodb_plugin/buf/buf0lru.c b/storage/innodb_plugin/buf/buf0lru.c
1859---- a/storage/innodb_plugin/buf/buf0lru.c 2011-02-21 20:31:57.451983310 +0900
1860-+++ b/storage/innodb_plugin/buf/buf0lru.c 2011-02-21 20:32:39.526949096 +0900
1861+--- a/storage/innodb_plugin/buf/buf0lru.c
1862++++ b/storage/innodb_plugin/buf/buf0lru.c
1863 @@ -550,6 +550,31 @@
1864 }
1865 }
1866@@ -594,9 +590,8 @@
1867
1868 mutex_exit(&buf_pool_zip_mutex);
1869 //buf_pool_mutex_exit_forbid();
1870-diff -ruN a/storage/innodb_plugin/fil/fil0fil.c b/storage/innodb_plugin/fil/fil0fil.c
1871---- a/storage/innodb_plugin/fil/fil0fil.c 2011-02-21 20:31:57.838984412 +0900
1872-+++ b/storage/innodb_plugin/fil/fil0fil.c 2011-02-21 20:32:39.528914782 +0900
1873+--- a/storage/innodb_plugin/fil/fil0fil.c
1874++++ b/storage/innodb_plugin/fil/fil0fil.c
1875 @@ -242,6 +242,7 @@
1876 struct fil_system_struct {
1877 #ifndef UNIV_HOTBACKUP
1878@@ -790,9 +785,8 @@
1879 }
1880
1881 ut_a(ret);
1882-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
1883---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:50:59.626327847 +0900
1884-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:55:20.281021252 +0900
1885+--- a/storage/innodb_plugin/handler/ha_innodb.cc
1886++++ b/storage/innodb_plugin/handler/ha_innodb.cc
1887 @@ -11750,6 +11750,12 @@
1888 "except for the deletion.",
1889 NULL, NULL, 0, 0, 1, 0);
1890@@ -823,9 +817,8 @@
1891 PLUGIN_LICENSE_GPL,
1892 innobase_init, /* Plugin Init */
1893 NULL, /* Plugin Deinit */
1894-diff -ruN a/storage/innodb_plugin/include/buf0buf.h b/storage/innodb_plugin/include/buf0buf.h
1895---- a/storage/innodb_plugin/include/buf0buf.h 2011-02-21 20:31:57.863983187 +0900
1896-+++ b/storage/innodb_plugin/include/buf0buf.h 2011-02-21 20:32:39.537912716 +0900
1897+--- a/storage/innodb_plugin/include/buf0buf.h
1898++++ b/storage/innodb_plugin/include/buf0buf.h
1899 @@ -141,12 +141,6 @@
1900 BUF_BLOCK_ZIP_DIRTY or BUF_BLOCK_ZIP_PAGE */
1901 buf_page_t* dpage) /*!< in/out: destination control block */
1902@@ -858,9 +851,8 @@
1903 UT_LIST_BASE_NODE_T(buf_page_t) zip_free[BUF_BUDDY_SIZES_MAX];
1904 /*!< buddy free lists */
1905 //#if BUF_BUDDY_HIGH != UNIV_PAGE_SIZE
1906-diff -ruN a/storage/innodb_plugin/include/buf0buf.ic b/storage/innodb_plugin/include/buf0buf.ic
1907---- a/storage/innodb_plugin/include/buf0buf.ic 2011-02-21 20:31:57.725983812 +0900
1908-+++ b/storage/innodb_plugin/include/buf0buf.ic 2011-02-21 20:32:39.538913061 +0900
1909+--- a/storage/innodb_plugin/include/buf0buf.ic
1910++++ b/storage/innodb_plugin/include/buf0buf.ic
1911 @@ -384,6 +384,7 @@
1912 buf_block_set_state(block, BUF_BLOCK_FILE_PAGE);
1913 block->page.space = space;
1914@@ -869,9 +861,8 @@
1915 }
1916
1917 /*********************************************************************//**
1918-diff -ruN a/storage/innodb_plugin/include/buf0lru.h b/storage/innodb_plugin/include/buf0lru.h
1919---- a/storage/innodb_plugin/include/buf0lru.h 2011-02-21 20:31:57.480924269 +0900
1920-+++ b/storage/innodb_plugin/include/buf0lru.h 2011-02-21 20:32:39.539912965 +0900
1921+--- a/storage/innodb_plugin/include/buf0lru.h
1922++++ b/storage/innodb_plugin/include/buf0lru.h
1923 @@ -84,6 +84,14 @@
1924 buf_LRU_invalidate_tablespace(
1925 /*==========================*/
1926@@ -895,9 +886,8 @@
1927
1928 /******************************************************************//**
1929 Try to free a block. If bpage is a descriptor of a compressed-only
1930-diff -ruN a/storage/innodb_plugin/include/os0file.h b/storage/innodb_plugin/include/os0file.h
1931---- a/storage/innodb_plugin/include/os0file.h 2011-02-21 20:31:57.870987755 +0900
1932-+++ b/storage/innodb_plugin/include/os0file.h 2011-02-21 20:32:39.540912738 +0900
1933+--- a/storage/innodb_plugin/include/os0file.h
1934++++ b/storage/innodb_plugin/include/os0file.h
1935 @@ -658,6 +658,7 @@
1936 (can be used to identify a completed
1937 aio operation); ignored if mode is
1938@@ -926,9 +916,8 @@
1939 /**********************************************************************//**
1940 Validates the consistency of the aio system.
1941 @return TRUE if ok */
1942-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
1943---- a/storage/innodb_plugin/include/srv0srv.h 2011-02-21 20:31:57.824983518 +0900
1944-+++ b/storage/innodb_plugin/include/srv0srv.h 2011-02-21 20:32:39.541913033 +0900
1945+--- a/storage/innodb_plugin/include/srv0srv.h
1946++++ b/storage/innodb_plugin/include/srv0srv.h
1947 @@ -236,6 +236,8 @@
1948
1949 extern ulint srv_extra_rsegments;
1950@@ -938,9 +927,8 @@
1951 /*-------------------------------------------*/
1952
1953 extern ulint srv_n_rows_inserted;
1954-diff -ruN a/storage/innodb_plugin/include/sync0sync.h b/storage/innodb_plugin/include/sync0sync.h
1955---- a/storage/innodb_plugin/include/sync0sync.h 2011-02-21 20:31:57.382982949 +0900
1956-+++ b/storage/innodb_plugin/include/sync0sync.h 2011-02-21 20:32:39.543913340 +0900
1957+--- a/storage/innodb_plugin/include/sync0sync.h
1958++++ b/storage/innodb_plugin/include/sync0sync.h
1959 @@ -496,6 +496,7 @@
1960 #define SYNC_BUF_POOL 150
1961 #define SYNC_BUF_FLUSH_LIST 149
1962@@ -949,9 +937,8 @@
1963 #define SYNC_ANY_LATCH 135
1964 #define SYNC_THR_LOCAL 133
1965 #define SYNC_MEM_HASH 131
1966-diff -ruN a/storage/innodb_plugin/include/univ.i b/storage/innodb_plugin/include/univ.i
1967---- a/storage/innodb_plugin/include/univ.i 2010-04-30 16:37:05.000000000 +0900
1968-+++ b/storage/innodb_plugin/include/univ.i 2010-04-30 16:41:46.000000000 +0900
1969+--- a/storage/innodb_plugin/include/univ.i
1970++++ b/storage/innodb_plugin/include/univ.i
1971 @@ -48,6 +48,11 @@
1972 #define INNODB_VERSION_MINOR 0
1973 #define INNODB_VERSION_BUGFIX 16
1974@@ -983,9 +970,8 @@
1975
1976 #define REFMAN "http://dev.mysql.com/doc/refman/5.1/en/"
1977
1978-diff -ruN a/storage/innodb_plugin/os/os0file.c b/storage/innodb_plugin/os/os0file.c
1979---- a/storage/innodb_plugin/os/os0file.c 2011-02-21 20:31:57.437945953 +0900
1980-+++ b/storage/innodb_plugin/os/os0file.c 2011-02-21 20:32:39.546945763 +0900
1981+--- a/storage/innodb_plugin/os/os0file.c
1982++++ b/storage/innodb_plugin/os/os0file.c
1983 @@ -142,6 +142,7 @@
1984 // made and only the slot message
1985 // needs to be passed to the caller
1986@@ -994,7 +980,7 @@
1987 fil_node_t* message1; /*!< message which is given by the */
1988 void* message2; /*!< the requester of an aio operation
1989 and which can be used to identify
1990-@@ -3400,7 +3401,8 @@
1991+@@ -3401,7 +3402,8 @@
1992 offset */
1993 ulint offset_high, /*!< in: most significant 32 bits of
1994 offset */
1995@@ -1004,7 +990,7 @@
1996 {
1997 os_aio_slot_t* slot;
1998 ulint i;
1999-@@ -3482,6 +3484,7 @@
2000+@@ -3483,6 +3485,7 @@
2001 slot->offset_high = offset_high;
2002 // slot->io_already_done = FALSE;
2003 slot->status = OS_AIO_NOT_ISSUED;
2004@@ -1012,7 +998,7 @@
2005
2006 #ifdef WIN_ASYNC_IO
2007 control = &(slot->control);
2008-@@ -3690,6 +3693,7 @@
2009+@@ -3691,6 +3694,7 @@
2010 (can be used to identify a completed
2011 aio operation); ignored if mode is
2012 OS_AIO_SYNC */
2013@@ -1020,7 +1006,7 @@
2014 trx_t* trx)
2015 {
2016 os_aio_array_t* array;
2017-@@ -3772,7 +3776,7 @@
2018+@@ -3773,7 +3777,7 @@
2019 trx->io_read += n;
2020 }
2021 slot = os_aio_array_reserve_slot(type, array, message1, message2, file,
2022@@ -1029,7 +1015,7 @@
2023 if (type == OS_FILE_READ) {
2024 if (os_aio_use_native_aio) {
2025 #ifdef WIN_ASYNC_IO
2026-@@ -3882,7 +3886,8 @@
2027+@@ -3883,7 +3887,8 @@
2028 parameters are valid and can be used to
2029 restart the operation, for example */
2030 void** message2,
2031@@ -1039,7 +1025,7 @@
2032 {
2033 ulint orig_seg = segment;
2034 os_aio_array_t* array;
2035-@@ -3936,6 +3941,7 @@
2036+@@ -3937,6 +3942,7 @@
2037 *message2 = slot->message2;
2038
2039 *type = slot->type;
2040@@ -1047,7 +1033,7 @@
2041
2042 if (ret && len == slot->len) {
2043 ret_val = TRUE;
2044-@@ -4019,7 +4025,8 @@
2045+@@ -4020,7 +4026,8 @@
2046 parameters are valid and can be used to
2047 restart the operation, for example */
2048 void** message2,
2049@@ -1057,7 +1043,7 @@
2050 {
2051 os_aio_array_t* array;
2052 ulint segment;
2053-@@ -4310,6 +4317,7 @@
2054+@@ -4311,6 +4318,7 @@
2055 *message2 = slot->message2;
2056
2057 *type = slot->type;
2058@@ -1065,9 +1051,8 @@
2059
2060 os_mutex_exit(array->mutex);
2061
2062-diff -ruN a/storage/innodb_plugin/row/row0mysql.c b/storage/innodb_plugin/row/row0mysql.c
2063---- a/storage/innodb_plugin/row/row0mysql.c 2010-07-20 16:33:04.097866666 +0900
2064-+++ b/storage/innodb_plugin/row/row0mysql.c 2010-07-20 16:33:53.995828763 +0900
2065+--- a/storage/innodb_plugin/row/row0mysql.c
2066++++ b/storage/innodb_plugin/row/row0mysql.c
2067 @@ -51,6 +51,7 @@
2068 #include "btr0sea.h"
2069 #include "fil0fil.h"
2070@@ -1090,9 +1075,8 @@
2071 if (prebuilt->sql_stat_start) {
2072 node->state = INS_NODE_SET_IX_LOCK;
2073 prebuilt->sql_stat_start = FALSE;
2074-diff -ruN a/storage/innodb_plugin/row/row0sel.c b/storage/innodb_plugin/row/row0sel.c
2075---- a/storage/innodb_plugin/row/row0sel.c 2010-07-20 16:33:04.204866103 +0900
2076-+++ b/storage/innodb_plugin/row/row0sel.c 2010-07-20 16:33:53.998864025 +0900
2077+--- a/storage/innodb_plugin/row/row0sel.c
2078++++ b/storage/innodb_plugin/row/row0sel.c
2079 @@ -3374,6 +3374,7 @@
2080 ulint offsets_[REC_OFFS_NORMAL_SIZE];
2081 ulint* offsets = offsets_;
2082@@ -1132,9 +1116,8 @@
2083 trx_print(stderr, trx, 600);
2084 fputc('\n', stderr);
2085 ut_error;
2086-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
2087---- a/storage/innodb_plugin/srv/srv0srv.c 2011-02-21 20:31:57.900982316 +0900
2088-+++ b/storage/innodb_plugin/srv/srv0srv.c 2011-02-21 20:32:39.549912950 +0900
2089+--- a/storage/innodb_plugin/srv/srv0srv.c
2090++++ b/storage/innodb_plugin/srv/srv0srv.c
2091 @@ -418,6 +418,8 @@
2092
2093 UNIV_INTERN ulint srv_extra_rsegments = 0; /* extra rseg for users */
2094@@ -1144,9 +1127,8 @@
2095 /*-------------------------------------------*/
2096 UNIV_INTERN ulong srv_n_spin_wait_rounds = 30;
2097 UNIV_INTERN ulong srv_n_free_tickets_to_enter = 500;
2098-diff -ruN a/storage/innodb_plugin/srv/srv0start.c b/storage/innodb_plugin/srv/srv0start.c
2099---- a/storage/innodb_plugin/srv/srv0start.c 2010-04-30 16:37:05.000000000 +0900
2100-+++ b/storage/innodb_plugin/srv/srv0start.c 2010-04-30 16:41:46.000000000 +0900
2101+--- a/storage/innodb_plugin/srv/srv0start.c
2102++++ b/storage/innodb_plugin/srv/srv0start.c
2103 @@ -2012,7 +2012,7 @@
2104 if (srv_print_verbose_log) {
2105 ut_print_timestamp(stderr);
2106@@ -1156,9 +1138,8 @@
2107 "log sequence number %llu\n",
2108 INNODB_VERSION_STR, srv_start_lsn);
2109 }
2110-diff -ruN a/storage/innodb_plugin/sync/sync0sync.c b/storage/innodb_plugin/sync/sync0sync.c
2111---- a/storage/innodb_plugin/sync/sync0sync.c 2011-02-25 14:09:57.710270419 +0900
2112-+++ b/storage/innodb_plugin/sync/sync0sync.c 2011-02-25 14:12:20.138232965 +0900
2113+--- a/storage/innodb_plugin/sync/sync0sync.c
2114++++ b/storage/innodb_plugin/sync/sync0sync.c
2115 @@ -1161,6 +1161,7 @@
2116 case SYNC_LOG:
2117 case SYNC_THR_LOCAL:
2118@@ -1167,9 +1148,8 @@
2119 case SYNC_TRX_SYS_HEADER:
2120 case SYNC_FILE_FORMAT_TAG:
2121 case SYNC_DOUBLEWRITE:
2122-diff -ruN a/storage/innodb_plugin/trx/trx0purge.c b/storage/innodb_plugin/trx/trx0purge.c
2123---- a/storage/innodb_plugin/trx/trx0purge.c 2010-07-21 14:52:46.538653893 +0900
2124-+++ b/storage/innodb_plugin/trx/trx0purge.c 2010-07-21 14:57:46.505530034 +0900
2125+--- a/storage/innodb_plugin/trx/trx0purge.c
2126++++ b/storage/innodb_plugin/trx/trx0purge.c
2127 @@ -1144,8 +1144,7 @@
2128 /* If we cannot advance the 'purge view' because of an old
2129 'consistent read view', then the DML statements cannot be delayed.
2130
2131=== modified file 'patches/innodb_io_patches.patch'
2132--- patches/innodb_io_patches.patch 2011-07-22 05:41:42 +0000
2133+++ patches/innodb_io_patches.patch 2011-07-27 11:11:52 +0000
2134@@ -5,9 +5,8 @@
2135 #!!! notice !!!
2136 # Any small change to this file in the main branch
2137 # should be done or reviewed by the maintainer!
2138-diff -ruN a/storage/innodb_plugin/buf/buf0flu.c b/storage/innodb_plugin/buf/buf0flu.c
2139---- a/storage/innodb_plugin/buf/buf0flu.c 2011-04-12 16:11:36.000000000 +0400
2140-+++ b/storage/innodb_plugin/buf/buf0flu.c 2011-07-07 18:53:03.000000000 +0400
2141+--- a/storage/innodb_plugin/buf/buf0flu.c
2142++++ b/storage/innodb_plugin/buf/buf0flu.c
2143 @@ -741,7 +741,7 @@
2144 flush:
2145 /* Now flush the doublewrite buffer data to disk */
2146@@ -46,9 +45,8 @@
2147
2148 buf_pool_mutex_enter();
2149 goto flush_next;
2150-diff -ruN a/storage/innodb_plugin/buf/buf0rea.c b/storage/innodb_plugin/buf/buf0rea.c
2151---- a/storage/innodb_plugin/buf/buf0rea.c 2011-04-12 16:11:41.000000000 +0400
2152-+++ b/storage/innodb_plugin/buf/buf0rea.c 2011-07-07 18:53:03.000000000 +0400
2153+--- a/storage/innodb_plugin/buf/buf0rea.c
2154++++ b/storage/innodb_plugin/buf/buf0rea.c
2155 @@ -254,6 +254,10 @@
2156 = BUF_READ_AHEAD_LINEAR_AREA;
2157 ulint threshold;
2158@@ -60,9 +58,8 @@
2159 if (UNIV_UNLIKELY(srv_startup_is_before_trx_rollback_phase)) {
2160 /* No read-ahead to avoid thread deadlocks */
2161 return(0);
2162-diff -ruN a/storage/innodb_plugin/fil/fil0fil.c b/storage/innodb_plugin/fil/fil0fil.c
2163---- a/storage/innodb_plugin/fil/fil0fil.c 2011-07-07 18:01:43.000000000 +0400
2164-+++ b/storage/innodb_plugin/fil/fil0fil.c 2011-07-07 18:52:59.000000000 +0400
2165+--- a/storage/innodb_plugin/fil/fil0fil.c
2166++++ b/storage/innodb_plugin/fil/fil0fil.c
2167 @@ -2554,7 +2554,7 @@
2168
2169 os_thread_sleep(20000);
2170@@ -137,9 +134,8 @@
2171 }
2172
2173 mem_free(space_ids);
2174-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
2175---- a/storage/innodb_plugin/handler/ha_innodb.cc 2011-07-07 18:01:43.000000000 +0400
2176-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2011-07-07 18:53:02.000000000 +0400
2177+--- a/storage/innodb_plugin/handler/ha_innodb.cc
2178++++ b/storage/innodb_plugin/handler/ha_innodb.cc
2179 @@ -332,6 +332,12 @@
2180 "Timeout in seconds an InnoDB transaction may wait for a lock before being rolled back. Values above 100000000 disable the timeout.",
2181 NULL, NULL, 50, 1, 1024 * 1024 * 1024, 0);
2182@@ -320,9 +316,8 @@
2183 MYSQL_SYSVAR(use_sys_malloc),
2184 MYSQL_SYSVAR(change_buffering),
2185 #if defined UNIV_DEBUG || defined UNIV_IBUF_DEBUG
2186-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
2187---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2011-07-07 18:01:43.000000000 +0400
2188-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2011-07-07 18:53:03.000000000 +0400
2189+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
2190++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
2191 @@ -25,5 +25,6 @@
2192 }innodb_enhancements[] = {
2193 {"xtradb_show_enhancements","I_S.XTRADB_ENHANCEMENTS","","http://www.percona.com/docs/wiki/percona-xtradb"},
2194@@ -330,9 +325,8 @@
2195 +{"innodb_io","Improvements to InnoDB IO","","http://www.percona.com/docs/wiki/percona-xtradb"},
2196 {NULL, NULL, NULL, NULL}
2197 };
2198-diff -ruN a/storage/innodb_plugin/ibuf/ibuf0ibuf.c b/storage/innodb_plugin/ibuf/ibuf0ibuf.c
2199---- a/storage/innodb_plugin/ibuf/ibuf0ibuf.c 2011-04-12 16:11:39.000000000 +0400
2200-+++ b/storage/innodb_plugin/ibuf/ibuf0ibuf.c 2011-07-07 18:53:01.000000000 +0400
2201+--- a/storage/innodb_plugin/ibuf/ibuf0ibuf.c
2202++++ b/storage/innodb_plugin/ibuf/ibuf0ibuf.c
2203 @@ -464,8 +464,10 @@
2204 grow in size, as the references on the upper levels of the tree can
2205 change */
2206@@ -360,9 +354,8 @@
2207
2208 sync = FALSE;
2209
2210-diff -ruN a/storage/innodb_plugin/include/buf0rea.h b/storage/innodb_plugin/include/buf0rea.h
2211---- a/storage/innodb_plugin/include/buf0rea.h 2011-04-12 16:11:41.000000000 +0400
2212-+++ b/storage/innodb_plugin/include/buf0rea.h 2011-07-07 18:52:57.000000000 +0400
2213+--- a/storage/innodb_plugin/include/buf0rea.h
2214++++ b/storage/innodb_plugin/include/buf0rea.h
2215 @@ -124,8 +124,7 @@
2216
2217 /** The size in pages of the area which the read-ahead algorithms read if
2218@@ -373,9 +366,8 @@
2219
2220 /** @name Modes used in read-ahead @{ */
2221 /** read only pages belonging to the insert buffer tree */
2222-diff -ruN a/storage/innodb_plugin/include/fil0fil.h b/storage/innodb_plugin/include/fil0fil.h
2223---- a/storage/innodb_plugin/include/fil0fil.h 2011-07-07 18:01:43.000000000 +0400
2224-+++ b/storage/innodb_plugin/include/fil0fil.h 2011-07-07 18:52:57.000000000 +0400
2225+--- a/storage/innodb_plugin/include/fil0fil.h
2226++++ b/storage/innodb_plugin/include/fil0fil.h
2227 @@ -657,8 +657,9 @@
2228 void
2229 fil_flush(
2230@@ -387,9 +379,8 @@
2231 /**********************************************************************//**
2232 Flushes to disk writes in file spaces of the given type possibly cached by
2233 the OS. */
2234-diff -ruN a/storage/innodb_plugin/include/ha_prototypes.h b/storage/innodb_plugin/include/ha_prototypes.h
2235---- a/storage/innodb_plugin/include/ha_prototypes.h 2011-04-12 16:11:41.000000000 +0400
2236-+++ b/storage/innodb_plugin/include/ha_prototypes.h 2011-07-07 18:01:44.000000000 +0400
2237+--- a/storage/innodb_plugin/include/ha_prototypes.h
2238++++ b/storage/innodb_plugin/include/ha_prototypes.h
2239 @@ -268,4 +268,12 @@
2240 void* thd); /*!< in: thread handle (THD*), or NULL to query
2241 the global innodb_lock_wait_timeout */
2242@@ -403,9 +394,8 @@
2243 + void* thd);
2244 +
2245 #endif
2246-diff -ruN a/storage/innodb_plugin/include/os0file.h b/storage/innodb_plugin/include/os0file.h
2247---- a/storage/innodb_plugin/include/os0file.h 2011-04-12 16:11:41.000000000 +0400
2248-+++ b/storage/innodb_plugin/include/os0file.h 2011-07-07 18:52:57.000000000 +0400
2249+--- a/storage/innodb_plugin/include/os0file.h
2250++++ b/storage/innodb_plugin/include/os0file.h
2251 @@ -466,7 +466,8 @@
2252 ibool
2253 os_file_flush(
2254@@ -416,9 +406,8 @@
2255 /***********************************************************************//**
2256 Retrieves the last error number if an error occurs in a file io function.
2257 The number should be retrieved before any other OS calls (because they may
2258-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
2259---- a/storage/innodb_plugin/include/srv0srv.h 2011-07-07 18:01:43.000000000 +0400
2260-+++ b/storage/innodb_plugin/include/srv0srv.h 2011-07-07 18:53:02.000000000 +0400
2261+--- a/storage/innodb_plugin/include/srv0srv.h
2262++++ b/storage/innodb_plugin/include/srv0srv.h
2263 @@ -204,6 +204,16 @@
2264 extern ulong srv_max_purge_lag;
2265
2266@@ -447,9 +436,8 @@
2267 };
2268
2269 /** Alternatives for file i/o in Windows */
2270-diff -ruN a/storage/innodb_plugin/include/trx0trx.h b/storage/innodb_plugin/include/trx0trx.h
2271---- a/storage/innodb_plugin/include/trx0trx.h 2011-04-12 16:11:39.000000000 +0400
2272-+++ b/storage/innodb_plugin/include/trx0trx.h 2011-07-07 18:53:01.000000000 +0400
2273+--- a/storage/innodb_plugin/include/trx0trx.h
2274++++ b/storage/innodb_plugin/include/trx0trx.h
2275 @@ -497,6 +497,7 @@
2276 FALSE, one can save CPU time and about
2277 150 bytes in the undo log size as then
2278@@ -458,9 +446,8 @@
2279 ulint flush_log_later;/* In 2PC, we hold the
2280 prepare_commit mutex across
2281 both phases. In that case, we
2282-diff -ruN a/storage/innodb_plugin/log/log0log.c b/storage/innodb_plugin/log/log0log.c
2283---- a/storage/innodb_plugin/log/log0log.c 2011-04-12 16:11:41.000000000 +0400
2284-+++ b/storage/innodb_plugin/log/log0log.c 2011-07-07 18:52:58.000000000 +0400
2285+--- a/storage/innodb_plugin/log/log0log.c
2286++++ b/storage/innodb_plugin/log/log0log.c
2287 @@ -347,6 +347,33 @@
2288 }
2289
2290@@ -608,9 +595,8 @@
2291 current_time = time(NULL);
2292
2293 time_elapsed = 0.001 + difftime(current_time,
2294-diff -ruN a/storage/innodb_plugin/log/log0recv.c b/storage/innodb_plugin/log/log0recv.c
2295---- a/storage/innodb_plugin/log/log0recv.c 2011-04-12 16:11:37.000000000 +0400
2296-+++ b/storage/innodb_plugin/log/log0recv.c 2011-07-07 18:52:58.000000000 +0400
2297+--- a/storage/innodb_plugin/log/log0recv.c
2298++++ b/storage/innodb_plugin/log/log0recv.c
2299 @@ -2893,9 +2893,12 @@
2300 ib_uint64_t archived_lsn;
2301 #endif /* UNIV_LOG_ARCHIVE */
2302@@ -643,9 +629,8 @@
2303 os_file_close(log_file);
2304
2305 ut_free(buf);
2306-diff -ruN a/storage/innodb_plugin/os/os0file.c b/storage/innodb_plugin/os/os0file.c
2307---- a/storage/innodb_plugin/os/os0file.c 2011-04-12 16:11:34.000000000 +0400
2308-+++ b/storage/innodb_plugin/os/os0file.c 2011-07-07 18:52:58.000000000 +0400
2309+--- a/storage/innodb_plugin/os/os0file.c
2310++++ b/storage/innodb_plugin/os/os0file.c
2311 @@ -91,6 +91,28 @@
2312 /** Flag: enable debug printout for asynchronous i/o */
2313 UNIV_INTERN ibool os_aio_print_debug = FALSE;
2314@@ -1204,9 +1189,8 @@
2315
2316 *message1 = slot->message1;
2317 *message2 = slot->message2;
2318-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
2319---- a/storage/innodb_plugin/srv/srv0srv.c 2011-07-07 18:01:43.000000000 +0400
2320-+++ b/storage/innodb_plugin/srv/srv0srv.c 2011-07-07 18:53:02.000000000 +0400
2321+--- a/storage/innodb_plugin/srv/srv0srv.c
2322++++ b/storage/innodb_plugin/srv/srv0srv.c
2323 @@ -375,6 +375,17 @@
2324
2325 UNIV_INTERN ulong srv_replication_delay = 0;
2326@@ -1605,9 +1589,8 @@
2327 }
2328
2329 srv_main_thread_op_info = "reserving kernel mutex";
2330-diff -ruN a/storage/innodb_plugin/srv/srv0start.c b/storage/innodb_plugin/srv/srv0start.c
2331---- a/storage/innodb_plugin/srv/srv0start.c 2011-04-12 16:11:39.000000000 +0400
2332-+++ b/storage/innodb_plugin/srv/srv0start.c 2011-07-07 18:53:02.000000000 +0400
2333+--- a/storage/innodb_plugin/srv/srv0start.c
2334++++ b/storage/innodb_plugin/srv/srv0start.c
2335 @@ -1141,7 +1141,12 @@
2336 break;
2337 default:
2338@@ -1645,9 +1628,8 @@
2339 #endif
2340 } else {
2341 fprintf(stderr,
2342-diff -ruN a/storage/innodb_plugin/trx/trx0trx.c b/storage/innodb_plugin/trx/trx0trx.c
2343---- a/storage/innodb_plugin/trx/trx0trx.c 2011-04-12 16:11:39.000000000 +0400
2344-+++ b/storage/innodb_plugin/trx/trx0trx.c 2011-07-07 18:53:01.000000000 +0400
2345+--- a/storage/innodb_plugin/trx/trx0trx.c
2346++++ b/storage/innodb_plugin/trx/trx0trx.c
2347 @@ -109,6 +109,8 @@
2348
2349 trx->support_xa = TRUE;
2350
2351=== modified file 'patches/innodb_lru_dump_restore.patch'
2352--- patches/innodb_lru_dump_restore.patch 2011-06-23 02:18:22 +0000
2353+++ patches/innodb_lru_dump_restore.patch 2011-07-27 11:11:52 +0000
2354@@ -5,8 +5,8 @@
2355 #!!! notice !!!
2356 # Any small change to this file in the main branch
2357 # should be done or reviewed by the maintainer!
2358---- /dev/null 1970-01-01 00:00:00.000000000 +0000
2359-+++ b/mysql-test/suite/innodb_plugin/r/percona_bug692211.result 2010-12-22 20:48:19.000000000 +0300
2360+--- /dev/null
2361++++ b/mysql-test/suite/innodb_plugin/r/percona_bug692211.result
2362 @@ -0,0 +1,7 @@
2363 +#
2364 +# LP bug #692211: innodb_auto_lru_dump crashes if ib_lru_dump doesn't
2365@@ -15,12 +15,12 @@
2366 +SELECT @@innodb_auto_lru_dump;
2367 +@@innodb_auto_lru_dump
2368 +300
2369---- /dev/null 1970-01-01 00:00:00.000000000 +0000
2370-+++ b/mysql-test/suite/innodb_plugin/t/percona_bug692211-master.opt 2010-12-22 20:25:59.000000000 +0300
2371+--- /dev/null
2372++++ b/mysql-test/suite/innodb_plugin/t/percona_bug692211-master.opt
2373 @@ -0,0 +1 @@
2374 +--innodb_auto_lru_dump=300
2375---- /dev/null 1970-01-01 00:00:00.000000000 +0000
2376-+++ b/mysql-test/suite/innodb_plugin/t/percona_bug692211.test 2010-12-22 20:17:57.000000000 +0300
2377+--- /dev/null
2378++++ b/mysql-test/suite/innodb_plugin/t/percona_bug692211.test
2379 @@ -0,0 +1,17 @@
2380 +--source include/have_innodb_plugin.inc
2381 +
2382@@ -39,9 +39,8 @@
2383 +--let $MYSQLD_DATADIR= `SELECT @@datadir`
2384 +--error 1
2385 +--file_exists $MYSQLD_DATADIR/ib_lru_dump;
2386-diff -ruN a/storage/innodb_plugin/buf/buf0lru.c b/storage/innodb_plugin/buf/buf0lru.c
2387---- a/storage/innodb_plugin/buf/buf0lru.c 2010-08-27 16:13:11.070058073 +0900
2388-+++ b/storage/innodb_plugin/buf/buf0lru.c 2010-08-27 16:34:33.860400549 +0900
2389+--- a/storage/innodb_plugin/buf/buf0lru.c
2390++++ b/storage/innodb_plugin/buf/buf0lru.c
2391 @@ -2121,6 +2121,277 @@
2392 memset(&buf_LRU_stat_cur, 0, sizeof buf_LRU_stat_cur);
2393 }
2394@@ -320,9 +319,8 @@
2395 #if defined UNIV_DEBUG || defined UNIV_BUF_DEBUG
2396 /**********************************************************************//**
2397 Validates the LRU list.
2398-diff -ruN a/storage/innodb_plugin/buf/buf0rea.c b/storage/innodb_plugin/buf/buf0rea.c
2399---- a/storage/innodb_plugin/buf/buf0rea.c 2010-08-27 16:32:40.293411717 +0900
2400-+++ b/storage/innodb_plugin/buf/buf0rea.c 2010-08-27 16:34:33.863409016 +0900
2401+--- a/storage/innodb_plugin/buf/buf0rea.c
2402++++ b/storage/innodb_plugin/buf/buf0rea.c
2403 @@ -56,7 +56,7 @@
2404 which case it is never read into the pool, or if the tablespace does
2405 not exist or is being dropped
2406@@ -332,9 +330,8 @@
2407 ulint
2408 buf_read_page_low(
2409 /*==============*/
2410-diff -ruN a/storage/innodb_plugin/fil/fil0fil.c b/storage/innodb_plugin/fil/fil0fil.c
2411---- a/storage/innodb_plugin/fil/fil0fil.c 2010-08-27 16:32:40.298411400 +0900
2412-+++ b/storage/innodb_plugin/fil/fil0fil.c 2010-08-27 16:34:33.868058362 +0900
2413+--- a/storage/innodb_plugin/fil/fil0fil.c
2414++++ b/storage/innodb_plugin/fil/fil0fil.c
2415 @@ -4917,6 +4917,70 @@
2416 return(DB_SUCCESS);
2417 }
2418@@ -406,9 +403,8 @@
2419 #ifndef UNIV_HOTBACKUP
2420 /**********************************************************************//**
2421 Waits for an aio operation to complete. This function is used to write the
2422-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
2423---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-10-01 09:57:56.486228425 +0900
2424-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-10-01 10:00:13.292228546 +0900
2425+--- a/storage/innodb_plugin/handler/ha_innodb.cc
2426++++ b/storage/innodb_plugin/handler/ha_innodb.cc
2427 @@ -11551,6 +11551,12 @@
2428 "Limit the allocated memory for dictionary cache. (0: unlimited)",
2429 NULL, NULL, 0, 0, LONG_MAX, 0);
2430@@ -430,9 +426,8 @@
2431 MYSQL_SYSVAR(use_purge_thread),
2432 NULL
2433 };
2434-diff -ruN a/storage/innodb_plugin/handler/i_s.cc b/storage/innodb_plugin/handler/i_s.cc
2435---- a/storage/innodb_plugin/handler/i_s.cc 2010-08-27 16:29:12.540979608 +0900
2436-+++ b/storage/innodb_plugin/handler/i_s.cc 2010-08-27 16:34:33.873058189 +0900
2437+--- a/storage/innodb_plugin/handler/i_s.cc
2438++++ b/storage/innodb_plugin/handler/i_s.cc
2439 @@ -46,6 +46,7 @@
2440 #include "trx0rseg.h" /* for trx_rseg_struct */
2441 #include "trx0sys.h" /* for trx_sys */
2442@@ -478,9 +473,8 @@
2443
2444 field_store_string(i_s_table->field[0],
2445 "Undefined XTRA_* command.");
2446-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
2447---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:32:40.313021803 +0900
2448-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:34:33.871059345 +0900
2449+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
2450++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
2451 @@ -41,5 +41,6 @@
2452 {"innodb_admin_command_base","XtraDB specific command interface through i_s","","http://www.percona.com/docs/wiki/percona-xtradb"},
2453 {"innodb_show_lock_name","Show mutex/lock name instead of crated file/line","","http://www.percona.com/docs/wiki/percona-xtradb"},
2454@@ -488,9 +482,8 @@
2455 +{"innodb_lru_dump_restore","Dump and restore command for content of buffer pool","","http://www.percona.com/docs/wiki/percona-xtradb"},
2456 {NULL, NULL, NULL, NULL}
2457 };
2458-diff -ruN a/storage/innodb_plugin/include/buf0lru.h b/storage/innodb_plugin/include/buf0lru.h
2459---- a/storage/innodb_plugin/include/buf0lru.h 2010-08-27 16:13:11.085978393 +0900
2460-+++ b/storage/innodb_plugin/include/buf0lru.h 2010-08-27 16:34:33.875100517 +0900
2461+--- a/storage/innodb_plugin/include/buf0lru.h
2462++++ b/storage/innodb_plugin/include/buf0lru.h
2463 @@ -209,6 +209,18 @@
2464 void
2465 buf_LRU_stat_update(void);
2466@@ -510,9 +503,8 @@
2467
2468 #if defined UNIV_DEBUG || defined UNIV_BUF_DEBUG
2469 /**********************************************************************//**
2470-diff -ruN a/storage/innodb_plugin/include/buf0rea.h b/storage/innodb_plugin/include/buf0rea.h
2471---- a/storage/innodb_plugin/include/buf0rea.h 2010-08-27 16:32:40.314021595 +0900
2472-+++ b/storage/innodb_plugin/include/buf0rea.h 2010-08-27 16:34:33.877059445 +0900
2473+--- a/storage/innodb_plugin/include/buf0rea.h
2474++++ b/storage/innodb_plugin/include/buf0rea.h
2475 @@ -31,6 +31,37 @@
2476 #include "buf0types.h"
2477
2478@@ -551,9 +543,8 @@
2479 High-level function which reads a page asynchronously from a file to the
2480 buffer buf_pool if it is not already there. Sets the io_fix flag and sets
2481 an exclusive lock on the buffer frame. The flag is cleared and the x-lock
2482-diff -ruN a/storage/innodb_plugin/include/fil0fil.h b/storage/innodb_plugin/include/fil0fil.h
2483---- a/storage/innodb_plugin/include/fil0fil.h 2010-08-27 16:32:40.315012507 +0900
2484-+++ b/storage/innodb_plugin/include/fil0fil.h 2010-08-27 16:34:33.878063455 +0900
2485+--- a/storage/innodb_plugin/include/fil0fil.h
2486++++ b/storage/innodb_plugin/include/fil0fil.h
2487 @@ -643,6 +643,14 @@
2488 void* message, /*!< in: message for aio handler if non-sync
2489 aio used, else ignored */
2490@@ -569,9 +560,8 @@
2491 /**********************************************************************//**
2492 Waits for an aio operation to complete. This function is used to write the
2493 handler for completed requests. The aio array of pending requests is divided
2494-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
2495---- a/storage/innodb_plugin/include/srv0srv.h 2010-10-01 09:57:56.500228711 +0900
2496-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-10-01 10:00:13.302223409 +0900
2497+--- a/storage/innodb_plugin/include/srv0srv.h
2498++++ b/storage/innodb_plugin/include/srv0srv.h
2499 @@ -335,6 +335,9 @@
2500 reading of a disk page */
2501 extern ulint srv_buf_pool_reads;
2502@@ -599,9 +589,8 @@
2503 /******************************************************************//**
2504 Outputs to a file the output of the InnoDB Monitor.
2505 @return FALSE if not all information printed
2506-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
2507---- a/storage/innodb_plugin/srv/srv0srv.c 2010-10-01 09:57:56.516255101 +0900
2508-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-10-01 10:00:13.304230973 +0900
2509+--- a/storage/innodb_plugin/srv/srv0srv.c
2510++++ b/storage/innodb_plugin/srv/srv0srv.c
2511 @@ -303,6 +303,9 @@
2512 reading of a disk page */
2513 UNIV_INTERN ulint srv_buf_pool_reads = 0;
2514@@ -612,15 +601,10 @@
2515 /* structure to pass status variables to MySQL */
2516 UNIV_INTERN export_struc export_vars;
2517
2518-@@ -2550,6 +2553,56 @@
2519- /* We count the number of threads in os_thread_exit(). A created
2520- thread should always use that to exit and not use return() to exit. */
2521+@@ -2555,6 +2558,56 @@
2522+ OS_THREAD_DUMMY_RETURN;
2523+ }
2524
2525-+ os_thread_exit(NULL);
2526-+
2527-+ OS_THREAD_DUMMY_RETURN;
2528-+}
2529-+
2530 +/*********************************************************************//**
2531 +A thread which restores the buffer pool from a dump file on startup and does
2532 +periodic buffer pool dumps.
2533@@ -666,12 +650,16 @@
2534 + /* We count the number of threads in os_thread_exit(). A created
2535 + thread should always use that to exit and not use return() to exit. */
2536 +
2537- os_thread_exit(NULL);
2538-
2539- OS_THREAD_DUMMY_RETURN;
2540-diff -ruN a/storage/innodb_plugin/srv/srv0start.c b/storage/innodb_plugin/srv/srv0start.c
2541---- a/storage/innodb_plugin/srv/srv0start.c 2010-10-01 09:57:56.420229366 +0900
2542-+++ b/storage/innodb_plugin/srv/srv0start.c 2010-10-01 10:00:13.309260428 +0900
2543++ os_thread_exit(NULL);
2544++
2545++ OS_THREAD_DUMMY_RETURN;
2546++}
2547++
2548+ /*******************************************************************//**
2549+ Tells the InnoDB server that there has been activity in the database
2550+ and wakes up the master thread if it is suspended (not sleeping). Used
2551+--- a/storage/innodb_plugin/srv/srv0start.c
2552++++ b/storage/innodb_plugin/srv/srv0start.c
2553 @@ -126,9 +126,9 @@
2554 static ulint ios;
2555
2556
2557=== modified file 'patches/innodb_opt_lru_count.patch'
2558--- patches/innodb_opt_lru_count.patch 2011-06-23 02:18:22 +0000
2559+++ patches/innodb_opt_lru_count.patch 2011-07-27 11:11:52 +0000
2560@@ -5,9 +5,8 @@
2561 #!!! notice !!!
2562 # Any small change to this file in the main branch
2563 # should be done or reviewed by the maintainer!
2564-diff -ruN a/storage/innodb_plugin/buf/buf0buddy.c b/storage/innodb_plugin/buf/buf0buddy.c
2565---- a/storage/innodb_plugin/buf/buf0buddy.c 2010-04-06 23:07:12.000000000 +0900
2566-+++ b/storage/innodb_plugin/buf/buf0buddy.c 2010-04-29 15:55:42.000000000 +0900
2567+--- a/storage/innodb_plugin/buf/buf0buddy.c
2568++++ b/storage/innodb_plugin/buf/buf0buddy.c
2569 @@ -143,7 +143,7 @@
2570 ut_ad(buf_page_get_state(ut_list_node_313)
2571 == BUF_BLOCK_ZIP_FREE)));
2572@@ -17,9 +16,8 @@
2573
2574 if (bpage) {
2575 UNIV_MEM_VALID(bpage, BUF_BUDDY_LOW << i);
2576-diff -ruN a/storage/innodb_plugin/buf/buf0buf.c b/storage/innodb_plugin/buf/buf0buf.c
2577---- a/storage/innodb_plugin/buf/buf0buf.c 2010-04-29 15:44:28.000000000 +0900
2578-+++ b/storage/innodb_plugin/buf/buf0buf.c 2010-04-29 15:55:42.000000000 +0900
2579+--- a/storage/innodb_plugin/buf/buf0buf.c
2580++++ b/storage/innodb_plugin/buf/buf0buf.c
2581 @@ -669,9 +669,9 @@
2582 block->page.in_zip_hash = FALSE;
2583 block->page.in_flush_list = FALSE;
2584@@ -77,9 +75,8 @@
2585
2586 return(ratio);
2587 }
2588-diff -ruN a/storage/innodb_plugin/buf/buf0flu.c b/storage/innodb_plugin/buf/buf0flu.c
2589---- a/storage/innodb_plugin/buf/buf0flu.c 2010-04-29 15:55:25.000000000 +0900
2590-+++ b/storage/innodb_plugin/buf/buf0flu.c 2010-04-29 15:55:42.000000000 +0900
2591+--- a/storage/innodb_plugin/buf/buf0flu.c
2592++++ b/storage/innodb_plugin/buf/buf0flu.c
2593 @@ -351,17 +351,19 @@
2594 buf_page_t* bpage) /*!< in: buffer control block, must be
2595 buf_page_in_file(bpage) and in the LRU list */
2596@@ -183,9 +180,8 @@
2597 /* There was an LRU type flush batch already running;
2598 let us wait for it to end */
2599
2600-diff -ruN a/storage/innodb_plugin/buf/buf0lru.c b/storage/innodb_plugin/buf/buf0lru.c
2601---- a/storage/innodb_plugin/buf/buf0lru.c 2010-04-06 23:07:12.000000000 +0900
2602-+++ b/storage/innodb_plugin/buf/buf0lru.c 2010-04-29 15:55:42.000000000 +0900
2603+--- a/storage/innodb_plugin/buf/buf0lru.c
2604++++ b/storage/innodb_plugin/buf/buf0lru.c
2605 @@ -936,7 +936,7 @@
2606
2607 /* No free block was found: try to flush the LRU list */
2608@@ -231,9 +227,8 @@
2609 buf_LRU_add_block_low(b, buf_page_is_old(b));
2610 }
2611
2612-diff -ruN a/storage/innodb_plugin/buf/buf0rea.c b/storage/innodb_plugin/buf/buf0rea.c
2613---- a/storage/innodb_plugin/buf/buf0rea.c 2010-04-29 15:55:25.000000000 +0900
2614-+++ b/storage/innodb_plugin/buf/buf0rea.c 2010-04-29 15:55:42.000000000 +0900
2615+--- a/storage/innodb_plugin/buf/buf0rea.c
2616++++ b/storage/innodb_plugin/buf/buf0rea.c
2617 @@ -195,7 +195,7 @@
2618 }
2619
2620@@ -270,9 +265,8 @@
2621
2622 #ifdef UNIV_DEBUG
2623 if (buf_debug_prints) {
2624-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
2625---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-29 15:55:25.000000000 +0900
2626-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-29 15:55:42.000000000 +0900
2627+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
2628++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
2629 @@ -26,5 +26,6 @@
2630 {"xtradb_show_enhancements","I_S.XTRADB_ENHANCEMENTS","","http://www.percona.com/docs/wiki/percona-xtradb"},
2631 {"innodb_show_status","Improvements to SHOW INNODB STATUS","Memory information and lock info fixes","http://www.percona.com/docs/wiki/percona-xtradb"},
2632@@ -280,9 +274,8 @@
2633 +{"innodb_opt_lru_count","Fix of buffer_pool mutex","Decreases contention on buffer_pool mutex on LRU operations","http://www.percona.com/docs/wiki/percona-xtradb"},
2634 {NULL, NULL, NULL, NULL}
2635 };
2636-diff -ruN a/storage/innodb_plugin/include/buf0buf.h b/storage/innodb_plugin/include/buf0buf.h
2637---- a/storage/innodb_plugin/include/buf0buf.h 2010-04-06 23:07:12.000000000 +0900
2638-+++ b/storage/innodb_plugin/include/buf0buf.h 2010-04-29 15:55:42.000000000 +0900
2639+--- a/storage/innodb_plugin/include/buf0buf.h
2640++++ b/storage/innodb_plugin/include/buf0buf.h
2641 @@ -1118,11 +1118,11 @@
2642
2643 UT_LIST_NODE_T(buf_page_t) LRU;
2644@@ -297,9 +290,8 @@
2645 unsigned old:1; /*!< TRUE if the block is in the old
2646 blocks in buf_pool->LRU_old */
2647 unsigned freed_page_clock:31;/*!< the value of
2648-diff -ruN a/storage/innodb_plugin/include/buf0flu.h b/storage/innodb_plugin/include/buf0flu.h
2649---- a/storage/innodb_plugin/include/buf0flu.h 2010-04-06 23:07:12.000000000 +0900
2650-+++ b/storage/innodb_plugin/include/buf0flu.h 2010-04-29 15:55:42.000000000 +0900
2651+--- a/storage/innodb_plugin/include/buf0flu.h
2652++++ b/storage/innodb_plugin/include/buf0flu.h
2653 @@ -61,8 +61,9 @@
2654 a margin of replaceable pages there. */
2655 UNIV_INTERN
2656
2657=== modified file 'patches/innodb_overwrite_relay_log_info.patch'
2658--- patches/innodb_overwrite_relay_log_info.patch 2011-06-23 02:18:22 +0000
2659+++ patches/innodb_overwrite_relay_log_info.patch 2011-07-27 11:11:52 +0000
2660@@ -5,9 +5,8 @@
2661 #!!! notice !!!
2662 # Any small change to this file in the main branch
2663 # should be done or reviewed by the maintainer!
2664-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
2665---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-29 16:39:34.000000000 +0900
2666-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-29 16:42:07.000000000 +0900
2667+--- a/storage/innodb_plugin/handler/ha_innodb.cc
2668++++ b/storage/innodb_plugin/handler/ha_innodb.cc
2669 @@ -43,7 +43,17 @@
2670 #pragma implementation // gcc: Class implementation
2671 #endif
2672@@ -264,9 +263,8 @@
2673 MYSQL_SYSVAR(rollback_on_timeout),
2674 MYSQL_SYSVAR(stats_on_metadata),
2675 MYSQL_SYSVAR(stats_sample_pages),
2676-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
2677---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-29 16:39:34.000000000 +0900
2678-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-29 16:42:07.000000000 +0900
2679+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
2680++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
2681 @@ -30,5 +30,6 @@
2682 {"innodb_buffer_pool_pages","Information of buffer pool content","","http://www.percona.com/docs/wiki/percona-xtradb"},
2683 {"innodb_expand_undo_slots","expandable maximum number of undo slots","from 1024 (default) to about 4000","http://www.percona.com/docs/wiki/percona-xtradb"},
2684@@ -274,9 +272,8 @@
2685 +{"innodb_overwrite_relay_log_info","overwrite relay-log.info when slave recovery","Building as plugin, it is not used.","http://www.percona.com/docs/wiki/percona-xtradb:innodb_overwrite_relay_log_info"},
2686 {NULL, NULL, NULL, NULL}
2687 };
2688-diff -ruN a/storage/innodb_plugin/include/trx0sys.h b/storage/innodb_plugin/include/trx0sys.h
2689---- a/storage/innodb_plugin/include/trx0sys.h 2010-04-29 16:39:34.000000000 +0900
2690-+++ b/storage/innodb_plugin/include/trx0sys.h 2010-04-29 16:42:07.000000000 +0900
2691+--- a/storage/innodb_plugin/include/trx0sys.h
2692++++ b/storage/innodb_plugin/include/trx0sys.h
2693 @@ -52,6 +52,9 @@
2694 extern ib_int64_t trx_sys_mysql_master_log_pos;
2695 /* @} */
2696@@ -313,9 +310,8 @@
2697
2698 /** The offset of the MySQL binlog offset info in the trx system header */
2699 #define TRX_SYS_MYSQL_LOG_INFO (UNIV_PAGE_SIZE - 1000)
2700-diff -ruN a/storage/innodb_plugin/include/trx0trx.h b/storage/innodb_plugin/include/trx0trx.h
2701---- a/storage/innodb_plugin/include/trx0trx.h 2010-04-06 23:07:13.000000000 +0900
2702-+++ b/storage/innodb_plugin/include/trx0trx.h 2010-04-29 16:42:07.000000000 +0900
2703+--- a/storage/innodb_plugin/include/trx0trx.h
2704++++ b/storage/innodb_plugin/include/trx0trx.h
2705 @@ -569,6 +569,21 @@
2706 ib_int64_t mysql_log_offset;/* if MySQL binlog is used, this field
2707 contains the end offset of the binlog
2708@@ -338,9 +334,8 @@
2709 os_thread_id_t mysql_thread_id;/* id of the MySQL thread associated
2710 with this transaction object */
2711 ulint mysql_process_no;/* since in Linux, 'top' reports
2712-diff -ruN a/storage/innodb_plugin/trx/trx0sys.c b/storage/innodb_plugin/trx/trx0sys.c
2713---- a/storage/innodb_plugin/trx/trx0sys.c 2010-04-29 16:39:34.000000000 +0900
2714-+++ b/storage/innodb_plugin/trx/trx0sys.c 2010-04-29 16:42:07.000000000 +0900
2715+--- a/storage/innodb_plugin/trx/trx0sys.c
2716++++ b/storage/innodb_plugin/trx/trx0sys.c
2717 @@ -74,13 +74,16 @@
2718 file name and position here. */
2719 /* @{ */
2720@@ -439,9 +434,8 @@
2721 mtr_commit(&mtr);
2722 }
2723
2724-diff -ruN a/storage/innodb_plugin/trx/trx0trx.c b/storage/innodb_plugin/trx/trx0trx.c
2725---- a/storage/innodb_plugin/trx/trx0trx.c 2010-04-06 23:07:14.000000000 +0900
2726-+++ b/storage/innodb_plugin/trx/trx0trx.c 2010-04-29 16:42:07.000000000 +0900
2727+--- a/storage/innodb_plugin/trx/trx0trx.c
2728++++ b/storage/innodb_plugin/trx/trx0trx.c
2729 @@ -129,6 +129,10 @@
2730
2731 trx->mysql_log_file_name = NULL;
2732
2733=== modified file 'patches/innodb_pass_corrupt_table.patch'
2734--- patches/innodb_pass_corrupt_table.patch 2011-07-22 05:41:42 +0000
2735+++ patches/innodb_pass_corrupt_table.patch 2011-07-27 11:11:52 +0000
2736@@ -5,9 +5,8 @@
2737 #!!! notice !!!
2738 # Any small change to this file in the main branch
2739 # should be done or reviewed by the maintainer!
2740-diff -ruN a/storage/innodb_plugin/btr/btr0btr.c b/storage/innodb_plugin/btr/btr0btr.c
2741---- a/storage/innodb_plugin/btr/btr0btr.c 2010-08-04 02:24:19.000000000 +0900
2742-+++ b/storage/innodb_plugin/btr/btr0btr.c 2010-08-27 16:39:02.932248156 +0900
2743+--- a/storage/innodb_plugin/btr/btr0btr.c
2744++++ b/storage/innodb_plugin/btr/btr0btr.c
2745 @@ -691,6 +691,12 @@
2746 root_page_no = dict_index_get_page(index);
2747
2748@@ -73,9 +72,8 @@
2749 btr_search_drop_page_hash_index(block);
2750
2751 header = buf_block_get_frame(block) + PAGE_HEADER + PAGE_BTR_SEG_TOP;
2752-diff -ruN a/storage/innodb_plugin/btr/btr0cur.c b/storage/innodb_plugin/btr/btr0cur.c
2753---- a/storage/innodb_plugin/btr/btr0cur.c 2010-08-27 16:22:04.211409467 +0900
2754-+++ b/storage/innodb_plugin/btr/btr0cur.c 2010-08-27 16:39:02.934087429 +0900
2755+--- a/storage/innodb_plugin/btr/btr0cur.c
2756++++ b/storage/innodb_plugin/btr/btr0cur.c
2757 @@ -239,6 +239,11 @@
2758 case BTR_MODIFY_LEAF:
2759 mode = latch_mode == BTR_SEARCH_LEAF ? RW_S_LATCH : RW_X_LATCH;
2760@@ -252,9 +250,8 @@
2761 rec = page_rec_get_next(page_get_infimum_rec(page));
2762
2763 if (!page_rec_is_supremum(rec)) {
2764-diff -ruN a/storage/innodb_plugin/btr/btr0pcur.c b/storage/innodb_plugin/btr/btr0pcur.c
2765---- a/storage/innodb_plugin/btr/btr0pcur.c 2010-08-04 02:24:19.000000000 +0900
2766-+++ b/storage/innodb_plugin/btr/btr0pcur.c 2010-08-27 16:39:02.936071298 +0900
2767+--- a/storage/innodb_plugin/btr/btr0pcur.c
2768++++ b/storage/innodb_plugin/btr/btr0pcur.c
2769 @@ -32,7 +32,7 @@
2770 #include "ut0byte.h"
2771 #include "rem0cmp.h"
2772@@ -293,9 +290,8 @@
2773 #ifdef UNIV_BTR_DEBUG
2774 ut_a(page_is_comp(next_page) == page_is_comp(page));
2775 ut_a(btr_page_get_prev(next_page, mtr)
2776-diff -ruN a/storage/innodb_plugin/btr/btr0sea.c b/storage/innodb_plugin/btr/btr0sea.c
2777---- a/storage/innodb_plugin/btr/btr0sea.c 2010-08-27 16:13:11.051989872 +0900
2778-+++ b/storage/innodb_plugin/btr/btr0sea.c 2010-08-27 16:39:02.937071716 +0900
2779+--- a/storage/innodb_plugin/btr/btr0sea.c
2780++++ b/storage/innodb_plugin/btr/btr0sea.c
2781 @@ -42,7 +42,7 @@
2782 #include "btr0pcur.h"
2783 #include "btr0btr.h"
2784@@ -317,9 +313,8 @@
2785 /* NOTE that the following two function calls do NOT protect
2786 info or block->n_fields etc. with any semaphore, to save CPU time!
2787 We cannot assume the fields are consistent when we return from
2788-diff -ruN a/storage/innodb_plugin/buf/buf0buf.c b/storage/innodb_plugin/buf/buf0buf.c
2789---- a/storage/innodb_plugin/buf/buf0buf.c 2010-08-27 16:38:38.224976846 +0900
2790-+++ b/storage/innodb_plugin/buf/buf0buf.c 2010-08-27 16:39:02.939057262 +0900
2791+--- a/storage/innodb_plugin/buf/buf0buf.c
2792++++ b/storage/innodb_plugin/buf/buf0buf.c
2793 @@ -52,6 +52,7 @@
2794 #include "log0recv.h"
2795 #include "page0zip.h"
2796@@ -436,9 +431,8 @@
2797 TRUE);
2798 }
2799 }
2800-diff -ruN a/storage/innodb_plugin/buf/buf0rea.c b/storage/innodb_plugin/buf/buf0rea.c
2801---- a/storage/innodb_plugin/buf/buf0rea.c 2010-08-27 16:38:38.228017562 +0900
2802-+++ b/storage/innodb_plugin/buf/buf0rea.c 2010-08-27 16:39:02.941056860 +0900
2803+--- a/storage/innodb_plugin/buf/buf0rea.c
2804++++ b/storage/innodb_plugin/buf/buf0rea.c
2805 @@ -189,12 +189,19 @@
2806 sync, space, 0, offset, 0, UNIV_PAGE_SIZE,
2807 ((buf_block_t*) bpage)->frame, bpage, trx);
2808@@ -460,9 +454,8 @@
2809 }
2810
2811 return(1);
2812-diff -ruN a/storage/innodb_plugin/dict/dict0dict.c b/storage/innodb_plugin/dict/dict0dict.c
2813---- a/storage/innodb_plugin/dict/dict0dict.c 2010-08-27 16:22:04.220021017 +0900
2814-+++ b/storage/innodb_plugin/dict/dict0dict.c 2010-08-27 16:39:02.943057100 +0900
2815+--- a/storage/innodb_plugin/dict/dict0dict.c
2816++++ b/storage/innodb_plugin/dict/dict0dict.c
2817 @@ -54,6 +54,7 @@
2818 #include "row0merge.h"
2819 #include "m_ctype.h" /* my_isspace() */
2820@@ -544,9 +537,8 @@
2821 + }
2822 +}
2823 #endif /* !UNIV_HOTBACKUP */
2824-diff -ruN a/storage/innodb_plugin/dict/dict0mem.c b/storage/innodb_plugin/dict/dict0mem.c
2825---- a/storage/innodb_plugin/dict/dict0mem.c 2010-08-04 02:24:19.000000000 +0900
2826-+++ b/storage/innodb_plugin/dict/dict0mem.c 2010-08-27 16:39:02.945072825 +0900
2827+--- a/storage/innodb_plugin/dict/dict0mem.c
2828++++ b/storage/innodb_plugin/dict/dict0mem.c
2829 @@ -89,6 +89,8 @@
2830 /* The number of transactions that are either waiting on the
2831 AUTOINC lock or have been granted the lock. */
2832@@ -556,9 +548,8 @@
2833 #endif /* !UNIV_HOTBACKUP */
2834
2835 ut_d(table->magic_n = DICT_TABLE_MAGIC_N);
2836-diff -ruN a/storage/innodb_plugin/fil/fil0fil.c b/storage/innodb_plugin/fil/fil0fil.c
2837---- a/storage/innodb_plugin/fil/fil0fil.c 2010-08-27 16:38:38.234979673 +0900
2838-+++ b/storage/innodb_plugin/fil/fil0fil.c 2010-08-27 16:39:02.947021155 +0900
2839+--- a/storage/innodb_plugin/fil/fil0fil.c
2840++++ b/storage/innodb_plugin/fil/fil0fil.c
2841 @@ -223,6 +223,7 @@
2842 file we have written to */
2843 ibool is_in_unflushed_spaces; /*!< TRUE if this space is
2844@@ -664,9 +655,8 @@
2845 + mutex_exit(&fil_system->mutex);
2846 +}
2847 +
2848-diff -ruN a/storage/innodb_plugin/fsp/fsp0fsp.c b/storage/innodb_plugin/fsp/fsp0fsp.c
2849---- a/storage/innodb_plugin/fsp/fsp0fsp.c 2010-08-27 16:38:38.240058836 +0900
2850-+++ b/storage/innodb_plugin/fsp/fsp0fsp.c 2010-08-27 16:39:02.950021363 +0900
2851+--- a/storage/innodb_plugin/fsp/fsp0fsp.c
2852++++ b/storage/innodb_plugin/fsp/fsp0fsp.c
2853 @@ -370,6 +370,12 @@
2854 ut_ad(id || !zip_size);
2855
2856@@ -775,9 +765,8 @@
2857 descr = fseg_get_first_extent(inode, space, zip_size, mtr);
2858
2859 if (descr != NULL) {
2860-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
2861---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:38:38.249059616 +0900
2862-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:39:02.960021471 +0900
2863+--- a/storage/innodb_plugin/handler/ha_innodb.cc
2864++++ b/storage/innodb_plugin/handler/ha_innodb.cc
2865 @@ -3735,6 +3735,12 @@
2866 DBUG_RETURN(1);
2867 }
2868@@ -1044,9 +1033,8 @@
2869 NULL
2870 };
2871
2872-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.h b/storage/innodb_plugin/handler/ha_innodb.h
2873---- a/storage/innodb_plugin/handler/ha_innodb.h 2010-08-04 02:24:19.000000000 +0900
2874-+++ b/storage/innodb_plugin/handler/ha_innodb.h 2010-08-27 16:39:03.003058548 +0900
2875+--- a/storage/innodb_plugin/handler/ha_innodb.h
2876++++ b/storage/innodb_plugin/handler/ha_innodb.h
2877 @@ -52,6 +52,7 @@
2878 innodb_idx_translate_t idx_trans_tbl; /*!< index translation
2879 table between MySQL and
2880@@ -1063,9 +1051,8 @@
2881
2882 int write_row(uchar * buf);
2883 int update_row(const uchar * old_data, uchar * new_data);
2884-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
2885---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:38:38.272105535 +0900
2886-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:39:03.003990202 +0900
2887+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
2888++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
2889 @@ -43,5 +43,6 @@
2890 {"innodb_extend_slow","Extended statistics in slow.log","It is InnoDB-part only. It needs to patch also to mysqld.","http://www.percona.com/docs/wiki/percona-xtradb"},
2891 {"innodb_lru_dump_restore","Dump and restore command for content of buffer pool","","http://www.percona.com/docs/wiki/percona-xtradb"},
2892@@ -1073,9 +1060,8 @@
2893 +{"innodb_pass_corrupt_table","Treat tables as corrupt instead of crash, when meet corrupt blocks","","http://www.percona.com/docs/wiki/percona-xtradb"},
2894 {NULL, NULL, NULL, NULL}
2895 };
2896-diff -ruN a/storage/innodb_plugin/include/btr0btr.ic b/storage/innodb_plugin/include/btr0btr.ic
2897---- a/storage/innodb_plugin/include/btr0btr.ic 2010-08-04 02:24:19.000000000 +0900
2898-+++ b/storage/innodb_plugin/include/btr0btr.ic 2010-08-27 16:39:03.004990818 +0900
2899+--- a/storage/innodb_plugin/include/btr0btr.ic
2900++++ b/storage/innodb_plugin/include/btr0btr.ic
2901 @@ -28,7 +28,7 @@
2902 #include "mtr0mtr.h"
2903 #include "mtr0log.h"
2904@@ -1096,9 +1082,8 @@
2905
2906 buf_block_dbg_add_level(block, SYNC_TREE_NODE);
2907 }
2908-diff -ruN a/storage/innodb_plugin/include/buf0buf.h b/storage/innodb_plugin/include/buf0buf.h
2909---- a/storage/innodb_plugin/include/buf0buf.h 2010-08-27 16:13:11.081058676 +0900
2910-+++ b/storage/innodb_plugin/include/buf0buf.h 2010-08-27 16:39:03.007006842 +0900
2911+--- a/storage/innodb_plugin/include/buf0buf.h
2912++++ b/storage/innodb_plugin/include/buf0buf.h
2913 @@ -850,7 +850,7 @@
2914 const buf_block_t* block) /*!< in: pointer to the control block */
2915 __attribute__((pure));
2916@@ -1126,9 +1111,8 @@
2917 # if defined UNIV_DEBUG_FILE_ACCESSES || defined UNIV_DEBUG
2918 ibool file_page_was_freed;
2919 /*!< this is set to TRUE when fsp
2920-diff -ruN a/storage/innodb_plugin/include/buf0buf.ic b/storage/innodb_plugin/include/buf0buf.ic
2921---- a/storage/innodb_plugin/include/buf0buf.ic 2010-08-27 16:13:11.082973631 +0900
2922-+++ b/storage/innodb_plugin/include/buf0buf.ic 2010-08-27 16:39:03.009020919 +0900
2923+--- a/storage/innodb_plugin/include/buf0buf.ic
2924++++ b/storage/innodb_plugin/include/buf0buf.ic
2925 @@ -35,7 +35,7 @@
2926 #include "buf0flu.h"
2927 #include "buf0lru.h"
2928@@ -1151,9 +1135,8 @@
2929 ut_ad(block);
2930
2931 switch (buf_block_get_state(block)) {
2932-diff -ruN a/storage/innodb_plugin/include/dict0dict.h b/storage/innodb_plugin/include/dict0dict.h
2933---- a/storage/innodb_plugin/include/dict0dict.h 2010-08-27 16:22:04.264988090 +0900
2934-+++ b/storage/innodb_plugin/include/dict0dict.h 2010-08-27 16:39:03.011025333 +0900
2935+--- a/storage/innodb_plugin/include/dict0dict.h
2936++++ b/storage/innodb_plugin/include/dict0dict.h
2937 @@ -1206,6 +1206,15 @@
2938 dict_close(void);
2939 /*============*/
2940@@ -1170,9 +1153,8 @@
2941 #ifndef UNIV_NONINL
2942 #include "dict0dict.ic"
2943 #endif
2944-diff -ruN a/storage/innodb_plugin/include/dict0mem.h b/storage/innodb_plugin/include/dict0mem.h
2945---- a/storage/innodb_plugin/include/dict0mem.h 2010-08-04 02:24:19.000000000 +0900
2946-+++ b/storage/innodb_plugin/include/dict0mem.h 2010-08-27 16:39:03.013021149 +0900
2947+--- a/storage/innodb_plugin/include/dict0mem.h
2948++++ b/storage/innodb_plugin/include/dict0mem.h
2949 @@ -573,6 +573,7 @@
2950 the AUTOINC lock on this table. */
2951 /* @} */
2952@@ -1181,9 +1163,8 @@
2953 #endif /* !UNIV_HOTBACKUP */
2954
2955 #ifdef UNIV_DEBUG
2956-diff -ruN a/storage/innodb_plugin/include/fil0fil.h b/storage/innodb_plugin/include/fil0fil.h
2957---- a/storage/innodb_plugin/include/fil0fil.h 2010-08-27 16:36:03.499987483 +0900
2958-+++ b/storage/innodb_plugin/include/fil0fil.h 2010-08-27 16:39:03.015021314 +0900
2959+--- a/storage/innodb_plugin/include/fil0fil.h
2960++++ b/storage/innodb_plugin/include/fil0fil.h
2961 @@ -749,6 +749,19 @@
2962 fil_system_hash_nodes(void);
2963 /*========================*/
2964@@ -1204,9 +1185,8 @@
2965 typedef struct fil_space_struct fil_space_t;
2966
2967 #endif
2968-diff -ruN a/storage/innodb_plugin/include/fut0fut.ic b/storage/innodb_plugin/include/fut0fut.ic
2969---- a/storage/innodb_plugin/include/fut0fut.ic 2010-08-04 02:24:19.000000000 +0900
2970-+++ b/storage/innodb_plugin/include/fut0fut.ic 2010-08-27 16:39:03.015990218 +0900
2971+--- a/storage/innodb_plugin/include/fut0fut.ic
2972++++ b/storage/innodb_plugin/include/fut0fut.ic
2973 @@ -23,6 +23,7 @@
2974 Created 12/13/1995 Heikki Tuuri
2975 ***********************************************************************/
2976@@ -1228,9 +1208,8 @@
2977 ptr = buf_block_get_frame(block) + addr.boffset;
2978
2979 buf_block_dbg_add_level(block, SYNC_NO_ORDER_CHECK);
2980-diff -ruN a/storage/innodb_plugin/include/page0page.h b/storage/innodb_plugin/include/page0page.h
2981---- a/storage/innodb_plugin/include/page0page.h 2010-08-04 02:24:19.000000000 +0900
2982-+++ b/storage/innodb_plugin/include/page0page.h 2010-08-27 16:39:03.025058694 +0900
2983+--- a/storage/innodb_plugin/include/page0page.h
2984++++ b/storage/innodb_plugin/include/page0page.h
2985 @@ -500,7 +500,7 @@
2986 page_is_leaf(
2987 /*=========*/
2988@@ -1240,9 +1219,8 @@
2989 /************************************************************//**
2990 Gets the pointer to the next record on the page.
2991 @return pointer to next record */
2992-diff -ruN a/storage/innodb_plugin/include/page0page.ic b/storage/innodb_plugin/include/page0page.ic
2993---- a/storage/innodb_plugin/include/page0page.ic 2010-08-04 02:24:19.000000000 +0900
2994-+++ b/storage/innodb_plugin/include/page0page.ic 2010-08-27 16:39:03.027021276 +0900
2995+--- a/storage/innodb_plugin/include/page0page.ic
2996++++ b/storage/innodb_plugin/include/page0page.ic
2997 @@ -275,6 +275,9 @@
2998 /*=========*/
2999 const page_t* page) /*!< in: page */
3000@@ -1253,9 +1231,8 @@
3001 return(!*(const uint16*) (page + (PAGE_HEADER + PAGE_LEVEL)));
3002 }
3003
3004-diff -ruN a/storage/innodb_plugin/include/page0zip.h b/storage/innodb_plugin/include/page0zip.h
3005---- a/storage/innodb_plugin/include/page0zip.h 2010-08-04 02:24:19.000000000 +0900
3006-+++ b/storage/innodb_plugin/include/page0zip.h 2010-08-27 16:39:03.027992946 +0900
3007+--- a/storage/innodb_plugin/include/page0zip.h
3008++++ b/storage/innodb_plugin/include/page0zip.h
3009 @@ -114,7 +114,7 @@
3010 const page_t* page, /*!< in: uncompressed page */
3011 dict_index_t* index, /*!< in: index of the B-tree node */
3012@@ -1265,9 +1242,8 @@
3013
3014 /**********************************************************************//**
3015 Decompress a page. This function should tolerate errors on the compressed
3016-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
3017---- a/storage/innodb_plugin/include/srv0srv.h 2010-08-27 16:38:38.275010935 +0900
3018-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-08-27 16:39:03.030004790 +0900
3019+--- a/storage/innodb_plugin/include/srv0srv.h
3020++++ b/storage/innodb_plugin/include/srv0srv.h
3021 @@ -231,6 +231,7 @@
3022 extern ulint srv_adaptive_checkpoint;
3023
3024@@ -1276,9 +1252,8 @@
3025
3026 extern ulint srv_extra_rsegments;
3027 extern ulint srv_dict_size_limit;
3028-diff -ruN a/storage/innodb_plugin/page/page0zip.c b/storage/innodb_plugin/page/page0zip.c
3029---- a/storage/innodb_plugin/page/page0zip.c 2010-08-04 02:24:19.000000000 +0900
3030-+++ b/storage/innodb_plugin/page/page0zip.c 2010-08-27 16:39:03.033021517 +0900
3031+--- a/storage/innodb_plugin/page/page0zip.c
3032++++ b/storage/innodb_plugin/page/page0zip.c
3033 @@ -1153,6 +1153,10 @@
3034 FILE* logfile = NULL;
3035 #endif
3036@@ -1290,9 +1265,8 @@
3037 ut_a(page_is_comp(page));
3038 ut_a(fil_page_get_type(page) == FIL_PAGE_INDEX);
3039 ut_ad(page_simple_validate_new((page_t*) page));
3040-diff -ruN a/storage/innodb_plugin/row/row0ins.c b/storage/innodb_plugin/row/row0ins.c
3041---- a/storage/innodb_plugin/row/row0ins.c 2010-08-04 02:24:20.000000000 +0900
3042-+++ b/storage/innodb_plugin/row/row0ins.c 2010-08-27 16:39:03.037022066 +0900
3043+--- a/storage/innodb_plugin/row/row0ins.c
3044++++ b/storage/innodb_plugin/row/row0ins.c
3045 @@ -1348,6 +1348,12 @@
3046 const rec_t* rec = btr_pcur_get_rec(&pcur);
3047 const buf_block_t* block = btr_pcur_get_block(&pcur);
3048@@ -1306,9 +1280,8 @@
3049 if (page_rec_is_infimum(rec)) {
3050
3051 continue;
3052-diff -ruN a/storage/innodb_plugin/row/row0merge.c b/storage/innodb_plugin/row/row0merge.c
3053---- a/storage/innodb_plugin/row/row0merge.c 2010-08-27 16:22:04.282058645 +0900
3054-+++ b/storage/innodb_plugin/row/row0merge.c 2010-08-27 16:39:03.040985277 +0900
3055+--- a/storage/innodb_plugin/row/row0merge.c
3056++++ b/storage/innodb_plugin/row/row0merge.c
3057 @@ -1224,6 +1224,13 @@
3058
3059 if (UNIV_LIKELY(has_next)) {
3060@@ -1323,9 +1296,8 @@
3061 offsets = rec_get_offsets(rec, clust_index, NULL,
3062 ULINT_UNDEFINED, &row_heap);
3063
3064-diff -ruN a/storage/innodb_plugin/row/row0sel.c b/storage/innodb_plugin/row/row0sel.c
3065---- a/storage/innodb_plugin/row/row0sel.c 2010-08-04 02:24:20.000000000 +0900
3066-+++ b/storage/innodb_plugin/row/row0sel.c 2010-08-27 16:39:03.045021567 +0900
3067+--- a/storage/innodb_plugin/row/row0sel.c
3068++++ b/storage/innodb_plugin/row/row0sel.c
3069 @@ -3856,6 +3856,13 @@
3070 /* PHASE 4: Look for matching records in a loop */
3071
3072@@ -1340,9 +1312,8 @@
3073 ut_ad(!!page_rec_is_comp(rec) == comp);
3074 #ifdef UNIV_SEARCH_DEBUG
3075 /*
3076-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
3077---- a/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:38:38.286989546 +0900
3078-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:39:03.048990992 +0900
3079+--- a/storage/innodb_plugin/srv/srv0srv.c
3080++++ b/storage/innodb_plugin/srv/srv0srv.c
3081 @@ -406,6 +406,7 @@
3082 UNIV_INTERN ulint srv_adaptive_checkpoint = 0; /* 0: none 1: reflex 2: estimate */
3083
3084@@ -1351,9 +1322,8 @@
3085
3086 UNIV_INTERN ulint srv_extra_rsegments = 0; /* extra rseg for users */
3087 UNIV_INTERN ulint srv_dict_size_limit = 0;
3088-diff -ruN a/storage/innodb_plugin/srv/srv0start.c b/storage/innodb_plugin/srv/srv0start.c
3089---- a/storage/innodb_plugin/srv/srv0start.c 2010-08-27 16:38:38.290021700 +0900
3090-+++ b/storage/innodb_plugin/srv/srv0start.c 2010-08-27 16:39:03.052021423 +0900
3091+--- a/storage/innodb_plugin/srv/srv0start.c
3092++++ b/storage/innodb_plugin/srv/srv0start.c
3093 @@ -2000,6 +2000,13 @@
3094
3095 os_fast_mutex_free(&srv_os_test_mutex);
3096
3097=== modified file 'patches/innodb_purge_thread.patch'
3098--- patches/innodb_purge_thread.patch 2011-06-23 02:18:22 +0000
3099+++ patches/innodb_purge_thread.patch 2011-07-27 11:11:52 +0000
3100@@ -5,9 +5,8 @@
3101 #!!! notice !!!
3102 # Any small change to this file in the main branch
3103 # should be done or reviewed by the maintainer!
3104-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
3105---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:23:31.022060427 +0900
3106-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:25:49.004020662 +0900
3107+--- a/storage/innodb_plugin/handler/ha_innodb.cc
3108++++ b/storage/innodb_plugin/handler/ha_innodb.cc
3109 @@ -11064,6 +11064,11 @@
3110 "Output statistics of recovery process after it.",
3111 NULL, NULL, FALSE);
3112@@ -28,9 +27,8 @@
3113 NULL
3114 };
3115
3116-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
3117---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:23:31.027058629 +0900
3118-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:25:49.004020662 +0900
3119+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
3120++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
3121 @@ -37,5 +37,6 @@
3122 {"innodb_split_buf_pool_mutex","More fix of buffer_pool mutex","Spliting buf_pool_mutex and optimizing based on innodb_opt_lru_count","http://www.percona.com/docs/wiki/percona-xtradb"},
3123 {"innodb_stats","Additional features about InnoDB statistics/optimizer","","http://www.percona.com/docs/wiki/percona-xtradb"},
3124@@ -38,9 +36,8 @@
3125 +{"innodb_purge_thread","Enable to use purge devoted thread","","http://www.percona.com/docs/wiki/percona-xtradb"},
3126 {NULL, NULL, NULL, NULL}
3127 };
3128-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
3129---- a/storage/innodb_plugin/include/srv0srv.h 2010-08-27 16:23:31.030059162 +0900
3130-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-08-27 16:25:49.005987844 +0900
3131+--- a/storage/innodb_plugin/include/srv0srv.h
3132++++ b/storage/innodb_plugin/include/srv0srv.h
3133 @@ -116,6 +116,8 @@
3134
3135 extern ibool srv_recovery_stats;
3136@@ -81,9 +78,8 @@
3137 /*******************************************************************//**
3138 Tells the Innobase server that there has been activity in the database
3139 and wakes up the master thread if it is suspended (not sleeping). Used
3140-diff -ruN a/storage/innodb_plugin/include/trx0purge.h b/storage/innodb_plugin/include/trx0purge.h
3141---- a/storage/innodb_plugin/include/trx0purge.h 2010-08-04 02:24:19.000000000 +0900
3142-+++ b/storage/innodb_plugin/include/trx0purge.h 2010-08-27 16:25:49.006988119 +0900
3143+--- a/storage/innodb_plugin/include/trx0purge.h
3144++++ b/storage/innodb_plugin/include/trx0purge.h
3145 @@ -114,6 +114,25 @@
3146 ulint
3147 trx_purge(void);
3148@@ -122,9 +118,8 @@
3149 rw_lock_t latch; /*!< The latch protecting the purge view.
3150 A purge operation must acquire an
3151 x-latch here for the instant at which
3152-diff -ruN a/storage/innodb_plugin/log/log0log.c b/storage/innodb_plugin/log/log0log.c
3153---- a/storage/innodb_plugin/log/log0log.c 2010-08-27 15:54:18.086987682 +0900
3154-+++ b/storage/innodb_plugin/log/log0log.c 2010-08-27 16:25:49.010020843 +0900
3155+--- a/storage/innodb_plugin/log/log0log.c
3156++++ b/storage/innodb_plugin/log/log0log.c
3157 @@ -3150,6 +3150,16 @@
3158 goto loop;
3159 }
3160@@ -142,9 +137,8 @@
3161 mutex_exit(&kernel_mutex);
3162
3163 mutex_enter(&(log_sys->mutex));
3164-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
3165---- a/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:23:31.042058997 +0900
3166-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:25:49.014058600 +0900
3167+--- a/storage/innodb_plugin/srv/srv0srv.c
3168++++ b/storage/innodb_plugin/srv/srv0srv.c
3169 @@ -146,6 +146,8 @@
3170
3171 UNIV_INTERN ibool srv_recovery_stats = FALSE;
3172@@ -342,9 +336,8 @@
3173 +
3174 + OS_THREAD_DUMMY_RETURN;
3175 +}
3176-diff -ruN a/storage/innodb_plugin/srv/srv0start.c b/storage/innodb_plugin/srv/srv0start.c
3177---- a/storage/innodb_plugin/srv/srv0start.c 2010-08-27 15:59:21.760987922 +0900
3178-+++ b/storage/innodb_plugin/srv/srv0start.c 2010-08-27 16:25:49.017058492 +0900
3179+--- a/storage/innodb_plugin/srv/srv0start.c
3180++++ b/storage/innodb_plugin/srv/srv0start.c
3181 @@ -126,9 +126,9 @@
3182 static ulint ios;
3183
3184@@ -378,9 +371,8 @@
3185 #ifdef UNIV_DEBUG
3186 /* buf_debug_prints = TRUE; */
3187 #endif /* UNIV_DEBUG */
3188-diff -ruN a/storage/innodb_plugin/trx/trx0purge.c b/storage/innodb_plugin/trx/trx0purge.c
3189---- a/storage/innodb_plugin/trx/trx0purge.c 2010-08-04 02:24:20.000000000 +0900
3190-+++ b/storage/innodb_plugin/trx/trx0purge.c 2010-08-27 16:25:49.020058576 +0900
3191+--- a/storage/innodb_plugin/trx/trx0purge.c
3192++++ b/storage/innodb_plugin/trx/trx0purge.c
3193 @@ -184,8 +184,9 @@
3194 @return own: the query graph */
3195 static
3196
3197=== modified file 'patches/innodb_recovery_patches.patch'
3198--- patches/innodb_recovery_patches.patch 2011-07-22 05:41:42 +0000
3199+++ patches/innodb_recovery_patches.patch 2011-07-27 11:11:52 +0000
3200@@ -5,9 +5,8 @@
3201 #!!! notice !!!
3202 # Any small change to this file in the main branch
3203 # should be done or reviewed by the maintainer!
3204-diff -ruN a/storage/innodb_plugin/buf/buf0rea.c b/storage/innodb_plugin/buf/buf0rea.c
3205---- a/storage/innodb_plugin/buf/buf0rea.c 2010-04-29 18:58:20.000000000 +0900
3206-+++ b/storage/innodb_plugin/buf/buf0rea.c 2010-04-30 13:53:47.000000000 +0900
3207+--- a/storage/innodb_plugin/buf/buf0rea.c
3208++++ b/storage/innodb_plugin/buf/buf0rea.c
3209 @@ -120,6 +120,46 @@
3210 bpage = buf_page_init_for_read(err, mode, space, zip_size, unzip,
3211 tablespace_version, offset);
3212@@ -106,9 +105,8 @@
3213 return;
3214 }
3215
3216-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
3217---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-30 10:49:58.000000000 +0900
3218-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-30 13:53:47.000000000 +0900
3219+--- a/storage/innodb_plugin/handler/ha_innodb.cc
3220++++ b/storage/innodb_plugin/handler/ha_innodb.cc
3221 @@ -185,6 +185,8 @@
3222 static my_bool innobase_use_doublewrite = TRUE;
3223 static my_bool innobase_use_checksums = TRUE;
3224@@ -153,9 +151,8 @@
3225 MYSQL_SYSVAR(fast_shutdown),
3226 MYSQL_SYSVAR(file_io_threads),
3227 MYSQL_SYSVAR(read_io_threads),
3228-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
3229---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-30 10:49:58.000000000 +0900
3230-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-30 13:53:47.000000000 +0900
3231+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
3232++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
3233 @@ -36,5 +36,6 @@
3234 {"innodb_dict_size_limit","Limit dictionary cache size","Variable innodb_dict_size_limit in bytes","http://www.percona.com/docs/wiki/percona-xtradb"},
3235 {"innodb_split_buf_pool_mutex","More fix of buffer_pool mutex","Spliting buf_pool_mutex and optimizing based on innodb_opt_lru_count","http://www.percona.com/docs/wiki/percona-xtradb"},
3236@@ -163,9 +160,8 @@
3237 +{"innodb_recovery_patches","Bugfixes and adjustments about recovery process","","http://www.percona.com/docs/wiki/percona-xtradb"},
3238 {NULL, NULL, NULL, NULL}
3239 };
3240-diff -ruN a/storage/innodb_plugin/include/log0recv.h b/storage/innodb_plugin/include/log0recv.h
3241---- a/storage/innodb_plugin/include/log0recv.h 2010-04-06 23:07:12.000000000 +0900
3242-+++ b/storage/innodb_plugin/include/log0recv.h 2010-04-30 13:53:47.000000000 +0900
3243+--- a/storage/innodb_plugin/include/log0recv.h
3244++++ b/storage/innodb_plugin/include/log0recv.h
3245 @@ -438,6 +438,39 @@
3246 hash_table_t* addr_hash;/*!< hash table of file addresses of pages */
3247 ulint n_addrs;/*!< number of not processed hashed file
3248@@ -206,9 +202,8 @@
3249 };
3250
3251 /** The recovery system */
3252-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
3253---- a/storage/innodb_plugin/include/srv0srv.h 2010-04-30 10:49:58.000000000 +0900
3254-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-04-30 13:53:47.000000000 +0900
3255+--- a/storage/innodb_plugin/include/srv0srv.h
3256++++ b/storage/innodb_plugin/include/srv0srv.h
3257 @@ -114,6 +114,8 @@
3258
3259 extern ibool srv_extra_undoslots;
3260@@ -218,9 +213,8 @@
3261 extern ibool srv_auto_extend_last_data_file;
3262 extern ulint srv_last_file_size_max;
3263 extern char** srv_log_group_home_dirs;
3264-diff -ruN a/storage/innodb_plugin/log/log0recv.c b/storage/innodb_plugin/log/log0recv.c
3265---- a/storage/innodb_plugin/log/log0recv.c 2010-04-06 23:07:13.000000000 +0900
3266-+++ b/storage/innodb_plugin/log/log0recv.c 2010-04-30 14:00:27.000000000 +0900
3267+--- a/storage/innodb_plugin/log/log0recv.c
3268++++ b/storage/innodb_plugin/log/log0recv.c
3269 @@ -179,6 +179,9 @@
3270
3271 recv_sys->heap = NULL;
3272@@ -440,9 +434,8 @@
3273 if (recv_needed_recovery) {
3274 trx_sys_print_mysql_master_log_pos();
3275 trx_sys_print_mysql_binlog_offset();
3276-diff -ruN a/storage/innodb_plugin/os/os0file.c b/storage/innodb_plugin/os/os0file.c
3277---- a/storage/innodb_plugin/os/os0file.c 2010-04-29 15:55:25.000000000 +0900
3278-+++ b/storage/innodb_plugin/os/os0file.c 2010-04-30 13:53:47.000000000 +0900
3279+--- a/storage/innodb_plugin/os/os0file.c
3280++++ b/storage/innodb_plugin/os/os0file.c
3281 @@ -38,6 +38,7 @@
3282 #include "srv0start.h"
3283 #include "fil0fil.h"
3284@@ -451,7 +444,7 @@
3285 #ifndef UNIV_HOTBACKUP
3286 # include "os0sync.h"
3287 # include "os0thread.h"
3288-@@ -4234,6 +4235,18 @@
3289+@@ -4235,6 +4236,18 @@
3290 }
3291 }
3292
3293@@ -470,9 +463,8 @@
3294 os_mutex_enter(array->mutex);
3295
3296 /* Mark the i/os done in slots */
3297-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
3298---- a/storage/innodb_plugin/srv/srv0srv.c 2010-04-30 10:49:58.000000000 +0900
3299-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-04-30 13:53:47.000000000 +0900
3300+--- a/storage/innodb_plugin/srv/srv0srv.c
3301++++ b/storage/innodb_plugin/srv/srv0srv.c
3302 @@ -144,6 +144,8 @@
3303
3304 UNIV_INTERN ibool srv_extra_undoslots = FALSE;
3305@@ -482,9 +474,8 @@
3306 /* if TRUE, then we auto-extend the last data file */
3307 UNIV_INTERN ibool srv_auto_extend_last_data_file = FALSE;
3308 /* if != 0, this tells the max size auto-extending may increase the
3309-diff -ruN a/storage/innodb_plugin/trx/trx0sys.c b/storage/innodb_plugin/trx/trx0sys.c
3310---- a/storage/innodb_plugin/trx/trx0sys.c 2010-04-29 16:43:16.000000000 +0900
3311-+++ b/storage/innodb_plugin/trx/trx0sys.c 2010-04-30 13:53:47.000000000 +0900
3312+--- a/storage/innodb_plugin/trx/trx0sys.c
3313++++ b/storage/innodb_plugin/trx/trx0sys.c
3314 @@ -39,6 +39,7 @@
3315 #include "srv0srv.h"
3316 #include "trx0purge.h"
3317
3318=== modified file 'patches/innodb_separate_doublewrite.patch'
3319--- patches/innodb_separate_doublewrite.patch 2011-07-22 05:41:42 +0000
3320+++ patches/innodb_separate_doublewrite.patch 2011-07-27 11:11:52 +0000
3321@@ -5,9 +5,8 @@
3322 #!!! notice !!!
3323 # Any small change to this file in the main branch
3324 # should be done or reviewed by the maintainer!
3325-diff -ruN a/storage/innodb_plugin/buf/buf0buf.c b/storage/innodb_plugin/buf/buf0buf.c
3326---- a/storage/innodb_plugin/buf/buf0buf.c 2010-08-27 16:32:40.292412102 +0900
3327-+++ b/storage/innodb_plugin/buf/buf0buf.c 2010-08-27 16:37:55.358105738 +0900
3328+--- a/storage/innodb_plugin/buf/buf0buf.c
3329++++ b/storage/innodb_plugin/buf/buf0buf.c
3330 @@ -3454,7 +3454,8 @@
3331 read_space_id = mach_read_from_4(
3332 frame + FIL_PAGE_ARCH_LOG_NO_OR_SPACE_ID);
3333@@ -18,9 +17,8 @@
3334 && trx_doublewrite_page_inside(bpage->offset)) {
3335
3336 ut_print_timestamp(stderr);
3337-diff -ruN a/storage/innodb_plugin/buf/buf0flu.c b/storage/innodb_plugin/buf/buf0flu.c
3338---- a/storage/innodb_plugin/buf/buf0flu.c 2010-08-27 16:13:11.065058523 +0900
3339-+++ b/storage/innodb_plugin/buf/buf0flu.c 2010-08-27 16:37:55.359251796 +0900
3340+--- a/storage/innodb_plugin/buf/buf0flu.c
3341++++ b/storage/innodb_plugin/buf/buf0flu.c
3342 @@ -693,7 +693,8 @@
3343 write_buf = trx_doublewrite->write_buf;
3344 i = 0;
3345@@ -50,9 +48,8 @@
3346
3347 /* We know that the writes have been flushed to disk now
3348 and in recovery we will find them in the doublewrite buffer
3349-diff -ruN a/storage/innodb_plugin/buf/buf0rea.c b/storage/innodb_plugin/buf/buf0rea.c
3350---- a/storage/innodb_plugin/buf/buf0rea.c 2010-08-27 16:36:03.492105076 +0900
3351-+++ b/storage/innodb_plugin/buf/buf0rea.c 2010-08-27 16:37:55.361249702 +0900
3352+--- a/storage/innodb_plugin/buf/buf0rea.c
3353++++ b/storage/innodb_plugin/buf/buf0rea.c
3354 @@ -86,7 +86,9 @@
3355 wake_later = mode & OS_AIO_SIMULATED_WAKE_LATER;
3356 mode = mode & ~OS_AIO_SIMULATED_WAKE_LATER;
3357@@ -64,9 +61,8 @@
3358 && ( (offset >= trx_doublewrite->block1
3359 && offset < trx_doublewrite->block1
3360 + TRX_SYS_DOUBLEWRITE_BLOCK_SIZE)
3361-diff -ruN a/storage/innodb_plugin/dict/dict0load.c b/storage/innodb_plugin/dict/dict0load.c
3362---- a/storage/innodb_plugin/dict/dict0load.c 2010-08-27 16:22:04.223059346 +0900
3363-+++ b/storage/innodb_plugin/dict/dict0load.c 2010-08-27 16:37:55.363104692 +0900
3364+--- a/storage/innodb_plugin/dict/dict0load.c
3365++++ b/storage/innodb_plugin/dict/dict0load.c
3366 @@ -40,6 +40,7 @@
3367 #include "rem0cmp.h"
3368 #include "srv0start.h"
3369@@ -102,9 +98,8 @@
3370 /* The system tablespace is always available. */
3371 } else if (!fil_space_for_table_exists_in_mem(
3372 space, name,
3373-diff -ruN a/storage/innodb_plugin/fil/fil0fil.c b/storage/innodb_plugin/fil/fil0fil.c
3374---- a/storage/innodb_plugin/fil/fil0fil.c 2010-08-27 16:36:03.494411641 +0900
3375-+++ b/storage/innodb_plugin/fil/fil0fil.c 2010-08-27 16:37:55.367990277 +0900
3376+--- a/storage/innodb_plugin/fil/fil0fil.c
3377++++ b/storage/innodb_plugin/fil/fil0fil.c
3378 @@ -617,7 +617,7 @@
3379
3380 UT_LIST_ADD_LAST(chain, space->chain, node);
3381@@ -312,9 +307,8 @@
3382
3383 fil_node = UT_LIST_GET_NEXT(LRU, fil_node);
3384 }
3385-diff -ruN a/storage/innodb_plugin/fsp/fsp0fsp.c b/storage/innodb_plugin/fsp/fsp0fsp.c
3386---- a/storage/innodb_plugin/fsp/fsp0fsp.c 2010-08-04 02:24:19.000000000 +0900
3387-+++ b/storage/innodb_plugin/fsp/fsp0fsp.c 2010-08-27 16:37:55.372989956 +0900
3388+--- a/storage/innodb_plugin/fsp/fsp0fsp.c
3389++++ b/storage/innodb_plugin/fsp/fsp0fsp.c
3390 @@ -48,7 +48,7 @@
3391 # include "log0log.h"
3392 #endif /* UNIV_HOTBACKUP */
3393@@ -337,9 +331,8 @@
3394 dict_ind_redundant, mtr);
3395 } else {
3396 fsp_fill_free_list(TRUE, space, header, mtr);
3397-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
3398---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:32:40.307988438 +0900
3399-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:37:55.381993155 +0900
3400+--- a/storage/innodb_plugin/handler/ha_innodb.cc
3401++++ b/storage/innodb_plugin/handler/ha_innodb.cc
3402 @@ -166,6 +166,7 @@
3403 static char* innobase_log_group_home_dir = NULL;
3404 static char* innobase_file_format_name = NULL;
3405@@ -377,9 +370,8 @@
3406 MYSQL_SYSVAR(data_home_dir),
3407 MYSQL_SYSVAR(doublewrite),
3408 MYSQL_SYSVAR(extra_undoslots),
3409-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
3410---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:36:03.497990333 +0900
3411-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:37:55.401058721 +0900
3412+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
3413++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
3414 @@ -42,5 +42,6 @@
3415 {"innodb_show_lock_name","Show mutex/lock name instead of crated file/line","","http://www.percona.com/docs/wiki/percona-xtradb"},
3416 {"innodb_extend_slow","Extended statistics in slow.log","It is InnoDB-part only. It needs to patch also to mysqld.","http://www.percona.com/docs/wiki/percona-xtradb"},
3417@@ -387,9 +379,8 @@
3418 +{"innodb_separate_doublewrite","Add option 'innodb_doublewrite_file' to separate doublewrite dedicated tablespace","","http://www.percona.com/docs/wiki/percona-xtradb"},
3419 {NULL, NULL, NULL, NULL}
3420 };
3421-diff -ruN a/storage/innodb_plugin/include/mtr0log.ic b/storage/innodb_plugin/include/mtr0log.ic
3422---- a/storage/innodb_plugin/include/mtr0log.ic 2010-08-04 02:24:19.000000000 +0900
3423-+++ b/storage/innodb_plugin/include/mtr0log.ic 2010-08-27 16:37:55.401990156 +0900
3424+--- a/storage/innodb_plugin/include/mtr0log.ic
3425++++ b/storage/innodb_plugin/include/mtr0log.ic
3426 @@ -27,8 +27,8 @@
3427 #include "ut0lst.h"
3428 #include "buf0buf.h"
3429@@ -410,9 +401,8 @@
3430 && offset >= FSP_EXTENT_SIZE && offset < 3 * FSP_EXTENT_SIZE) {
3431 if (trx_doublewrite_buf_is_being_created) {
3432 /* Do nothing: we only come to this branch in an
3433-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
3434---- a/storage/innodb_plugin/include/srv0srv.h 2010-08-27 16:32:40.319059202 +0900
3435-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-08-27 16:37:55.403989968 +0900
3436+--- a/storage/innodb_plugin/include/srv0srv.h
3437++++ b/storage/innodb_plugin/include/srv0srv.h
3438 @@ -115,6 +115,8 @@
3439 extern ulint* srv_data_file_sizes;
3440 extern ulint* srv_data_file_is_raw_partition;
3441@@ -422,9 +412,8 @@
3442 extern ibool srv_extra_undoslots;
3443
3444 extern ibool srv_recovery_stats;
3445-diff -ruN a/storage/innodb_plugin/include/srv0start.h b/storage/innodb_plugin/include/srv0start.h
3446---- a/storage/innodb_plugin/include/srv0start.h 2010-11-03 22:39:54.000000000 +0900
3447-+++ b/storage/innodb_plugin/include/srv0start.h 2010-12-08 16:16:32.858488565 +0900
3448+--- a/storage/innodb_plugin/include/srv0start.h
3449++++ b/storage/innodb_plugin/include/srv0start.h
3450 @@ -131,4 +131,7 @@
3451 /** Log 'spaces' have id's >= this */
3452 #define SRV_LOG_SPACE_FIRST_ID 0xFFFFFFF0UL
3453@@ -433,9 +422,8 @@
3454 +#define SRV_EXTRA_SYS_SPACE_FIRST_ID 0xFFFFFFE0UL
3455 +
3456 #endif
3457-diff -ruN a/storage/innodb_plugin/include/trx0sys.h b/storage/innodb_plugin/include/trx0sys.h
3458---- a/storage/innodb_plugin/include/trx0sys.h 2010-08-27 16:08:45.299059235 +0900
3459-+++ b/storage/innodb_plugin/include/trx0sys.h 2010-08-27 16:37:55.404990159 +0900
3460+--- a/storage/innodb_plugin/include/trx0sys.h
3461++++ b/storage/innodb_plugin/include/trx0sys.h
3462 @@ -124,6 +124,22 @@
3463 /*=============*/
3464 ulint space, /*!< in: space */
3465@@ -482,9 +470,8 @@
3466 #include "fsp0fsp.h"
3467 #define TRX_SYS_PAGE_NO FSP_TRX_SYS_PAGE_NO
3468
3469-diff -ruN a/storage/innodb_plugin/include/trx0sys.ic b/storage/innodb_plugin/include/trx0sys.ic
3470---- a/storage/innodb_plugin/include/trx0sys.ic 2010-08-04 02:24:19.000000000 +0900
3471-+++ b/storage/innodb_plugin/include/trx0sys.ic 2010-08-27 16:37:55.407990247 +0900
3472+--- a/storage/innodb_plugin/include/trx0sys.ic
3473++++ b/storage/innodb_plugin/include/trx0sys.ic
3474 @@ -71,6 +71,40 @@
3475 }
3476
3477@@ -526,9 +513,8 @@
3478 Gets the pointer in the nth slot of the rseg array.
3479 @return pointer to rseg object, NULL if slot not in use */
3480 UNIV_INLINE
3481-diff -ruN a/storage/innodb_plugin/row/row0mysql.c b/storage/innodb_plugin/row/row0mysql.c
3482---- a/storage/innodb_plugin/row/row0mysql.c 2010-08-27 16:22:04.287058274 +0900
3483-+++ b/storage/innodb_plugin/row/row0mysql.c 2010-08-27 16:37:55.410993060 +0900
3484+--- a/storage/innodb_plugin/row/row0mysql.c
3485++++ b/storage/innodb_plugin/row/row0mysql.c
3486 @@ -3391,7 +3391,7 @@
3487 /* Do not drop possible .ibd tablespace if something went
3488 wrong: we do not want to delete valuable data of the user */
3489@@ -538,9 +524,8 @@
3490 if (!fil_space_for_table_exists_in_mem(space_id,
3491 name_or_path,
3492 is_temp, FALSE,
3493-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
3494---- a/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:32:40.334058105 +0900
3495-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:37:55.414990255 +0900
3496+--- a/storage/innodb_plugin/srv/srv0srv.c
3497++++ b/storage/innodb_plugin/srv/srv0srv.c
3498 @@ -145,6 +145,8 @@
3499 /* size in database pages */
3500 UNIV_INTERN ulint* srv_data_file_sizes = NULL;
3501@@ -550,9 +535,8 @@
3502 UNIV_INTERN ibool srv_extra_undoslots = FALSE;
3503
3504 UNIV_INTERN ibool srv_recovery_stats = FALSE;
3505-diff -ruN a/storage/innodb_plugin/srv/srv0start.c b/storage/innodb_plugin/srv/srv0start.c
3506---- a/storage/innodb_plugin/srv/srv0start.c 2010-08-27 16:27:30.236020955 +0900
3507-+++ b/storage/innodb_plugin/srv/srv0start.c 2010-08-27 16:37:55.418990221 +0900
3508+--- a/storage/innodb_plugin/srv/srv0start.c
3509++++ b/storage/innodb_plugin/srv/srv0start.c
3510 @@ -708,6 +708,7 @@
3511 /*======================*/
3512 ibool* create_new_db, /*!< out: TRUE if new database should be
3513@@ -776,9 +760,8 @@
3514 }
3515
3516 if (!create_new_db && sum_of_new_sizes > 0) {
3517-diff -ruN a/storage/innodb_plugin/trx/trx0sys.c b/storage/innodb_plugin/trx/trx0sys.c
3518---- a/storage/innodb_plugin/trx/trx0sys.c 2010-08-27 16:23:31.045058700 +0900
3519-+++ b/storage/innodb_plugin/trx/trx0sys.c 2010-08-27 16:37:55.421992951 +0900
3520+--- a/storage/innodb_plugin/trx/trx0sys.c
3521++++ b/storage/innodb_plugin/trx/trx0sys.c
3522 @@ -407,6 +407,152 @@
3523
3524 goto start_again;
3525
3526=== modified file 'patches/innodb_show_enhancements.patch'
3527--- patches/innodb_show_enhancements.patch 2011-07-22 05:41:42 +0000
3528+++ patches/innodb_show_enhancements.patch 2011-07-27 11:11:52 +0000
3529@@ -5,9 +5,8 @@
3530 #!!! notice !!!
3531 # Any small change to this file in the main branch
3532 # should be done or reviewed by the maintainer!
3533-diff -ruN a/storage/innodb_plugin/Makefile.am b/storage/innodb_plugin/Makefile.am
3534---- a/storage/innodb_plugin/Makefile.am 2010-04-06 23:07:11.000000000 +0900
3535-+++ b/storage/innodb_plugin/Makefile.am 2010-04-29 15:22:39.000000000 +0900
3536+--- a/storage/innodb_plugin/Makefile.am
3537++++ b/storage/innodb_plugin/Makefile.am
3538 @@ -226,6 +226,7 @@
3539 include/ut0vec.h \
3540 include/ut0vec.ic \
3541@@ -16,9 +15,8 @@
3542 mem/mem0dbg.c
3543
3544 EXTRA_LIBRARIES= libinnobase.a
3545-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
3546---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-06 23:07:12.000000000 +0900
3547-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-29 15:22:39.000000000 +0900
3548+--- a/storage/innodb_plugin/handler/ha_innodb.cc
3549++++ b/storage/innodb_plugin/handler/ha_innodb.cc
3550 @@ -11121,7 +11121,8 @@
3551 i_s_innodb_cmp,
3552 i_s_innodb_cmp_reset,
3553@@ -29,9 +27,8 @@
3554 mysql_declare_plugin_end;
3555
3556 /** @brief Initialize the default value of innodb_commit_concurrency.
3557-diff -ruN a/storage/innodb_plugin/handler/i_s.cc b/storage/innodb_plugin/handler/i_s.cc
3558---- a/storage/innodb_plugin/handler/i_s.cc 2010-04-06 23:07:12.000000000 +0900
3559-+++ b/storage/innodb_plugin/handler/i_s.cc 2010-04-29 15:22:39.000000000 +0900
3560+--- a/storage/innodb_plugin/handler/i_s.cc
3561++++ b/storage/innodb_plugin/handler/i_s.cc
3562 @@ -32,6 +32,7 @@
3563 #include <mysys_err.h>
3564 #include <my_sys.h>
3565@@ -220,9 +217,8 @@
3566
3567 UNIV_INTERN struct st_mysql_plugin i_s_innodb_trx =
3568 {
3569-diff -ruN a/storage/innodb_plugin/handler/i_s.h b/storage/innodb_plugin/handler/i_s.h
3570---- a/storage/innodb_plugin/handler/i_s.h 2010-04-06 23:07:12.000000000 +0900
3571-+++ b/storage/innodb_plugin/handler/i_s.h 2010-04-29 15:22:39.000000000 +0900
3572+--- a/storage/innodb_plugin/handler/i_s.h
3573++++ b/storage/innodb_plugin/handler/i_s.h
3574 @@ -33,5 +33,6 @@
3575 extern struct st_mysql_plugin i_s_innodb_cmp_reset;
3576 extern struct st_mysql_plugin i_s_innodb_cmpmem;
3577@@ -230,9 +226,8 @@
3578 +extern struct st_mysql_plugin i_s_innodb_patches;
3579
3580 #endif /* i_s_h */
3581-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
3582---- /dev/null 1970-01-01 09:00:00.000000000 +0900
3583-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-29 15:22:39.000000000 +0900
3584+--- /dev/null
3585++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
3586 @@ -0,0 +1,28 @@
3587 +/* Copyright (C) 2002-2006 MySQL AB
3588 +
3589
3590=== modified file 'patches/innodb_show_lock_name.patch'
3591--- patches/innodb_show_lock_name.patch 2011-06-23 02:18:22 +0000
3592+++ patches/innodb_show_lock_name.patch 2011-07-27 11:11:52 +0000
3593@@ -5,9 +5,8 @@
3594 #!!! notice !!!
3595 # Any small change to this file in the main branch
3596 # should be done or reviewed by the maintainer!
3597-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
3598---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:29:12.539982446 +0900
3599-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:29:24.322059309 +0900
3600+--- a/storage/innodb_plugin/handler/ha_innodb.cc
3601++++ b/storage/innodb_plugin/handler/ha_innodb.cc
3602 @@ -9323,8 +9323,8 @@
3603 rw_lock_wait_time += mutex->lspent_time;
3604 }
3605@@ -54,9 +53,8 @@
3606 buf2len = (uint) my_snprintf(buf2, sizeof buf2,
3607 "os_waits=%lu",
3608 (ulong) block_lock_oswait_count);
3609-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
3610---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:29:12.542982379 +0900
3611-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:29:24.323059066 +0900
3612+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
3613++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
3614 @@ -39,5 +39,6 @@
3615 {"innodb_recovery_patches","Bugfixes and adjustments about recovery process","","http://www.percona.com/docs/wiki/percona-xtradb"},
3616 {"innodb_purge_thread","Enable to use purge devoted thread","","http://www.percona.com/docs/wiki/percona-xtradb"},
3617@@ -64,9 +62,8 @@
3618 +{"innodb_show_lock_name","Show mutex/lock name instead of crated file/line","","http://www.percona.com/docs/wiki/percona-xtradb"},
3619 {NULL, NULL, NULL, NULL}
3620 };
3621-diff -ruN a/storage/innodb_plugin/include/sync0rw.h b/storage/innodb_plugin/include/sync0rw.h
3622---- a/storage/innodb_plugin/include/sync0rw.h 2010-08-04 02:24:19.000000000 +0900
3623-+++ b/storage/innodb_plugin/include/sync0rw.h 2010-08-27 16:29:24.325059383 +0900
3624+--- a/storage/innodb_plugin/include/sync0rw.h
3625++++ b/storage/innodb_plugin/include/sync0rw.h
3626 @@ -113,14 +113,14 @@
3627 #ifdef UNIV_DEBUG
3628 # ifdef UNIV_SYNC_DEBUG
3629@@ -118,9 +115,8 @@
3630 unsigned last_s_line:14; /*!< Line number where last time s-locked */
3631 unsigned last_x_line:14; /*!< Line number where last time x-locked */
3632 #ifdef UNIV_DEBUG
3633-diff -ruN a/storage/innodb_plugin/include/sync0sync.h b/storage/innodb_plugin/include/sync0sync.h
3634---- a/storage/innodb_plugin/include/sync0sync.h 2010-08-27 16:13:11.087074844 +0900
3635-+++ b/storage/innodb_plugin/include/sync0sync.h 2010-08-27 16:29:24.327059254 +0900
3636+--- a/storage/innodb_plugin/include/sync0sync.h
3637++++ b/storage/innodb_plugin/include/sync0sync.h
3638 @@ -73,14 +73,14 @@
3639 #ifdef UNIV_DEBUG
3640 # ifdef UNIV_SYNC_DEBUG
3641@@ -178,9 +174,8 @@
3642 };
3643
3644 /** The global array of wait cells for implementation of the databases own
3645-diff -ruN a/storage/innodb_plugin/sync/sync0arr.c b/storage/innodb_plugin/sync/sync0arr.c
3646---- a/storage/innodb_plugin/sync/sync0arr.c 2010-08-27 15:52:14.340059415 +0900
3647-+++ b/storage/innodb_plugin/sync/sync0arr.c 2010-08-27 16:29:24.329058856 +0900
3648+--- a/storage/innodb_plugin/sync/sync0arr.c
3649++++ b/storage/innodb_plugin/sync/sync0arr.c
3650 @@ -482,12 +482,12 @@
3651 mutex = cell->old_wait_mutex;
3652
3653@@ -208,9 +203,8 @@
3654 writer = rw_lock_get_writer(rwlock);
3655 if (writer != RW_LOCK_NOT_LOCKED) {
3656 fprintf(file,
3657-diff -ruN a/storage/innodb_plugin/sync/sync0rw.c b/storage/innodb_plugin/sync/sync0rw.c
3658---- a/storage/innodb_plugin/sync/sync0rw.c 2010-08-04 02:24:20.000000000 +0900
3659-+++ b/storage/innodb_plugin/sync/sync0rw.c 2010-08-27 16:29:24.331058289 +0900
3660+--- a/storage/innodb_plugin/sync/sync0rw.c
3661++++ b/storage/innodb_plugin/sync/sync0rw.c
3662 @@ -231,10 +231,10 @@
3663 # ifdef UNIV_SYNC_DEBUG
3664 ulint level, /*!< in: level */
3665@@ -305,9 +299,8 @@
3666 }
3667
3668 /* these stats may not be accurate */
3669-diff -ruN a/storage/innodb_plugin/sync/sync0sync.c b/storage/innodb_plugin/sync/sync0sync.c
3670---- a/storage/innodb_plugin/sync/sync0sync.c 2010-08-27 16:13:11.113988290 +0900
3671-+++ b/storage/innodb_plugin/sync/sync0sync.c 2010-08-27 16:29:24.333058256 +0900
3672+--- a/storage/innodb_plugin/sync/sync0sync.c
3673++++ b/storage/innodb_plugin/sync/sync0sync.c
3674 @@ -239,13 +239,13 @@
3675 /*==============*/
3676 mutex_t* mutex, /*!< in: pointer to memory */
3677
3678=== modified file 'patches/innodb_show_status.patch'
3679--- patches/innodb_show_status.patch 2011-06-23 02:18:22 +0000
3680+++ patches/innodb_show_status.patch 2011-07-27 11:11:52 +0000
3681@@ -5,9 +5,8 @@
3682 #!!! notice !!!
3683 # Any small change to this file in the main branch
3684 # should be done or reviewed by the maintainer!
3685-diff -ruN a/storage/innodb_plugin/buf/buf0buf.c b/storage/innodb_plugin/buf/buf0buf.c
3686---- a/storage/innodb_plugin/buf/buf0buf.c 2010-04-06 23:07:12.000000000 +0900
3687-+++ b/storage/innodb_plugin/buf/buf0buf.c 2010-04-29 15:28:56.000000000 +0900
3688+--- a/storage/innodb_plugin/buf/buf0buf.c
3689++++ b/storage/innodb_plugin/buf/buf0buf.c
3690 @@ -3897,14 +3897,16 @@
3691 buf_pool_mutex_enter();
3692
3693@@ -30,9 +29,8 @@
3694 (ulong) UT_LIST_GET_LEN(buf_pool->free),
3695 (ulong) UT_LIST_GET_LEN(buf_pool->LRU),
3696 (ulong) buf_pool->LRU_old_len,
3697-diff -ruN a/storage/innodb_plugin/fil/fil0fil.c b/storage/innodb_plugin/fil/fil0fil.c
3698---- a/storage/innodb_plugin/fil/fil0fil.c 2010-04-06 23:07:12.000000000 +0900
3699-+++ b/storage/innodb_plugin/fil/fil0fil.c 2010-04-29 15:28:56.000000000 +0900
3700+--- a/storage/innodb_plugin/fil/fil0fil.c
3701++++ b/storage/innodb_plugin/fil/fil0fil.c
3702 @@ -4833,3 +4833,30 @@
3703
3704 fil_system = NULL;
3705@@ -64,9 +62,8 @@
3706 + return 0;
3707 + }
3708 +}
3709-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
3710---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-29 15:28:20.000000000 +0900
3711-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-29 15:28:56.000000000 +0900
3712+--- a/storage/innodb_plugin/handler/ha_innodb.cc
3713++++ b/storage/innodb_plugin/handler/ha_innodb.cc
3714 @@ -10821,6 +10821,16 @@
3715 "Force InnoDB to not use next-key locking, to use only row-level locking.",
3716 NULL, NULL, FALSE);
3717@@ -102,9 +99,8 @@
3718 MYSQL_SYSVAR(version),
3719 MYSQL_SYSVAR(use_sys_malloc),
3720 MYSQL_SYSVAR(change_buffering),
3721-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
3722---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-29 15:28:20.000000000 +0900
3723-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-29 15:28:56.000000000 +0900
3724+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
3725++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
3726 @@ -24,5 +24,6 @@
3727 const char *link;
3728 }innodb_enhancements[] = {
3729@@ -112,9 +108,8 @@
3730 +{"innodb_show_status","Improvements to SHOW INNODB STATUS","Memory information and lock info fixes","http://www.percona.com/docs/wiki/percona-xtradb"},
3731 {NULL, NULL, NULL, NULL}
3732 };
3733-diff -ruN a/storage/innodb_plugin/include/fil0fil.h b/storage/innodb_plugin/include/fil0fil.h
3734---- a/storage/innodb_plugin/include/fil0fil.h 2010-04-06 23:07:12.000000000 +0900
3735-+++ b/storage/innodb_plugin/include/fil0fil.h 2010-04-29 15:28:56.000000000 +0900
3736+--- a/storage/innodb_plugin/include/fil0fil.h
3737++++ b/storage/innodb_plugin/include/fil0fil.h
3738 @@ -725,6 +725,17 @@
3739 /*============================*/
3740 ulint id); /*!< in: space id */
3741@@ -133,9 +128,8 @@
3742 typedef struct fil_space_struct fil_space_t;
3743
3744 #endif
3745-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
3746---- a/storage/innodb_plugin/include/srv0srv.h 2010-04-06 23:07:13.000000000 +0900
3747-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-04-29 15:28:56.000000000 +0900
3748+--- a/storage/innodb_plugin/include/srv0srv.h
3749++++ b/storage/innodb_plugin/include/srv0srv.h
3750 @@ -128,6 +128,9 @@
3751 extern char srv_adaptive_flushing;
3752
3753@@ -146,9 +140,8 @@
3754 /* The sort order table of the MySQL latin1_swedish_ci character set
3755 collation */
3756 extern const byte* srv_latin1_ordering;
3757-diff -ruN a/storage/innodb_plugin/include/thr0loc.h b/storage/innodb_plugin/include/thr0loc.h
3758---- a/storage/innodb_plugin/include/thr0loc.h 2010-04-06 23:07:13.000000000 +0900
3759-+++ b/storage/innodb_plugin/include/thr0loc.h 2010-04-29 15:28:56.000000000 +0900
3760+--- a/storage/innodb_plugin/include/thr0loc.h
3761++++ b/storage/innodb_plugin/include/thr0loc.h
3762 @@ -83,6 +83,17 @@
3763 thr_local_get_in_ibuf_field(void);
3764 /*=============================*/
3765@@ -167,9 +160,8 @@
3766 #ifndef UNIV_NONINL
3767 #include "thr0loc.ic"
3768 #endif
3769-diff -ruN a/storage/innodb_plugin/lock/lock0lock.c b/storage/innodb_plugin/lock/lock0lock.c
3770---- a/storage/innodb_plugin/lock/lock0lock.c 2010-04-06 23:07:13.000000000 +0900
3771-+++ b/storage/innodb_plugin/lock/lock0lock.c 2010-04-29 15:33:51.000000000 +0900
3772+--- a/storage/innodb_plugin/lock/lock0lock.c
3773++++ b/storage/innodb_plugin/lock/lock0lock.c
3774 @@ -4379,6 +4379,7 @@
3775
3776 putc('\n', file);
3777@@ -206,9 +198,8 @@
3778 " SUPPRESSING FURTHER PRINTS\n",
3779 file);
3780
3781-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
3782---- a/storage/innodb_plugin/srv/srv0srv.c 2010-04-06 23:07:14.000000000 +0900
3783-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-04-29 15:40:14.000000000 +0900
3784+--- a/storage/innodb_plugin/srv/srv0srv.c
3785++++ b/storage/innodb_plugin/srv/srv0srv.c
3786 @@ -171,6 +171,9 @@
3787 the checkpoints. */
3788 UNIV_INTERN char srv_adaptive_flushing = TRUE;
3789@@ -386,9 +377,8 @@
3790 fputs("----------------------------\n"
3791 "END OF INNODB MONITOR OUTPUT\n"
3792 "============================\n", file);
3793-diff -ruN a/storage/innodb_plugin/sync/sync0arr.c b/storage/innodb_plugin/sync/sync0arr.c
3794---- a/storage/innodb_plugin/sync/sync0arr.c 2010-04-06 23:07:14.000000000 +0900
3795-+++ b/storage/innodb_plugin/sync/sync0arr.c 2010-04-29 15:28:56.000000000 +0900
3796+--- a/storage/innodb_plugin/sync/sync0arr.c
3797++++ b/storage/innodb_plugin/sync/sync0arr.c
3798 @@ -471,7 +471,7 @@
3799
3800 fprintf(file,
3801@@ -398,9 +388,8 @@
3802 (ulong) os_thread_pf(cell->thread), cell->file,
3803 (ulong) cell->line,
3804 difftime(time(NULL), cell->reservation_time));
3805-diff -ruN a/storage/innodb_plugin/thr/thr0loc.c b/storage/innodb_plugin/thr/thr0loc.c
3806---- a/storage/innodb_plugin/thr/thr0loc.c 2010-04-06 23:07:14.000000000 +0900
3807-+++ b/storage/innodb_plugin/thr/thr0loc.c 2010-04-29 15:28:56.000000000 +0900
3808+--- a/storage/innodb_plugin/thr/thr0loc.c
3809++++ b/storage/innodb_plugin/thr/thr0loc.c
3810 @@ -49,6 +49,7 @@
3811
3812 /** The hash table. The module is not yet initialized when it is NULL. */
3813
3814=== modified file 'patches/innodb_show_sys_tables.patch'
3815--- patches/innodb_show_sys_tables.patch 2011-06-23 02:18:22 +0000
3816+++ patches/innodb_show_sys_tables.patch 2011-07-27 11:11:52 +0000
3817@@ -5,9 +5,8 @@
3818 #!!! notice !!!
3819 # Any small change to this file in the main branch
3820 # should be done or reviewed by the maintainer!
3821-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
3822---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:45:46.194411503 +0900
3823-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:49:26.171990559 +0900
3824+--- a/storage/innodb_plugin/handler/ha_innodb.cc
3825++++ b/storage/innodb_plugin/handler/ha_innodb.cc
3826 @@ -11871,6 +11871,9 @@
3827 i_s_innodb_table_stats,
3828 i_s_innodb_index_stats,
3829@@ -18,9 +17,8 @@
3830 i_s_innodb_patches
3831 mysql_declare_plugin_end;
3832
3833-diff -ruN a/storage/innodb_plugin/handler/i_s.cc b/storage/innodb_plugin/handler/i_s.cc
3834---- a/storage/innodb_plugin/handler/i_s.cc 2010-08-27 16:36:03.497021073 +0900
3835-+++ b/storage/innodb_plugin/handler/i_s.cc 2010-08-27 16:49:26.177990679 +0900
3836+--- a/storage/innodb_plugin/handler/i_s.cc
3837++++ b/storage/innodb_plugin/handler/i_s.cc
3838 @@ -46,6 +46,7 @@
3839 #include "trx0rseg.h" /* for trx_rseg_struct */
3840 #include "trx0sys.h" /* for trx_sys */
3841@@ -29,13 +27,10 @@
3842 #include "buf0lru.h" /* for XTRA_LRU_[DUMP/RESTORE] */
3843 }
3844
3845-@@ -3111,6 +3112,674 @@
3846- STRUCT_FLD(deinit, i_s_common_deinit),
3847- STRUCT_FLD(version, 0x0100 /* 1.0 */),
3848- STRUCT_FLD(status_vars, NULL),
3849-+ STRUCT_FLD(system_vars, NULL),
3850-+ STRUCT_FLD(__reserved1, NULL)
3851-+};
3852+@@ -3114,3 +3115,671 @@
3853+ STRUCT_FLD(system_vars, NULL),
3854+ STRUCT_FLD(__reserved1, NULL)
3855+ };
3856 +
3857 +static ST_FIELD_INFO i_s_innodb_sys_tables_info[] =
3858 +{
3859@@ -701,12 +696,11 @@
3860 + STRUCT_FLD(deinit, i_s_common_deinit),
3861 + STRUCT_FLD(version, 0x0100 /* 1.0 */),
3862 + STRUCT_FLD(status_vars, NULL),
3863- STRUCT_FLD(system_vars, NULL),
3864- STRUCT_FLD(__reserved1, NULL)
3865- };
3866-diff -ruN a/storage/innodb_plugin/handler/i_s.h b/storage/innodb_plugin/handler/i_s.h
3867---- a/storage/innodb_plugin/handler/i_s.h 2010-08-27 16:29:12.542982379 +0900
3868-+++ b/storage/innodb_plugin/handler/i_s.h 2010-08-27 16:49:26.179990535 +0900
3869++ STRUCT_FLD(system_vars, NULL),
3870++ STRUCT_FLD(__reserved1, NULL)
3871++};
3872+--- a/storage/innodb_plugin/handler/i_s.h
3873++++ b/storage/innodb_plugin/handler/i_s.h
3874 @@ -41,5 +41,8 @@
3875 extern struct st_mysql_plugin i_s_innodb_table_stats;
3876 extern struct st_mysql_plugin i_s_innodb_index_stats;
3877@@ -716,9 +710,8 @@
3878 +extern struct st_mysql_plugin i_s_innodb_sys_stats;
3879
3880 #endif /* i_s_h */
3881-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
3882---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:45:46.199018686 +0900
3883-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:49:26.173350991 +0900
3884+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
3885++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
3886 @@ -46,5 +46,6 @@
3887 {"innodb_pass_corrupt_table","Treat tables as corrupt instead of crash, when meet corrupt blocks","","http://www.percona.com/docs/wiki/percona-xtradb"},
3888 {"innodb_fast_checksum","Using the checksum on 32bit-unit calculation","incompatible for unpatched ver.","http://www.percona.com/docs/wiki/percona-xtradb"},
3889
3890=== modified file 'patches/innodb_split_buf_pool_mutex.patch'
3891--- patches/innodb_split_buf_pool_mutex.patch 2011-07-22 05:41:42 +0000
3892+++ patches/innodb_split_buf_pool_mutex.patch 2011-07-27 11:11:52 +0000
3893@@ -5,9 +5,8 @@
3894 #!!! notice !!!
3895 # Any small change to this file in the main branch
3896 # should be done or reviewed by the maintainer!
3897-diff -ruN a/storage/innodb_plugin/btr/btr0cur.c b/storage/innodb_plugin/btr/btr0cur.c
3898---- a/storage/innodb_plugin/btr/btr0cur.c 2010-08-04 02:24:19.000000000 +0900
3899-+++ b/storage/innodb_plugin/btr/btr0cur.c 2010-08-27 16:11:40.593021205 +0900
3900+--- a/storage/innodb_plugin/btr/btr0cur.c
3901++++ b/storage/innodb_plugin/btr/btr0cur.c
3902 @@ -3790,7 +3790,8 @@
3903
3904 mtr_commit(mtr);
3905@@ -44,9 +43,8 @@
3906 mutex_exit(&block->mutex);
3907 }
3908
3909-diff -ruN a/storage/innodb_plugin/btr/btr0sea.c b/storage/innodb_plugin/btr/btr0sea.c
3910---- a/storage/innodb_plugin/btr/btr0sea.c 2010-08-27 16:11:12.151975789 +0900
3911-+++ b/storage/innodb_plugin/btr/btr0sea.c 2010-08-27 16:11:40.593021205 +0900
3912+--- a/storage/innodb_plugin/btr/btr0sea.c
3913++++ b/storage/innodb_plugin/btr/btr0sea.c
3914 @@ -1925,7 +1925,8 @@
3915 rec_offs_init(offsets_);
3916
3917@@ -99,9 +97,8 @@
3918 rw_lock_x_unlock(&btr_search_latch);
3919 if (UNIV_LIKELY_NULL(heap)) {
3920 mem_heap_free(heap);
3921-diff -ruN a/storage/innodb_plugin/buf/buf0buddy.c b/storage/innodb_plugin/buf/buf0buddy.c
3922---- a/storage/innodb_plugin/buf/buf0buddy.c 2010-08-27 15:54:59.015990108 +0900
3923-+++ b/storage/innodb_plugin/buf/buf0buddy.c 2010-08-27 16:11:40.596022762 +0900
3924+--- a/storage/innodb_plugin/buf/buf0buddy.c
3925++++ b/storage/innodb_plugin/buf/buf0buddy.c
3926 @@ -82,10 +82,11 @@
3927 if (b) UNIV_MEM_VALID(b, BUF_BUDDY_LOW << i);
3928 #endif /* UNIV_DEBUG_VALGRIND */
3929@@ -574,9 +571,8 @@
3930
3931 buf = bpage;
3932 UNIV_MEM_VALID(bpage, BUF_BUDDY_LOW << i);
3933-diff -ruN a/storage/innodb_plugin/buf/buf0buf.c b/storage/innodb_plugin/buf/buf0buf.c
3934---- a/storage/innodb_plugin/buf/buf0buf.c 2010-08-27 15:55:39.385322978 +0900
3935-+++ b/storage/innodb_plugin/buf/buf0buf.c 2010-08-27 16:11:40.603021006 +0900
3936+--- a/storage/innodb_plugin/buf/buf0buf.c
3937++++ b/storage/innodb_plugin/buf/buf0buf.c
3938 @@ -251,6 +251,12 @@
3939 /** mutex protecting the buffer pool struct and control blocks, except the
3940 read-write lock in them */
3941@@ -1851,9 +1847,8 @@
3942
3943 return(len);
3944 }
3945-diff -ruN a/storage/innodb_plugin/buf/buf0flu.c b/storage/innodb_plugin/buf/buf0flu.c
3946---- a/storage/innodb_plugin/buf/buf0flu.c 2010-08-27 15:54:59.022021357 +0900
3947-+++ b/storage/innodb_plugin/buf/buf0flu.c 2010-08-27 16:11:40.607020890 +0900
3948+--- a/storage/innodb_plugin/buf/buf0flu.c
3949++++ b/storage/innodb_plugin/buf/buf0flu.c
3950 @@ -102,7 +102,8 @@
3951 const ib_rbt_node_t* c_node;
3952 const ib_rbt_node_t* p_node;
3953@@ -2408,9 +2403,8 @@
3954
3955 return(ret);
3956 }
3957-diff -ruN a/storage/innodb_plugin/buf/buf0lru.c b/storage/innodb_plugin/buf/buf0lru.c
3958---- a/storage/innodb_plugin/buf/buf0lru.c 2010-08-27 15:54:59.025058614 +0900
3959-+++ b/storage/innodb_plugin/buf/buf0lru.c 2010-08-27 16:11:40.611021077 +0900
3960+--- a/storage/innodb_plugin/buf/buf0lru.c
3961++++ b/storage/innodb_plugin/buf/buf0lru.c
3962 @@ -145,8 +145,9 @@
3963 void
3964 buf_LRU_block_free_hashed_page(
3965@@ -3400,9 +3394,8 @@
3966 + mutex_exit(&LRU_list_mutex);
3967 }
3968 #endif /* UNIV_DEBUG_PRINT || UNIV_DEBUG || UNIV_BUF_DEBUG */
3969-diff -ruN a/storage/innodb_plugin/buf/buf0rea.c b/storage/innodb_plugin/buf/buf0rea.c
3970---- a/storage/innodb_plugin/buf/buf0rea.c 2010-08-27 15:54:59.027059378 +0900
3971-+++ b/storage/innodb_plugin/buf/buf0rea.c 2010-08-27 16:11:40.614021339 +0900
3972+--- a/storage/innodb_plugin/buf/buf0rea.c
3973++++ b/storage/innodb_plugin/buf/buf0rea.c
3974 @@ -290,10 +290,12 @@
3975
3976 tablespace_version = fil_space_get_version(space);
3977@@ -3470,9 +3463,8 @@
3978
3979 if ((offset == low) && (succ_offset == offset + 1)) {
3980
3981-diff -ruN a/storage/innodb_plugin/handler/i_s.cc b/storage/innodb_plugin/handler/i_s.cc
3982---- a/storage/innodb_plugin/handler/i_s.cc 2010-08-27 15:59:21.753412068 +0900
3983-+++ b/storage/innodb_plugin/handler/i_s.cc 2010-08-27 16:11:40.617020805 +0900
3984+--- a/storage/innodb_plugin/handler/i_s.cc
3985++++ b/storage/innodb_plugin/handler/i_s.cc
3986 @@ -2229,7 +2229,8 @@
3987
3988 RETURN_IF_INNODB_NOT_STARTED(tables->schema_table_name);
3989@@ -3493,9 +3485,8 @@
3990 DBUG_RETURN(status);
3991 }
3992
3993-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
3994---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:11:12.167183642 +0900
3995-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:11:40.614990183 +0900
3996+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
3997++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
3998 @@ -33,5 +33,6 @@
3999 {"innodb_overwrite_relay_log_info","overwrite relay-log.info when slave recovery","Building as plugin, it is not used.","http://www.percona.com/docs/wiki/percona-xtradb:innodb_overwrite_relay_log_info"},
4000 {"innodb_thread_concurrency_timer_based","use InnoDB timer based concurrency throttling (backport from MySQL 5.4.0)","",""},
4001@@ -3503,9 +3494,8 @@
4002 +{"innodb_split_buf_pool_mutex","More fix of buffer_pool mutex","Spliting buf_pool_mutex and optimizing based on innodb_opt_lru_count","http://www.percona.com/docs/wiki/percona-xtradb"},
4003 {NULL, NULL, NULL, NULL}
4004 };
4005-diff -ruN a/storage/innodb_plugin/include/buf0buddy.h b/storage/innodb_plugin/include/buf0buddy.h
4006---- a/storage/innodb_plugin/include/buf0buddy.h 2010-08-04 02:24:19.000000000 +0900
4007-+++ b/storage/innodb_plugin/include/buf0buddy.h 2010-08-27 16:11:40.618988049 +0900
4008+--- a/storage/innodb_plugin/include/buf0buddy.h
4009++++ b/storage/innodb_plugin/include/buf0buddy.h
4010 @@ -49,10 +49,11 @@
4011 buf_buddy_alloc(
4012 /*============*/
4013@@ -3529,9 +3519,8 @@
4014 __attribute__((nonnull));
4015
4016 /** Statistics of buddy blocks of a given size. */
4017-diff -ruN a/storage/innodb_plugin/include/buf0buddy.ic b/storage/innodb_plugin/include/buf0buddy.ic
4018---- a/storage/innodb_plugin/include/buf0buddy.ic 2010-08-04 02:24:19.000000000 +0900
4019-+++ b/storage/innodb_plugin/include/buf0buddy.ic 2010-08-27 16:11:40.619989772 +0900
4020+--- a/storage/innodb_plugin/include/buf0buddy.ic
4021++++ b/storage/innodb_plugin/include/buf0buddy.ic
4022 @@ -44,10 +44,11 @@
4023 /*================*/
4024 ulint i, /*!< in: index of buf_pool->zip_free[],
4025@@ -3603,9 +3592,8 @@
4026 }
4027
4028 #ifdef UNIV_MATERIALIZE
4029-diff -ruN a/storage/innodb_plugin/include/buf0buf.h b/storage/innodb_plugin/include/buf0buf.h
4030---- a/storage/innodb_plugin/include/buf0buf.h 2010-08-27 15:55:39.399063353 +0900
4031-+++ b/storage/innodb_plugin/include/buf0buf.h 2010-08-27 16:11:40.622020552 +0900
4032+--- a/storage/innodb_plugin/include/buf0buf.h
4033++++ b/storage/innodb_plugin/include/buf0buf.h
4034 @@ -713,6 +713,15 @@
4035 const buf_page_t* bpage) /*!< in: pointer to control block */
4036 __attribute__((pure));
4037@@ -3679,9 +3667,8 @@
4038 mutex_enter(&buf_pool_mutex); \
4039 } while (0)
4040
4041-diff -ruN a/storage/innodb_plugin/include/buf0buf.ic b/storage/innodb_plugin/include/buf0buf.ic
4042---- a/storage/innodb_plugin/include/buf0buf.ic 2010-08-04 02:24:19.000000000 +0900
4043-+++ b/storage/innodb_plugin/include/buf0buf.ic 2010-08-27 16:11:40.624990413 +0900
4044+--- a/storage/innodb_plugin/include/buf0buf.ic
4045++++ b/storage/innodb_plugin/include/buf0buf.ic
4046 @@ -121,7 +121,9 @@
4047 buf_page_t* bpage;
4048 ib_uint64_t lsn;
4049@@ -3916,9 +3903,8 @@
4050
4051 mutex_enter(&block->mutex);
4052
4053-diff -ruN a/storage/innodb_plugin/include/buf0flu.ic b/storage/innodb_plugin/include/buf0flu.ic
4054---- a/storage/innodb_plugin/include/buf0flu.ic 2010-08-04 02:24:19.000000000 +0900
4055-+++ b/storage/innodb_plugin/include/buf0flu.ic 2010-08-27 16:11:40.625993554 +0900
4056+--- a/storage/innodb_plugin/include/buf0flu.ic
4057++++ b/storage/innodb_plugin/include/buf0flu.ic
4058 @@ -55,13 +55,23 @@
4059 buf_block_t* block, /*!< in: block which is modified */
4060 mtr_t* mtr) /*!< in: mtr */
4061@@ -4016,9 +4002,8 @@
4062 + mutex_exit(&(block->mutex));
4063 }
4064 #endif /* !UNIV_HOTBACKUP */
4065-diff -ruN a/storage/innodb_plugin/include/buf0lru.h b/storage/innodb_plugin/include/buf0lru.h
4066---- a/storage/innodb_plugin/include/buf0lru.h 2010-08-04 02:24:19.000000000 +0900
4067-+++ b/storage/innodb_plugin/include/buf0lru.h 2010-08-27 16:11:40.627990038 +0900
4068+--- a/storage/innodb_plugin/include/buf0lru.h
4069++++ b/storage/innodb_plugin/include/buf0lru.h
4070 @@ -110,8 +110,9 @@
4071 buf_LRU_free_block(
4072 /*===============*/
4073@@ -4040,9 +4025,8 @@
4074 /******************************************************************//**
4075 Adds a block to the LRU list. */
4076 UNIV_INTERN
4077-diff -ruN a/storage/innodb_plugin/include/sync0sync.h b/storage/innodb_plugin/include/sync0sync.h
4078---- a/storage/innodb_plugin/include/sync0sync.h 2010-08-04 02:24:19.000000000 +0900
4079-+++ b/storage/innodb_plugin/include/sync0sync.h 2010-08-27 16:11:40.628990180 +0900
4080+--- a/storage/innodb_plugin/include/sync0sync.h
4081++++ b/storage/innodb_plugin/include/sync0sync.h
4082 @@ -487,8 +487,14 @@
4083 SYNC_SEARCH_SYS, as memory allocation
4084 can call routines there! Otherwise
4085@@ -4068,9 +4052,8 @@
4086 may be) threads waiting in the global wait
4087 array for this mutex to be released.
4088 Otherwise, this is 0. */
4089-diff -ruN a/storage/innodb_plugin/mtr/mtr0mtr.c b/storage/innodb_plugin/mtr/mtr0mtr.c
4090---- a/storage/innodb_plugin/mtr/mtr0mtr.c 2010-08-04 02:24:20.000000000 +0900
4091-+++ b/storage/innodb_plugin/mtr/mtr0mtr.c 2010-08-27 16:11:40.631020912 +0900
4092+--- a/storage/innodb_plugin/mtr/mtr0mtr.c
4093++++ b/storage/innodb_plugin/mtr/mtr0mtr.c
4094 @@ -33,6 +33,7 @@
4095 #include "page0types.h"
4096 #include "mtr0log.h"
4097@@ -4156,9 +4139,8 @@
4098
4099 mtr_memo_slot_release(mtr, slot);
4100
4101-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
4102---- a/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:11:12.194989878 +0900
4103-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:11:40.634022489 +0900
4104+--- a/storage/innodb_plugin/srv/srv0srv.c
4105++++ b/storage/innodb_plugin/srv/srv0srv.c
4106 @@ -2869,7 +2869,7 @@
4107
4108 mutex_exit(&(log_sys->mutex));
4109@@ -4177,9 +4159,8 @@
4110
4111 if (!srv_use_doublewrite_buf) {
4112 /* flush is faster than when doublewrite */
4113-diff -ruN a/storage/innodb_plugin/sync/sync0sync.c b/storage/innodb_plugin/sync/sync0sync.c
4114---- a/storage/innodb_plugin/sync/sync0sync.c 2010-08-04 02:24:20.000000000 +0900
4115-+++ b/storage/innodb_plugin/sync/sync0sync.c 2010-08-27 16:11:40.636021261 +0900
4116+--- a/storage/innodb_plugin/sync/sync0sync.c
4117++++ b/storage/innodb_plugin/sync/sync0sync.c
4118 @@ -254,7 +254,7 @@
4119 mutex->lock_word = 0;
4120 #endif
4121
4122=== modified file 'patches/innodb_stats.patch'
4123--- patches/innodb_stats.patch 2011-06-23 02:18:22 +0000
4124+++ patches/innodb_stats.patch 2011-07-27 11:11:52 +0000
4125@@ -5,9 +5,8 @@
4126 #!!! notice !!!
4127 # Any small change to this file in the main branch
4128 # should be done or reviewed by the maintainer!
4129-diff -ruN a/storage/innodb_plugin/dict/dict0boot.c b/storage/innodb_plugin/dict/dict0boot.c
4130---- a/storage/innodb_plugin/dict/dict0boot.c 2010-08-27 16:11:12.152990021 +0900
4131-+++ b/storage/innodb_plugin/dict/dict0boot.c 2010-08-27 16:16:49.202982244 +0900
4132+--- a/storage/innodb_plugin/dict/dict0boot.c
4133++++ b/storage/innodb_plugin/dict/dict0boot.c
4134 @@ -263,6 +263,29 @@
4135 /* Get the dictionary header */
4136 dict_hdr = dict_hdr_get(&mtr);
4137@@ -101,9 +100,8 @@
4138
4139 mutex_exit(&(dict_sys->mutex));
4140 }
4141-diff -ruN a/storage/innodb_plugin/dict/dict0crea.c b/storage/innodb_plugin/dict/dict0crea.c
4142---- a/storage/innodb_plugin/dict/dict0crea.c 2010-08-27 16:11:12.152990021 +0900
4143-+++ b/storage/innodb_plugin/dict/dict0crea.c 2010-08-27 16:16:49.205982429 +0900
4144+--- a/storage/innodb_plugin/dict/dict0crea.c
4145++++ b/storage/innodb_plugin/dict/dict0crea.c
4146 @@ -508,6 +508,56 @@
4147 }
4148
4149@@ -280,16 +278,10 @@
4150 }
4151
4152 if (node->state == INDEX_CREATE_INDEX_TREE) {
4153-@@ -1179,6 +1318,66 @@
4154- return(NULL);
4155- }
4156+@@ -1185,6 +1324,66 @@
4157+ }
4158
4159-+ thr->run_node = que_node_get_parent(node);
4160-+
4161-+ return(thr);
4162-+}
4163-+
4164-+/****************************************************************//**
4165+ /****************************************************************//**
4166 +*/
4167 +UNIV_INTERN
4168 +que_thr_t*
4169@@ -344,12 +336,17 @@
4170 + return(NULL);
4171 + }
4172 +
4173- thr->run_node = que_node_get_parent(node);
4174-
4175- return(thr);
4176-diff -ruN a/storage/innodb_plugin/dict/dict0dict.c b/storage/innodb_plugin/dict/dict0dict.c
4177---- a/storage/innodb_plugin/dict/dict0dict.c 2010-08-27 16:11:12.155144214 +0900
4178-+++ b/storage/innodb_plugin/dict/dict0dict.c 2010-08-27 16:16:49.213982476 +0900
4179++ thr->run_node = que_node_get_parent(node);
4180++
4181++ return(thr);
4182++}
4183++
4184++/****************************************************************//**
4185+ Creates the foreign key constraints system tables inside InnoDB
4186+ at database creation or database start if they are not found or are
4187+ not of the right form.
4188+--- a/storage/innodb_plugin/dict/dict0dict.c
4189++++ b/storage/innodb_plugin/dict/dict0dict.c
4190 @@ -739,7 +739,7 @@
4191 print an error message and return without doing
4192 anything. */
4193@@ -808,9 +805,8 @@
4194
4195 dict_table_stats_lock(table, RW_S_LATCH);
4196
4197-diff -ruN a/storage/innodb_plugin/dict/dict0load.c b/storage/innodb_plugin/dict/dict0load.c
4198---- a/storage/innodb_plugin/dict/dict0load.c 2010-08-04 02:24:19.000000000 +0900
4199-+++ b/storage/innodb_plugin/dict/dict0load.c 2010-08-27 16:16:49.218982387 +0900
4200+--- a/storage/innodb_plugin/dict/dict0load.c
4201++++ b/storage/innodb_plugin/dict/dict0load.c
4202 @@ -223,7 +223,7 @@
4203
4204 if (dict_table_get_first_index(table)) {
4205@@ -820,9 +816,8 @@
4206 }
4207
4208 dict_table_print_low(table);
4209-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
4210---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:15:55.192417748 +0900
4211-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-08-27 16:16:49.233984845 +0900
4212+--- a/storage/innodb_plugin/handler/ha_innodb.cc
4213++++ b/storage/innodb_plugin/handler/ha_innodb.cc
4214 @@ -190,6 +190,7 @@
4215 static my_bool innobase_rollback_on_timeout = FALSE;
4216 static my_bool innobase_create_status_file = FALSE;
4217@@ -989,9 +984,8 @@
4218 i_s_innodb_patches
4219 mysql_declare_plugin_end;
4220
4221-diff -ruN a/storage/innodb_plugin/handler/i_s.cc b/storage/innodb_plugin/handler/i_s.cc
4222---- a/storage/innodb_plugin/handler/i_s.cc 2010-08-27 16:13:11.075059060 +0900
4223-+++ b/storage/innodb_plugin/handler/i_s.cc 2010-08-27 16:16:49.253982474 +0900
4224+--- a/storage/innodb_plugin/handler/i_s.cc
4225++++ b/storage/innodb_plugin/handler/i_s.cc
4226 @@ -45,6 +45,7 @@
4227 #include "btr0btr.h" /* for btr_page_get_index_id */
4228 #include "trx0rseg.h" /* for trx_rseg_struct */
4229@@ -1348,9 +1342,8 @@
4230 + STRUCT_FLD(system_vars, NULL),
4231 + STRUCT_FLD(__reserved1, NULL)
4232 +};
4233-diff -ruN a/storage/innodb_plugin/handler/i_s.h b/storage/innodb_plugin/handler/i_s.h
4234---- a/storage/innodb_plugin/handler/i_s.h 2010-08-27 15:59:21.754987936 +0900
4235-+++ b/storage/innodb_plugin/handler/i_s.h 2010-08-27 16:16:49.255984731 +0900
4236+--- a/storage/innodb_plugin/handler/i_s.h
4237++++ b/storage/innodb_plugin/handler/i_s.h
4238 @@ -38,5 +38,7 @@
4239 extern struct st_mysql_plugin i_s_innodb_cmpmem_reset;
4240 extern struct st_mysql_plugin i_s_innodb_patches;
4241@@ -1359,9 +1352,8 @@
4242 +extern struct st_mysql_plugin i_s_innodb_index_stats;
4243
4244 #endif /* i_s_h */
4245-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
4246---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:15:55.197404531 +0900
4247-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-08-27 16:16:49.249142399 +0900
4248+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
4249++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
4250 @@ -35,5 +35,6 @@
4251 {"innodb_expand_import","convert .ibd file automatically when import tablespace","the files are generated by xtrabackup export mode.","http://www.percona.com/docs/wiki/percona-xtradb"},
4252 {"innodb_dict_size_limit","Limit dictionary cache size","Variable innodb_dict_size_limit in bytes","http://www.percona.com/docs/wiki/percona-xtradb"},
4253@@ -1369,9 +1361,8 @@
4254 +{"innodb_stats","Additional features about InnoDB statistics/optimizer","","http://www.percona.com/docs/wiki/percona-xtradb"},
4255 {NULL, NULL, NULL, NULL}
4256 };
4257-diff -ruN a/storage/innodb_plugin/include/dict0boot.h b/storage/innodb_plugin/include/dict0boot.h
4258---- a/storage/innodb_plugin/include/dict0boot.h 2010-08-04 02:24:19.000000000 +0900
4259-+++ b/storage/innodb_plugin/include/dict0boot.h 2010-08-27 16:16:49.260982522 +0900
4260+--- a/storage/innodb_plugin/include/dict0boot.h
4261++++ b/storage/innodb_plugin/include/dict0boot.h
4262 @@ -101,6 +101,7 @@
4263 #define DICT_COLUMNS_ID ut_dulint_create(0, 2)
4264 #define DICT_INDEXES_ID ut_dulint_create(0, 3)
4265@@ -1411,9 +1402,8 @@
4266 #ifndef UNIV_NONINL
4267 #include "dict0boot.ic"
4268 #endif
4269-diff -ruN a/storage/innodb_plugin/include/dict0crea.h b/storage/innodb_plugin/include/dict0crea.h
4270---- a/storage/innodb_plugin/include/dict0crea.h 2010-08-04 02:24:19.000000000 +0900
4271-+++ b/storage/innodb_plugin/include/dict0crea.h 2010-08-27 16:16:49.262982080 +0900
4272+--- a/storage/innodb_plugin/include/dict0crea.h
4273++++ b/storage/innodb_plugin/include/dict0crea.h
4274 @@ -53,6 +53,14 @@
4275 dict_index_t* index, /*!< in: index to create, built as a memory data
4276 structure */
4277@@ -1467,9 +1457,8 @@
4278
4279 #ifndef UNIV_NONINL
4280 #include "dict0crea.ic"
4281-diff -ruN a/storage/innodb_plugin/include/dict0dict.h b/storage/innodb_plugin/include/dict0dict.h
4282---- a/storage/innodb_plugin/include/dict0dict.h 2010-08-27 16:11:12.177142545 +0900
4283-+++ b/storage/innodb_plugin/include/dict0dict.h 2010-08-27 16:16:49.263981911 +0900
4284+--- a/storage/innodb_plugin/include/dict0dict.h
4285++++ b/storage/innodb_plugin/include/dict0dict.h
4286 @@ -1057,10 +1057,18 @@
4287 dict_update_statistics(
4288 /*===================*/
4289@@ -1498,9 +1487,8 @@
4290 };
4291 #endif /* !UNIV_HOTBACKUP */
4292
4293-diff -ruN a/storage/innodb_plugin/include/que0que.h b/storage/innodb_plugin/include/que0que.h
4294---- a/storage/innodb_plugin/include/que0que.h 2010-08-04 02:24:19.000000000 +0900
4295-+++ b/storage/innodb_plugin/include/que0que.h 2010-08-27 16:16:49.266982471 +0900
4296+--- a/storage/innodb_plugin/include/que0que.h
4297++++ b/storage/innodb_plugin/include/que0que.h
4298 @@ -495,6 +495,8 @@
4299 #define QUE_NODE_CALL 31
4300 #define QUE_NODE_EXIT 32
4301@@ -1510,9 +1498,8 @@
4302 /* Query thread states */
4303 #define QUE_THR_RUNNING 1
4304 #define QUE_THR_PROCEDURE_WAIT 2
4305-diff -ruN a/storage/innodb_plugin/include/row0mysql.h b/storage/innodb_plugin/include/row0mysql.h
4306---- a/storage/innodb_plugin/include/row0mysql.h 2010-08-04 02:24:19.000000000 +0900
4307-+++ b/storage/innodb_plugin/include/row0mysql.h 2010-08-27 16:16:49.271982518 +0900
4308+--- a/storage/innodb_plugin/include/row0mysql.h
4309++++ b/storage/innodb_plugin/include/row0mysql.h
4310 @@ -376,6 +376,22 @@
4311 then checked for not being too
4312 large. */
4313@@ -1536,9 +1523,8 @@
4314 Scans a table create SQL string and adds to the data dictionary
4315 the foreign key constraints declared in the string. This function
4316 should be called after the indexes for a table have been created.
4317-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
4318---- a/storage/innodb_plugin/include/srv0srv.h 2010-08-27 16:15:55.197989840 +0900
4319-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-08-27 16:16:49.285142419 +0900
4320+--- a/storage/innodb_plugin/include/srv0srv.h
4321++++ b/storage/innodb_plugin/include/srv0srv.h
4322 @@ -197,6 +197,9 @@
4323 extern ibool srv_innodb_status;
4324
4325@@ -1549,9 +1535,8 @@
4326
4327 extern ibool srv_use_doublewrite_buf;
4328 extern ibool srv_use_checksums;
4329-diff -ruN a/storage/innodb_plugin/que/que0que.c b/storage/innodb_plugin/que/que0que.c
4330---- a/storage/innodb_plugin/que/que0que.c 2010-08-04 02:24:20.000000000 +0900
4331-+++ b/storage/innodb_plugin/que/que0que.c 2010-08-27 16:16:49.291984923 +0900
4332+--- a/storage/innodb_plugin/que/que0que.c
4333++++ b/storage/innodb_plugin/que/que0que.c
4334 @@ -622,11 +622,21 @@
4335
4336 que_graph_free_recursive(cre_ind->ind_def);
4337@@ -1592,9 +1577,8 @@
4338 } else if (type == QUE_NODE_ROW_PRINTF) {
4339 thr = row_printf_step(thr);
4340 } else {
4341-diff -ruN a/storage/innodb_plugin/row/row0ins.c b/storage/innodb_plugin/row/row0ins.c
4342---- a/storage/innodb_plugin/row/row0ins.c 2011-02-12 04:20:43.000000000 +0900
4343-+++ b/storage/innodb_plugin/row/row0ins.c 2011-03-30 15:57:54.000000000 +0900
4344+--- a/storage/innodb_plugin/row/row0ins.c
4345++++ b/storage/innodb_plugin/row/row0ins.c
4346 @@ -2020,6 +2020,8 @@
4347 }
4348
4349@@ -1604,9 +1588,8 @@
4350 {
4351 page_t* page = btr_cur_get_page(&cursor);
4352 rec_t* first_rec = page_rec_get_next(
4353-diff -ruN a/storage/innodb_plugin/row/row0merge.c b/storage/innodb_plugin/row/row0merge.c
4354---- a/storage/innodb_plugin/row/row0merge.c 2010-08-04 02:24:19.000000000 +0900
4355-+++ b/storage/innodb_plugin/row/row0merge.c 2010-08-27 16:16:49.295984498 +0900
4356+--- a/storage/innodb_plugin/row/row0merge.c
4357++++ b/storage/innodb_plugin/row/row0merge.c
4358 @@ -2021,6 +2021,8 @@
4359 "UPDATE SYS_INDEXES SET NAME=CONCAT('"
4360 TEMP_INDEX_PREFIX_STR "', NAME) WHERE ID = :indexid;\n"
4361@@ -1616,9 +1599,8 @@
4362 /* Drop the field definitions of the index. */
4363 "DELETE FROM SYS_FIELDS WHERE INDEX_ID = :indexid;\n"
4364 /* Drop the index definition and the B-tree. */
4365-diff -ruN a/storage/innodb_plugin/row/row0mysql.c b/storage/innodb_plugin/row/row0mysql.c
4366---- a/storage/innodb_plugin/row/row0mysql.c 2010-08-04 02:24:20.000000000 +0900
4367-+++ b/storage/innodb_plugin/row/row0mysql.c 2010-08-27 16:16:49.304981955 +0900
4368+--- a/storage/innodb_plugin/row/row0mysql.c
4369++++ b/storage/innodb_plugin/row/row0mysql.c
4370 @@ -862,6 +862,9 @@
4371
4372 table->stat_modified_counter = counter + 1;
4373@@ -1728,9 +1710,8 @@
4374 " DELETE FROM SYS_FIELDS\n"
4375 " WHERE INDEX_ID = index_id;\n"
4376 " DELETE FROM SYS_INDEXES\n"
4377-diff -ruN a/storage/innodb_plugin/row/row0row.c b/storage/innodb_plugin/row/row0row.c
4378---- a/storage/innodb_plugin/row/row0row.c 2011-02-12 04:20:26.000000000 +0900
4379-+++ b/storage/innodb_plugin/row/row0row.c 2011-03-30 15:57:54.000000000 +0900
4380+--- a/storage/innodb_plugin/row/row0row.c
4381++++ b/storage/innodb_plugin/row/row0row.c
4382 @@ -347,6 +347,14 @@
4383
4384 rec_len = rec_offs_n_fields(offsets);
4385@@ -1761,9 +1742,8 @@
4386 field = rec_get_nth_field(rec, offsets, i, &len);
4387
4388 dfield_set_data(dfield, field, len);
4389-diff -ruN a/storage/innodb_plugin/row/row0upd.c b/storage/innodb_plugin/row/row0upd.c
4390---- a/storage/innodb_plugin/row/row0upd.c 2011-02-12 04:20:43.000000000 +0900
4391-+++ b/storage/innodb_plugin/row/row0upd.c 2011-03-30 15:57:54.000000000 +0900
4392+--- a/storage/innodb_plugin/row/row0upd.c
4393++++ b/storage/innodb_plugin/row/row0upd.c
4394 @@ -439,6 +439,12 @@
4395 0);
4396 }
4397@@ -1796,9 +1776,8 @@
4398 data = rec_get_nth_field(rec, offsets, i, &len);
4399
4400 dfield = dtuple_get_nth_field(entry, i);
4401-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
4402---- a/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:15:55.198987678 +0900
4403-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-08-27 16:16:49.311984856 +0900
4404+--- a/storage/innodb_plugin/srv/srv0srv.c
4405++++ b/storage/innodb_plugin/srv/srv0srv.c
4406 @@ -369,6 +369,9 @@
4407 /* When estimating number of different key values in an index, sample
4408 this many index pages */
4409@@ -1809,9 +1788,8 @@
4410
4411 UNIV_INTERN ibool srv_use_doublewrite_buf = TRUE;
4412 UNIV_INTERN ibool srv_use_checksums = TRUE;
4413-diff -ruN a/storage/innodb_plugin/trx/trx0rec.c b/storage/innodb_plugin/trx/trx0rec.c
4414---- a/storage/innodb_plugin/trx/trx0rec.c 2011-02-12 04:20:26.000000000 +0900
4415-+++ b/storage/innodb_plugin/trx/trx0rec.c 2011-03-30 15:57:54.000000000 +0900
4416+--- a/storage/innodb_plugin/trx/trx0rec.c
4417++++ b/storage/innodb_plugin/trx/trx0rec.c
4418 @@ -665,14 +665,27 @@
4419 /* Save to the undo log the old values of the columns to be updated. */
4420
4421
4422=== modified file 'patches/innodb_swap_builtin_plugin.patch'
4423--- patches/innodb_swap_builtin_plugin.patch 2011-07-22 05:41:42 +0000
4424+++ patches/innodb_swap_builtin_plugin.patch 2011-07-27 11:11:52 +0000
4425@@ -5,9 +5,8 @@
4426 #!!! notice !!!
4427 # Any small change to this file in the main branch
4428 # should be done or reviewed by the maintainer!
4429-diff -ruN a/mysql-test/include/have_innodb_plugin.inc b/mysql-test/include/have_innodb_plugin.inc
4430---- a/mysql-test/include/have_innodb_plugin.inc 2010-05-07 00:59:10.000000000 +0900
4431-+++ b/mysql-test/include/have_innodb_plugin.inc 2010-05-25 18:12:49.000000000 +0900
4432+--- a/mysql-test/include/have_innodb_plugin.inc
4433++++ b/mysql-test/include/have_innodb_plugin.inc
4434 @@ -1,5 +1,5 @@
4435 --source include/not_embedded.inc
4436 disable_query_log;
4437@@ -15,9 +14,8 @@
4438 -SELECT (plugin_library LIKE 'ha_innodb_plugin%') AS `TRUE` FROM information_schema.plugins WHERE LOWER(plugin_name) = 'innodb' AND LOWER(plugin_status) = 'active';
4439 +select (support = 'YES' or support = 'DEFAULT' or support = 'ENABLED') as `TRUE` from information_schema.engines where engine = 'innodb';
4440 enable_query_log;
4441-diff -ruN a/mysql-test/include/read_many_rows.inc b/mysql-test/include/read_many_rows.inc
4442---- a/mysql-test/include/read_many_rows.inc 2010-04-06 23:37:12.000000000 +0900
4443-+++ b/mysql-test/include/read_many_rows.inc 2010-05-18 15:39:02.000000000 +0900
4444+--- a/mysql-test/include/read_many_rows.inc
4445++++ b/mysql-test/include/read_many_rows.inc
4446 @@ -112,8 +112,12 @@
4447 insert into t1 values(1);
4448
4449@@ -52,9 +50,8 @@
4450 # check that the whole transaction was rolled back
4451 select * from t2;
4452
4453-diff -ruN a/mysql-test/lib/mtr_cases.pm b/mysql-test/lib/mtr_cases.pm
4454---- a/mysql-test/lib/mtr_cases.pm 2010-07-09 21:34:53.000000000 +0900
4455-+++ b/mysql-test/lib/mtr_cases.pm 2010-07-26 21:23:05.378120605 +0900
4456+--- a/mysql-test/lib/mtr_cases.pm
4457++++ b/mysql-test/lib/mtr_cases.pm
4458 @@ -944,7 +944,7 @@
4459 push(@{$tinfo->{'slave_opt'}}, "--loose-federated");
4460 }
4461@@ -101,9 +98,8 @@
4462 else
4463 {
4464 push(@{$tinfo->{'master_opt'}}, "--loose-skip-innodb");
4465-diff -ruN a/mysql-test/r/read_many_rows_innodb.result b/mysql-test/r/read_many_rows_innodb.result
4466---- a/mysql-test/r/read_many_rows_innodb.result 2010-04-06 23:36:58.000000000 +0900
4467-+++ b/mysql-test/r/read_many_rows_innodb.result 2010-05-18 15:39:24.000000000 +0900
4468+--- a/mysql-test/r/read_many_rows_innodb.result
4469++++ b/mysql-test/r/read_many_rows_innodb.result
4470 @@ -64,7 +64,8 @@
4471 insert into t2 values(123);
4472 insert into t1 values(1);
4473@@ -138,9 +134,8 @@
4474 select * from t2;
4475 f2
4476 drop procedure proc24989;
4477-diff -ruN a/storage/innobase/plug.in b/storage/innobase/plug.in
4478---- a/storage/innobase/plug.in 2010-04-06 23:07:11.000000000 +0900
4479-+++ b/storage/innobase/plug.in 2010-04-28 19:12:59.000000000 +0900
4480+--- a/storage/innobase/plug.in
4481++++ b/storage/innobase/plug.in
4482 @@ -1,7 +1,6 @@
4483 MYSQL_STORAGE_ENGINE(innobase, innodb, [InnoDB Storage Engine],
4484 [Transactional Tables using InnoDB], [max,max-no-ndb])
4485@@ -149,9 +144,8 @@
4486 MYSQL_PLUGIN_DYNAMIC(innobase, [ha_innodb.la])
4487 MYSQL_PLUGIN_ACTIONS(innobase, [
4488 AC_CHECK_LIB(rt, aio_read, [innodb_system_libs="-lrt"])
4489-diff -ruN a/storage/innodb_plugin/plug.in b/storage/innodb_plugin/plug.in
4490---- a/storage/innodb_plugin/plug.in 2010-04-06 23:07:14.000000000 +0900
4491-+++ b/storage/innodb_plugin/plug.in 2010-04-28 19:12:59.000000000 +0900
4492+--- a/storage/innodb_plugin/plug.in
4493++++ b/storage/innodb_plugin/plug.in
4494 @@ -19,7 +19,7 @@
4495 MYSQL_PLUGIN_DIRECTORY(innodb_plugin, [storage/innodb_plugin])
4496 # Enable if you know what you are doing (trying to link both InnoDB and
4497@@ -161,9 +155,8 @@
4498 MYSQL_PLUGIN_DYNAMIC(innodb_plugin, [ha_innodb_plugin.la])
4499 MYSQL_PLUGIN_ACTIONS(innodb_plugin, [
4500 AC_CHECK_HEADERS(sched.h)
4501-diff -ruN a/sql/mysqld.cc b/sql/mysqld.cc
4502---- a/sql/mysqld.cc 2011-04-12 15:11:35.000000000 +0300
4503-+++ b/sql/mysqld.cc 2011-06-20 08:42:40.935826003 +0300
4504+--- a/sql/mysqld.cc
4505++++ b/sql/mysqld.cc
4506 @@ -8198,7 +8198,9 @@
4507 thd_startup_options|=OPTION_BIG_TABLES;
4508 break;
4509@@ -175,15 +168,13 @@
4510 break;
4511 case (int) OPT_ISAM_LOG:
4512 opt_myisam_log=1;
4513-diff -ruN a/mysql-test/t/innodb_ignore_builtin-master.opt b/mysql-test/t/innodb_ignore_builtin-master.opt
4514---- a/mysql-test/t/innodb_ignore_builtin-master.opt 2011-04-12 15:37:47.000000000 +0300
4515-+++ b/mysql-test/t/innodb_ignore_builtin-master.opt 2011-06-20 08:34:43.585825995 +0300
4516+--- a/mysql-test/t/innodb_ignore_builtin-master.opt
4517++++ b/mysql-test/t/innodb_ignore_builtin-master.opt
4518 @@ -1 +1 @@
4519 ---ignore_builtin_innodb
4520 +
4521-diff -ruN a/mysql-test/t/innodb_ignore_builtin.test b/mysql-test/t/innodb_ignore_builtin.test
4522---- a/mysql-test/t/innodb_ignore_builtin.test 2011-04-12 15:37:47.000000000 +0300
4523-+++ b/mysql-test/t/innodb_ignore_builtin.test 2011-06-20 08:34:03.025825995 +0300
4524+--- a/mysql-test/t/innodb_ignore_builtin.test
4525++++ b/mysql-test/t/innodb_ignore_builtin.test
4526 @@ -1,3 +1,7 @@
4527 +# For Percona Server this test is made a no-op, because ignore-builtin-innodb
4528 +# is checked at the server startup time and the server aborts with an error
4529@@ -192,9 +183,8 @@
4530 #
4531 # Bug #42610: Dynamic plugin broken in 5.1.31
4532 #
4533-diff -ruN a/mysql-test/r/innodb_ignore_builtin.result b/mysql-test/r/innodb_ignore_builtin.result
4534---- a/mysql-test/r/innodb_ignore_builtin.result 2011-04-12 15:38:18.000000000 +0300
4535-+++ b/mysql-test/r/innodb_ignore_builtin.result 2011-06-20 08:40:10.545826001 +0300
4536+--- a/mysql-test/r/innodb_ignore_builtin.result
4537++++ b/mysql-test/r/innodb_ignore_builtin.result
4538 @@ -1,9 +1,11 @@
4539 show variables like 'ignore_builtin_innodb';
4540 Variable_name Value
4541
4542=== modified file 'patches/innodb_thread_concurrency_timer_based.patch'
4543--- patches/innodb_thread_concurrency_timer_based.patch 2011-06-23 02:18:22 +0000
4544+++ patches/innodb_thread_concurrency_timer_based.patch 2011-07-27 11:11:52 +0000
4545@@ -5,9 +5,8 @@
4546 #!!! notice !!!
4547 # Any small change to this file in the main branch
4548 # should be done or reviewed by the maintainer!
4549-diff -ruN a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc
4550---- a/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-29 16:43:16.000000000 +0900
4551-+++ b/storage/innodb_plugin/handler/ha_innodb.cc 2010-04-29 16:43:53.000000000 +0900
4552+--- a/storage/innodb_plugin/handler/ha_innodb.cc
4553++++ b/storage/innodb_plugin/handler/ha_innodb.cc
4554 @@ -151,6 +151,7 @@
4555 static ulong innobase_read_io_threads;
4556 static ulong innobase_write_io_threads;
4557@@ -47,9 +46,8 @@
4558 MYSQL_SYSVAR(thread_sleep_delay),
4559 MYSQL_SYSVAR(autoinc_lock_mode),
4560 MYSQL_SYSVAR(show_verbose_locks),
4561-diff -ruN a/storage/innodb_plugin/handler/innodb_patch_info.h b/storage/innodb_plugin/handler/innodb_patch_info.h
4562---- a/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-29 16:43:16.000000000 +0900
4563-+++ b/storage/innodb_plugin/handler/innodb_patch_info.h 2010-04-29 16:43:53.000000000 +0900
4564+--- a/storage/innodb_plugin/handler/innodb_patch_info.h
4565++++ b/storage/innodb_plugin/handler/innodb_patch_info.h
4566 @@ -31,5 +31,6 @@
4567 {"innodb_expand_undo_slots","expandable maximum number of undo slots","from 1024 (default) to about 4000","http://www.percona.com/docs/wiki/percona-xtradb"},
4568 {"innodb_extra_rseg","allow to create extra rollback segments","When create new db, the new parameter allows to create more rollback segments","http://www.percona.com/docs/wiki/percona-xtradb"},
4569@@ -57,9 +55,8 @@
4570 +{"innodb_thread_concurrency_timer_based","use InnoDB timer based concurrency throttling (backport from MySQL 5.4.0)","",""},
4571 {NULL, NULL, NULL, NULL}
4572 };
4573-diff -ruN a/storage/innodb_plugin/include/srv0srv.h b/storage/innodb_plugin/include/srv0srv.h
4574---- a/storage/innodb_plugin/include/srv0srv.h 2010-04-29 16:39:34.000000000 +0900
4575-+++ b/storage/innodb_plugin/include/srv0srv.h 2010-04-29 16:43:53.000000000 +0900
4576+--- a/storage/innodb_plugin/include/srv0srv.h
4577++++ b/storage/innodb_plugin/include/srv0srv.h
4578 @@ -147,6 +147,8 @@
4579 extern ulint srv_mem_pool_size;
4580 extern ulint srv_lock_table_size;
4581@@ -69,9 +66,8 @@
4582 extern ulint srv_n_file_io_threads;
4583 extern ulong srv_read_ahead_threshold;
4584 extern ulint srv_n_read_io_threads;
4585-diff -ruN a/storage/innodb_plugin/srv/srv0srv.c b/storage/innodb_plugin/srv/srv0srv.c
4586---- a/storage/innodb_plugin/srv/srv0srv.c 2010-04-29 16:39:34.000000000 +0900
4587-+++ b/storage/innodb_plugin/srv/srv0srv.c 2010-04-29 16:43:53.000000000 +0900
4588+--- a/storage/innodb_plugin/srv/srv0srv.c
4589++++ b/storage/innodb_plugin/srv/srv0srv.c
4590 @@ -318,6 +318,7 @@
4591 computer. Bigger computers need bigger values. Value 0 will disable the
4592 concurrency check. */
4593
4594=== modified file 'patches/log_connection_error.patch'
4595--- patches/log_connection_error.patch 2011-06-23 02:18:22 +0000
4596+++ patches/log_connection_error.patch 2011-07-27 11:11:52 +0000
4597@@ -5,9 +5,8 @@
4598 #!!! notice !!!
4599 # Any small change to this file in the main branch
4600 # should be done or reviewed by the maintainer!
4601-diff -ruN a/mysql-test/r/connect.result b/mysql-test/r/connect.result
4602---- a/mysql-test/r/connect.result 2010-07-28 16:47:46.895318726 +0400
4603-+++ b/mysql-test/r/connect.result 2010-07-28 16:47:48.234134231 +0400
4604+--- a/mysql-test/r/connect.result
4605++++ b/mysql-test/r/connect.result
4606 @@ -1,3 +1,4 @@
4607 +set global log_warnings=0;
4608 drop table if exists t1,t2;
4609@@ -18,9 +17,8 @@
4610 # -- End of 5.1 tests
4611 # ------------------------------------------------------------------
4612 +set global log_warnings=1;
4613-diff -ruN a/mysql-test/t/connect.test b/mysql-test/t/connect.test
4614---- a/mysql-test/t/connect.test 2010-07-28 16:47:46.865318816 +0400
4615-+++ b/mysql-test/t/connect.test 2010-07-28 16:47:48.057260581 +0400
4616+--- a/mysql-test/t/connect.test
4617++++ b/mysql-test/t/connect.test
4618 @@ -1,3 +1,5 @@
4619 +set global log_warnings=0;
4620 +
4621@@ -32,9 +30,8 @@
4622 --source include/wait_until_count_sessions.inc
4623
4624 +set global log_warnings=1;
4625-diff -ruN a/patch_info/log_connection_error.patch b/patch_info/log_connection_error.patch
4626---- a/patch_info/log_connection_error.patch 1970-01-01 03:00:00.000000000 +0300
4627-+++ b/patch_info/log_connection_error.patch 2010-07-28 16:47:47.634070367 +0400
4628+--- /dev/null
4629++++ b/patch_info/log_connection_error.patch
4630 @@ -0,0 +1,6 @@
4631 +File=log_connection_error.patch
4632 +Name=logging abandoned connections
4633@@ -42,9 +39,8 @@
4634 +Author=Percona <info@percona.com>
4635 +License=GPL
4636 +Comment=
4637-diff -ruN a/sql/mysqld.cc b/sql/mysqld.cc
4638---- a/sql/mysqld.cc 2010-07-28 16:47:47.105319218 +0400
4639-+++ b/sql/mysqld.cc 2010-07-28 16:47:47.644101813 +0400
4640+--- a/sql/mysqld.cc
4641++++ b/sql/mysqld.cc
4642 @@ -5070,6 +5070,10 @@
4643
4644 DBUG_PRINT("error",("Too many connections"));
4645
4646=== modified file 'patches/microsec_process.patch'
4647--- patches/microsec_process.patch 2011-06-23 02:18:22 +0000
4648+++ patches/microsec_process.patch 2011-07-27 11:11:52 +0000
4649@@ -5,9 +5,8 @@
4650 #!!! notice !!!
4651 # Any small change to this file in the main branch
4652 # should be done or reviewed by the maintainer!
4653-diff -ruN a/patch_info/microsec_process.info b/patch_info/microsec_process.info
4654---- /dev/null 1970-01-01 09:00:00.000000000 +0900
4655-+++ b/patch_info/microsec_process.info 2010-08-27 14:45:52.941058849 +0900
4656+--- /dev/null
4657++++ b/patch_info/microsec_process.info
4658 @@ -0,0 +1,8 @@
4659 +File=microsec_process.patch
4660 +Name=Adds INFOMATION_SCHEMA.PROCESSLIST with TIME_MS column
4661@@ -17,9 +16,8 @@
4662 +Comment=
4663 +2010-01
4664 +Ported to 5.1.42
4665-diff -ruN a/sql/sql_show.cc b/sql/sql_show.cc
4666---- a/sql/sql_show.cc 2010-08-27 14:38:08.781057666 +0900
4667-+++ b/sql/sql_show.cc 2010-08-27 14:45:52.946058726 +0900
4668+--- a/sql/sql_show.cc
4669++++ b/sql/sql_show.cc
4670 @@ -1913,7 +1913,8 @@
4671 TABLE *table= tables->table;
4672 CHARSET_INFO *cs= system_charset_info;
4673
4674=== modified file 'patches/mysql-syslog.patch'
4675--- patches/mysql-syslog.patch 2011-06-23 02:18:22 +0000
4676+++ patches/mysql-syslog.patch 2011-07-27 11:11:52 +0000
4677@@ -5,9 +5,8 @@
4678 #!!! notice !!!
4679 # Any small change to this file in the main branch
4680 # should be done or reviewed by the maintainer!
4681-diff -ruN a/client/client_priv.h b/client/client_priv.h
4682---- a/client/client_priv.h 2011-01-07 18:46:05.000000000 +0300
4683-+++ b/client/client_priv.h 2011-01-07 18:53:03.000000000 +0300
4684+--- a/client/client_priv.h
4685++++ b/client/client_priv.h
4686 @@ -91,6 +91,9 @@
4687 OPT_FIX_TABLE_NAMES, OPT_FIX_DB_NAMES, OPT_SSL_VERIFY_SERVER_CERT,
4688 OPT_DEBUG_INFO, OPT_DEBUG_CHECK, OPT_COLUMN_TYPES, OPT_ERROR_LOG_FILE,
4689@@ -18,9 +17,8 @@
4690 OPT_FIRST_SLAVE,
4691 OPT_ALL,
4692 OPT_MAX_CLIENT_OPTION
4693-diff -ruN a/client/mysql.cc b/client/mysql.cc
4694---- a/client/mysql.cc 2010-11-29 13:37:59.000000000 +0300
4695-+++ b/client/mysql.cc 2011-01-07 18:57:05.000000000 +0300
4696+--- a/client/mysql.cc
4697++++ b/client/mysql.cc
4698 @@ -43,6 +43,9 @@
4699 #include "my_readline.h"
4700 #include <signal.h>
4701
4702=== modified file 'patches/mysql-test.diff'
4703--- patches/mysql-test.diff 2011-07-22 05:41:42 +0000
4704+++ patches/mysql-test.diff 2011-07-27 11:11:52 +0000
4705@@ -1,6 +1,5 @@
4706-diff -ruN a/mysql-test/include/index_merge2.inc b/mysql-test/include/index_merge2.inc
4707---- a/mysql-test/include/index_merge2.inc 2011-04-12 16:38:39.000000000 +0400
4708-+++ b/mysql-test/include/index_merge2.inc 2011-06-30 22:22:08.000000000 +0400
4709+--- a/mysql-test/include/index_merge2.inc
4710++++ b/mysql-test/include/index_merge2.inc
4711 @@ -122,12 +122,14 @@
4712 analyze table t1;
4713 select count(*) from t1;
4714@@ -16,9 +15,8 @@
4715 explain select count(*) from t1 where
4716 key1a = 2 and key1b is null and key3a = 2 and key3b is null;
4717
4718-diff -ruN a/mysql-test/r/create.result b/mysql-test/r/create.result
4719---- a/mysql-test/r/create.result 2011-04-12 16:38:08.000000000 +0400
4720-+++ b/mysql-test/r/create.result 2011-06-30 22:22:08.000000000 +0400
4721+--- a/mysql-test/r/create.result
4722++++ b/mysql-test/r/create.result
4723 @@ -1743,7 +1743,8 @@
4724 `COMMAND` varchar(16) NOT NULL DEFAULT '',
4725 `TIME` int(7) NOT NULL DEFAULT '0',
4726@@ -39,9 +37,8 @@
4727 ) ENGINE=MyISAM DEFAULT CHARSET=utf8
4728 drop table t1;
4729 create table t1 like information_schema.character_sets;
4730-diff -ruN a/mysql-test/r/index_merge_innodb.result b/mysql-test/r/index_merge_innodb.result
4731---- a/mysql-test/r/index_merge_innodb.result 2011-04-12 16:38:17.000000000 +0400
4732-+++ b/mysql-test/r/index_merge_innodb.result 2011-06-30 22:22:08.000000000 +0400
4733+--- a/mysql-test/r/index_merge_innodb.result
4734++++ b/mysql-test/r/index_merge_innodb.result
4735 @@ -111,7 +111,7 @@
4736 explain select count(*) from t1 where
4737 key1a = 2 and key1b is null and key2a = 2 and key2b is null;
4738@@ -60,9 +57,8 @@
4739 select count(*) from t1 where
4740 key1a = 2 and key1b is null and key3a = 2 and key3b is null;
4741 count(*)
4742-diff -ruN a/mysql-test/r/index_merge_myisam.result b/mysql-test/r/index_merge_myisam.result
4743---- a/mysql-test/r/index_merge_myisam.result 2011-04-12 16:38:17.000000000 +0400
4744-+++ b/mysql-test/r/index_merge_myisam.result 2011-06-30 22:22:08.000000000 +0400
4745+--- a/mysql-test/r/index_merge_myisam.result
4746++++ b/mysql-test/r/index_merge_myisam.result
4747 @@ -945,7 +945,7 @@
4748 explain select count(*) from t1 where
4749 key1a = 2 and key1b is null and key2a = 2 and key2b is null;
4750@@ -81,9 +77,8 @@
4751 select count(*) from t1 where
4752 key1a = 2 and key1b is null and key3a = 2 and key3b is null;
4753 count(*)
4754-diff -ruN a/mysql-test/r/information_schema.result b/mysql-test/r/information_schema.result
4755---- a/mysql-test/r/information_schema.result 2011-04-12 16:38:17.000000000 +0400
4756-+++ b/mysql-test/r/information_schema.result 2011-06-30 22:22:08.000000000 +0400
4757+--- a/mysql-test/r/information_schema.result
4758++++ b/mysql-test/r/information_schema.result
4759 @@ -44,14 +44,17 @@
4760 select * from v1;
4761 c
4762@@ -440,9 +435,8 @@
4763 create table t1(f1 int);
4764 create view v1 as select f1+1 as a from t1;
4765 create table t2 (f1 int, f2 int);
4766-diff -ruN a/mysql-test/r/information_schema_db.result b/mysql-test/r/information_schema_db.result
4767---- a/mysql-test/r/information_schema_db.result 2011-04-12 16:38:17.000000000 +0400
4768-+++ b/mysql-test/r/information_schema_db.result 2011-06-30 22:22:08.000000000 +0400
4769+--- a/mysql-test/r/information_schema_db.result
4770++++ b/mysql-test/r/information_schema_db.result
4771 @@ -6,14 +6,17 @@
4772 show tables;
4773 Tables_in_information_schema
4774@@ -509,9 +503,8 @@
4775 TRIGGERS
4776 create database `inf%`;
4777 create database mbase;
4778-diff -ruN a/mysql-test/r/mysqlshow.result b/mysql-test/r/mysqlshow.result
4779---- a/mysql-test/r/mysqlshow.result 2011-04-12 16:38:22.000000000 +0400
4780-+++ b/mysql-test/r/mysqlshow.result 2011-06-30 22:22:08.000000000 +0400
4781+--- a/mysql-test/r/mysqlshow.result
4782++++ b/mysql-test/r/mysqlshow.result
4783 @@ -80,14 +80,17 @@
4784 | Tables |
4785 +---------------------------------------+
4786@@ -627,9 +620,8 @@
4787 +---------------------------------------+
4788 Wildcard: inf_rmation_schema
4789 +--------------------+
4790-diff -ruN a/mysql-test/r/profiling.result b/mysql-test/r/profiling.result
4791---- a/mysql-test/r/profiling.result 2011-04-12 16:38:26.000000000 +0400
4792-+++ b/mysql-test/r/profiling.result 2011-06-30 22:22:08.000000000 +0400
4793+--- a/mysql-test/r/profiling.result
4794++++ b/mysql-test/r/profiling.result
4795 @@ -6,6 +6,8 @@
4796 Variable_name Value
4797 profiling OFF
4798@@ -656,9 +648,8 @@
4799 select @@profiling;
4800 @@profiling
4801 1
4802-diff -ruN a/mysql-test/r/select.result b/mysql-test/r/select.result
4803---- a/mysql-test/r/select.result 2011-04-12 16:38:27.000000000 +0400
4804-+++ b/mysql-test/r/select.result 2011-06-30 22:22:08.000000000 +0400
4805+--- a/mysql-test/r/select.result
4806++++ b/mysql-test/r/select.result
4807 @@ -2196,10 +2196,10 @@
4808 select * from (t1 as t2 left join t1 as t3 using (a)) inner join t1 on t1.a>1;
4809 a a
4810@@ -672,9 +663,8 @@
4811 3 3
4812 select * from t1 inner join (t1 as t2 left join t1 as t3 using (a)) on t1.a>1;
4813 a a
4814-diff -ruN a/mysql-test/suite/innodb/r/innodb.result b/mysql-test/suite/innodb/r/innodb.result
4815---- a/mysql-test/suite/innodb/r/innodb.result 2011-04-12 16:40:57.000000000 +0400
4816-+++ b/mysql-test/suite/innodb/r/innodb.result 2011-06-30 22:22:08.000000000 +0400
4817+--- a/mysql-test/suite/innodb/r/innodb.result
4818++++ b/mysql-test/suite/innodb/r/innodb.result
4819 @@ -691,14 +691,16 @@
4820 select count(*) from t1 where sca_pic is null;
4821 count(*)
4822@@ -764,9 +754,8 @@
4823 show create table t1;
4824 Table Create Table
4825 t1 CREATE TABLE `t1` (
4826-diff -ruN a/mysql-test/suite/innodb/r/innodb_bug44369.result b/mysql-test/suite/innodb/r/innodb_bug44369.result
4827---- a/mysql-test/suite/innodb/r/innodb_bug44369.result 2011-04-12 16:40:58.000000000 +0400
4828-+++ b/mysql-test/suite/innodb/r/innodb_bug44369.result 2011-06-30 22:22:08.000000000 +0400
4829+--- a/mysql-test/suite/innodb/r/innodb_bug44369.result
4830++++ b/mysql-test/suite/innodb/r/innodb_bug44369.result
4831 @@ -1,14 +1,14 @@
4832 create table bug44369 (DB_ROW_ID int) engine=innodb;
4833 -ERROR HY000: Can't create table 'test.bug44369' (errno: -1)
4834@@ -787,9 +776,8 @@
4835 -Warning 1005 Error creating table 'test/bug44369' with column name 'db_TRX_Id'. 'db_TRX_Id' is a reserved name. Please try to re-create the table with a different column name.
4836 +Error 1166 Incorrect column name 'db_TRX_Id'
4837 Error 1005 Can't create table 'test.bug44369' (errno: -1)
4838-diff -ruN a/mysql-test/suite/innodb/r/innodb_bug46000.result b/mysql-test/suite/innodb/r/innodb_bug46000.result
4839---- a/mysql-test/suite/innodb/r/innodb_bug46000.result 2011-04-12 16:40:58.000000000 +0400
4840-+++ b/mysql-test/suite/innodb/r/innodb_bug46000.result 2011-06-30 22:22:08.000000000 +0400
4841+--- a/mysql-test/suite/innodb/r/innodb_bug46000.result
4842++++ b/mysql-test/suite/innodb/r/innodb_bug46000.result
4843 @@ -1,17 +1,19 @@
4844 create table bug46000(`id` int,key `GEN_CLUST_INDEX`(`id`))engine=innodb;
4845 -ERROR HY000: Can't create table 'test.bug46000' (errno: -1)
4846@@ -816,9 +804,8 @@
4847 +Error 1030 Got error -1 from storage engine
4848 create index idx on bug46000(id);
4849 drop table bug46000;
4850-diff -ruN a/mysql-test/suite/innodb/r/innodb_misc1.result b/mysql-test/suite/innodb/r/innodb_misc1.result
4851---- a/mysql-test/suite/innodb/r/innodb_misc1.result 2011-04-12 16:40:59.000000000 +0400
4852-+++ b/mysql-test/suite/innodb/r/innodb_misc1.result 2011-06-30 22:22:08.000000000 +0400
4853+--- a/mysql-test/suite/innodb/r/innodb_misc1.result
4854++++ b/mysql-test/suite/innodb/r/innodb_misc1.result
4855 @@ -659,7 +659,7 @@
4856 commit;
4857 drop table t1, t2, t3, t5, t6, t8, t9;
4858@@ -836,9 +823,8 @@
4859 CREATE TABLE t1 (
4860 c01 CHAR(255), c02 CHAR(255), c03 CHAR(255), c04 CHAR(255),
4861 c05 CHAR(255), c06 CHAR(255), c07 CHAR(255), c08 CHAR(255),
4862-diff -ruN a/mysql-test/suite/innodb/t/innodb-autoinc-44030.test b/mysql-test/suite/innodb/t/innodb-autoinc-44030.test
4863---- a/mysql-test/suite/innodb/t/innodb-autoinc-44030.test 2011-04-12 16:40:54.000000000 +0400
4864-+++ b/mysql-test/suite/innodb/t/innodb-autoinc-44030.test 2011-06-30 22:22:08.000000000 +0400
4865+--- a/mysql-test/suite/innodb/t/innodb-autoinc-44030.test
4866++++ b/mysql-test/suite/innodb/t/innodb-autoinc-44030.test
4867 @@ -6,6 +6,8 @@
4868 drop table if exists t1;
4869 --enable_warnings
4870@@ -855,9 +841,8 @@
4871 +
4872 +-- disable_query_log
4873 +eval SET GLOBAL innodb_file_format_check=$innodb_file_format_check_orig;
4874-diff -ruN a/mysql-test/suite/innodb/t/innodb-autoinc.test b/mysql-test/suite/innodb/t/innodb-autoinc.test
4875---- a/mysql-test/suite/innodb/t/innodb-autoinc.test 2011-04-12 16:40:54.000000000 +0400
4876-+++ b/mysql-test/suite/innodb/t/innodb-autoinc.test 2011-06-30 22:22:08.000000000 +0400
4877+--- a/mysql-test/suite/innodb/t/innodb-autoinc.test
4878++++ b/mysql-test/suite/innodb/t/innodb-autoinc.test
4879 @@ -6,6 +6,8 @@
4880 drop table if exists t1;
4881 --enable_warnings
4882@@ -874,9 +859,8 @@
4883 +
4884 +-- disable_query_log
4885 +eval SET GLOBAL innodb_file_format_check=$innodb_file_format_check_orig;
4886-diff -ruN a/mysql-test/suite/innodb/t/innodb.test b/mysql-test/suite/innodb/t/innodb.test
4887---- a/mysql-test/suite/innodb/t/innodb.test 2011-04-12 16:40:54.000000000 +0400
4888-+++ b/mysql-test/suite/innodb/t/innodb.test 2011-06-30 22:22:08.000000000 +0400
4889+--- a/mysql-test/suite/innodb/t/innodb.test
4890++++ b/mysql-test/suite/innodb/t/innodb.test
4891 @@ -427,11 +427,13 @@
4892 select count(*) from t1 where sca_code = 'PD';
4893 select count(*) from t1 where sca_code <= 'PD';
4894@@ -926,9 +910,8 @@
4895
4896 # Test for innodb_thread_concurrency variable
4897 SET @old_innodb_thread_concurrency= @@global.innodb_thread_concurrency;
4898-diff -ruN a/mysql-test/suite/innodb/t/innodb_bug44369.test b/mysql-test/suite/innodb/t/innodb_bug44369.test
4899---- a/mysql-test/suite/innodb/t/innodb_bug44369.test 2011-04-12 16:40:55.000000000 +0400
4900-+++ b/mysql-test/suite/innodb/t/innodb_bug44369.test 2011-06-30 22:22:08.000000000 +0400
4901+--- a/mysql-test/suite/innodb/t/innodb_bug44369.test
4902++++ b/mysql-test/suite/innodb/t/innodb_bug44369.test
4903 @@ -6,16 +6,16 @@
4904 --source include/have_innodb.inc
4905
4906@@ -949,9 +932,8 @@
4907 create table bug44369 (db_TRX_Id int) engine=innodb;
4908
4909 show warnings;
4910-diff -ruN a/mysql-test/suite/innodb/t/innodb_bug46000.test b/mysql-test/suite/innodb/t/innodb_bug46000.test
4911---- a/mysql-test/suite/innodb/t/innodb_bug46000.test 2011-04-12 16:40:55.000000000 +0400
4912-+++ b/mysql-test/suite/innodb/t/innodb_bug46000.test 2011-06-30 22:22:08.000000000 +0400
4913+--- a/mysql-test/suite/innodb/t/innodb_bug46000.test
4914++++ b/mysql-test/suite/innodb/t/innodb_bug46000.test
4915 @@ -7,11 +7,11 @@
4916
4917 # This 'create table' operation should fail because of
4918@@ -975,9 +957,8 @@
4919 create index GEN_CLUST_INDEX on bug46000(id);
4920
4921 --replace_regex /'[^']*test.#sql-[0-9a-f_]*'/'#sql-temporary'/
4922-diff -ruN a/mysql-test/suite/innodb/t/innodb_misc1.test b/mysql-test/suite/innodb/t/innodb_misc1.test
4923---- a/mysql-test/suite/innodb/t/innodb_misc1.test 2011-04-12 16:40:56.000000000 +0400
4924-+++ b/mysql-test/suite/innodb/t/innodb_misc1.test 2011-06-30 22:22:08.000000000 +0400
4925+--- a/mysql-test/suite/innodb/t/innodb_misc1.test
4926++++ b/mysql-test/suite/innodb/t/innodb_misc1.test
4927 @@ -904,7 +904,7 @@
4928 drop table t1, t2, t3, t5, t6, t8, t9;
4929
4930@@ -996,9 +977,8 @@
4931 --error 1118
4932 CREATE TABLE t1 (
4933 c01 CHAR(255), c02 CHAR(255), c03 CHAR(255), c04 CHAR(255),
4934-diff -ruN a/mysql-test/r/query_cache.result b/mysql-test/r/query_cache.result
4935---- a/mysql-test/r/query_cache.result 2011-04-12 16:38:26.000000000 +0400
4936-+++ b/mysql-test/r/query_cache.result 2011-06-30 22:22:08.000000000 +0400
4937+--- a/mysql-test/r/query_cache.result
4938++++ b/mysql-test/r/query_cache.result
4939 @@ -1708,20 +1708,3 @@
4940 DROP TABLE t1;
4941 SET GLOBAL query_cache_size= default;
4942@@ -1020,9 +1000,8 @@
4943 -DROP TABLE t1;
4944 -SET GLOBAL query_cache_size= default;
4945 -End of 5.1 tests
4946-diff -ruN a/mysql-test/t/query_cache.test b/mysql-test/t/query_cache.test
4947---- a/mysql-test/t/query_cache.test 2011-04-12 16:37:57.000000000 +0400
4948-+++ b/mysql-test/t/query_cache.test 2011-06-30 22:22:08.000000000 +0400
4949+--- a/mysql-test/t/query_cache.test
4950++++ b/mysql-test/t/query_cache.test
4951 @@ -1289,23 +1289,3 @@
4952 SET GLOBAL query_cache_size= default;
4953
4954@@ -1047,9 +1026,8 @@
4955 -
4956 ---echo End of 5.1 tests
4957 -
4958-diff -ruN a/mysql-test/suite/funcs_1/r/is_columns_is.result b/mysql-test/suite/funcs_1/r/is_columns_is.result
4959---- a/mysql-test/suite/funcs_1/r/is_columns_is.result 2011-04-12 16:39:10.000000000 +0400
4960-+++ b/mysql-test/suite/funcs_1/r/is_columns_is.result 2011-06-30 22:22:08.000000000 +0400
4961+--- a/mysql-test/suite/funcs_1/r/is_columns_is.result
4962++++ b/mysql-test/suite/funcs_1/r/is_columns_is.result
4963 @@ -7,6 +7,27 @@
4964 NULL information_schema CHARACTER_SETS DEFAULT_COLLATE_NAME 2 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select
4965 NULL information_schema CHARACTER_SETS DESCRIPTION 3 NO varchar 60 180 NULL NULL utf8 utf8_general_ci varchar(60) select
4966@@ -1560,9 +1538,8 @@
4967 +3.0000 information_schema XTRADB_ENHANCEMENTS description varchar 255 765 utf8 utf8_general_ci varchar(255)
4968 +3.0000 information_schema XTRADB_ENHANCEMENTS comment varchar 100 300 utf8 utf8_general_ci varchar(100)
4969 +3.0000 information_schema XTRADB_ENHANCEMENTS link varchar 255 765 utf8 utf8_general_ci varchar(255)
4970-diff -ruN a/mysql-test/suite/funcs_1/r/is_engines_innodb.result b/mysql-test/suite/funcs_1/r/is_engines_innodb.result
4971---- a/mysql-test/suite/funcs_1/r/is_engines_innodb.result 2011-04-12 16:39:11.000000000 +0400
4972-+++ b/mysql-test/suite/funcs_1/r/is_engines_innodb.result 2011-06-30 22:22:08.000000000 +0400
4973+--- a/mysql-test/suite/funcs_1/r/is_engines_innodb.result
4974++++ b/mysql-test/suite/funcs_1/r/is_engines_innodb.result
4975 @@ -2,7 +2,7 @@
4976 WHERE ENGINE = 'InnoDB';
4977 ENGINE InnoDB
4978@@ -1572,9 +1549,8 @@
4979 TRANSACTIONS YES
4980 XA YES
4981 SAVEPOINTS YES
4982-diff -ruN a/mysql-test/suite/funcs_1/r/is_tables_is.result b/mysql-test/suite/funcs_1/r/is_tables_is.result
4983---- a/mysql-test/suite/funcs_1/r/is_tables_is.result 2011-04-12 16:39:12.000000000 +0400
4984-+++ b/mysql-test/suite/funcs_1/r/is_tables_is.result 2011-06-30 22:22:08.000000000 +0400
4985+--- a/mysql-test/suite/funcs_1/r/is_tables_is.result
4986++++ b/mysql-test/suite/funcs_1/r/is_tables_is.result
4987 @@ -38,6 +38,29 @@
4988 Separator -----------------------------------------------------
4989 TABLE_CATALOG NULL
4990@@ -3300,9 +3276,8 @@
4991 # Switch to connection default and close connection testuser1
4992 DROP USER testuser1@localhost;
4993 DROP DATABASE test1;
4994-diff -ruN a/mysql-test/suite/funcs_1/datadict/processlist_priv.inc b/mysql-test/suite/funcs_1/datadict/processlist_priv.inc
4995---- a/mysql-test/suite/funcs_1/datadict/processlist_priv.inc 2011-04-12 16:39:25.000000000 +0400
4996-+++ b/mysql-test/suite/funcs_1/datadict/processlist_priv.inc 2011-06-30 22:22:08.000000000 +0400
4997+--- a/mysql-test/suite/funcs_1/datadict/processlist_priv.inc
4998++++ b/mysql-test/suite/funcs_1/datadict/processlist_priv.inc
4999 @@ -66,7 +66,7 @@
5000 let $table= processlist;
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches

to all changes: