~stewart/percona-server/5.5.13-merge

« back to all changes in this revision

Viewing changes to innodb_recovery_patches.patch

  • Committer: kinoyasu
  • Date: 2011-06-10 10:07:06 UTC
  • Revision ID: kinoyasu@gauntlet4-20110610100706-prntfzuugj9v29xq
port Yasufumi patches to 5.5.13

Show diffs side-by-side

added added

removed removed

Lines of Context:
117
117
 static my_bool innobase_locks_unsafe_for_binlog        = FALSE;
118
118
 static my_bool innobase_overwrite_relay_log_info       = FALSE;
119
119
 static my_bool innobase_rollback_on_timeout            = FALSE;
120
 
@@ -2562,6 +2563,8 @@
 
120
@@ -2576,6 +2577,8 @@
121
121
 
122
122
        srv_force_recovery = (ulint) innobase_force_recovery;
123
123
 
126
126
        srv_use_doublewrite_buf = (ibool) innobase_use_doublewrite;
127
127
        srv_use_checksums = (ibool) innobase_use_checksums;
128
128
 
129
 
@@ -11267,6 +11270,11 @@
 
129
@@ -11274,6 +11277,11 @@
130
130
   "The common part for InnoDB table spaces.",
131
131
   NULL, NULL, NULL);
132
132
 
138
138
 static MYSQL_SYSVAR_BOOL(recovery_update_relay_log, innobase_overwrite_relay_log_info,
139
139
   PLUGIN_VAR_NOCMDARG | PLUGIN_VAR_READONLY,
140
140
   "During InnoDB crash recovery on slave overwrite relay-log.info "
141
 
@@ -11740,6 +11748,7 @@
 
141
@@ -11747,6 +11755,7 @@
142
142
   MYSQL_SYSVAR(data_file_path),
143
143
   MYSQL_SYSVAR(data_home_dir),
144
144
   MYSQL_SYSVAR(doublewrite),
192
192
diff -ruN a/storage/innobase/include/srv0srv.h b/storage/innobase/include/srv0srv.h
193
193
--- a/storage/innobase/include/srv0srv.h        2010-12-03 17:30:16.321953515 +0900
194
194
+++ b/storage/innobase/include/srv0srv.h        2010-12-03 17:30:41.593985184 +0900
195
 
@@ -129,6 +129,8 @@
 
195
@@ -126,6 +126,8 @@
196
196
 extern ulint*  srv_data_file_sizes;
197
197
 extern ulint*  srv_data_file_is_raw_partition;
198
198
 
441
441
 #ifndef UNIV_HOTBACKUP
442
442
 # include "os0sync.h"
443
443
 # include "os0thread.h"
444
 
@@ -4262,6 +4263,18 @@
445
 
                os_thread_exit(NULL);
 
444
@@ -4260,6 +4261,18 @@
 
445
                                           INFINITE);
446
446
        }
447
447
 
448
448
+       if (srv_recovery_stats && recv_recovery_is_on() && n_consecutive) {
459
459
+
460
460
        os_mutex_enter(array->mutex);
461
461
 
462
 
        slot = os_aio_array_get_nth_slot(array, i + segment * n);
 
462
        if (srv_shutdown_state == SRV_SHUTDOWN_EXIT_THREADS
463
463
diff -ruN a/storage/innobase/srv/srv0srv.c b/storage/innobase/srv/srv0srv.c
464
464
--- a/storage/innobase/srv/srv0srv.c    2010-12-03 17:30:16.339955597 +0900
465
465
+++ b/storage/innobase/srv/srv0srv.c    2010-12-03 17:30:41.604958138 +0900
466
 
@@ -166,6 +166,8 @@
 
466
@@ -160,6 +160,8 @@
467
467
 /* size in database pages */
468
468
 UNIV_INTERN ulint*     srv_data_file_sizes = NULL;
469
469
 
475
475
diff -ruN a/storage/innobase/trx/trx0sys.c b/storage/innobase/trx/trx0sys.c
476
476
--- a/storage/innobase/trx/trx0sys.c    2010-12-03 15:41:52.051986524 +0900
477
477
+++ b/storage/innobase/trx/trx0sys.c    2010-12-03 17:30:41.607026818 +0900
478
 
@@ -566,6 +566,12 @@
 
478
@@ -567,6 +567,12 @@
479
479
                               zip_size ? zip_size : UNIV_PAGE_SIZE,
480
480
                               read_buf, NULL);
481
481
 
488
488
                        /* Check if the page is corrupt */
489
489
 
490
490
                        if (UNIV_UNLIKELY
491
 
@@ -613,6 +619,13 @@
 
491
@@ -614,6 +620,13 @@
492
492
                                       zip_size, page_no, 0,
493
493
                                       zip_size ? zip_size : UNIV_PAGE_SIZE,
494
494
                                       page, NULL);