mirror of
https://github.com/MariaDB/server.git
synced 2026-05-16 03:47:17 +02:00
merge with 3.23.44
BitKeeper/etc/ignore: auto-union BitKeeper/etc/logging_ok: auto-union Docs/manual.texi: Auto merged include/my_base.h: Auto merged mysql-test/t/func_time.test: Auto merged mysql-test/t/join.test: Auto merged mysql-test/t/rpl000012.test: Auto merged BUILD/FINISH.sh: Auto merged BitKeeper/deleted/.del-db_ext.h~a1e210bbd0de0a48: Auto merged BitKeeper/deleted/.del-mutex_ext.h~f20f47ddc346598b: Auto merged BitKeeper/deleted/.del-violite.c~984c09cffe14a11b: Auto merged BitKeeper/deleted/.del-violite.c~d7b85be615595ace: Auto merged Build-tools/Do-all-build-steps: Auto merged client/client_priv.h: Auto merged client/mysqladmin.c: Auto merged innobase/include/srv0srv.h: Auto merged innobase/include/univ.i: Auto merged innobase/log/log0log.c: Auto merged innobase/srv/srv0srv.c: Auto merged innobase/srv/srv0start.c: Auto merged isam/pack_isam.c: Auto merged libmysql_r/Makefile.am: Auto merged myisam/myisamchk.c: Auto merged mysql-test/t/having.test: Auto merged mysql-test/t/rpl000015-slave.sh: Auto merged mysql-test/t/rpl000016-slave.sh: Auto merged mysys/mf_cache.c: Auto merged mysys/mf_casecnv.c: Auto merged mysys/mf_tempfile.c: Auto merged readline/vi_mode.c: Auto merged strings/strto.c: Auto merged sql/field.cc: Auto merged sql/field.h: Auto merged sql/ha_berkeley.cc: Auto merged sql/ha_myisammrg.cc: Auto merged sql/handler.cc: Auto merged sql/item.h: Auto merged sql/log_event.cc: Auto merged sql/sql_acl.cc: Auto merged sql/time.cc: Auto merged BUILD/SETUP.sh: Use -mcpu as default (safe for all x86 cpu's) client/mysqldump.c: Merge from 3.23.44 configure.in: Update version number extra/resolveip.c: Portability fix
This commit is contained in:
commit
0d1ba873aa
115 changed files with 3380 additions and 1382 deletions
|
|
@ -20,6 +20,7 @@ Created 12/9/1995 Heikki Tuuri
|
|||
#include "fil0fil.h"
|
||||
#include "dict0boot.h"
|
||||
#include "srv0srv.h"
|
||||
#include "srv0start.h"
|
||||
#include "trx0sys.h"
|
||||
#include "trx0trx.h"
|
||||
|
||||
|
|
@ -2656,6 +2657,8 @@ logs_empty_and_mark_files_at_shutdown(void)
|
|||
}
|
||||
/* Wait until the master thread and all other operations are idle: our
|
||||
algorithm only works if the server is idle at shutdown */
|
||||
|
||||
srv_shutdown_state = SRV_SHUTDOWN_CLEANUP;
|
||||
loop:
|
||||
os_thread_sleep(100000);
|
||||
|
||||
|
|
@ -2737,7 +2740,21 @@ loop:
|
|||
|
||||
goto loop;
|
||||
}
|
||||
|
||||
if (srv_lock_timeout_and_monitor_active) {
|
||||
|
||||
goto loop;
|
||||
}
|
||||
|
||||
/* We now suspend also the InnoDB error monitor thread */
|
||||
|
||||
srv_shutdown_state = SRV_SHUTDOWN_LAST_PHASE;
|
||||
|
||||
if (srv_error_monitor_active) {
|
||||
|
||||
goto loop;
|
||||
}
|
||||
|
||||
fil_write_flushed_lsn_to_data_files(lsn, arch_log_no);
|
||||
|
||||
fil_flush_file_spaces(FIL_TABLESPACE);
|
||||
|
|
|
|||
|
|
@ -61,7 +61,11 @@ buffer pool before the pages have been recovered to the up-to-date state */
|
|||
/* Recovery is running and no operations on the log files are allowed
|
||||
yet: the variable name is misleading */
|
||||
|
||||
ibool recv_no_ibuf_operations = FALSE;
|
||||
ibool recv_no_ibuf_operations = FALSE;
|
||||
|
||||
/* the following counter is used to decide when to print info on
|
||||
log scan */
|
||||
ulint recv_scan_print_counter = 0;
|
||||
|
||||
/************************************************************
|
||||
Creates the recovery system. */
|
||||
|
|
@ -1812,10 +1816,19 @@ recv_scan_log_recs(
|
|||
*group_scanned_lsn = scanned_lsn;
|
||||
|
||||
if (more_data) {
|
||||
fprintf(stderr,
|
||||
recv_scan_print_counter++;
|
||||
|
||||
if (recv_scan_print_counter < 10
|
||||
|| (recv_scan_print_counter % 10 == 0)) {
|
||||
fprintf(stderr,
|
||||
"InnoDB: Doing recovery: scanned up to log sequence number %lu %lu\n",
|
||||
ut_dulint_get_high(*group_scanned_lsn),
|
||||
ut_dulint_get_low(*group_scanned_lsn));
|
||||
if (recv_scan_print_counter == 10) {
|
||||
fprintf(stderr,
|
||||
"InnoDB: After this prints a line for every 10th scan sweep:\n");
|
||||
}
|
||||
}
|
||||
|
||||
/* Try to parse more log records */
|
||||
|
||||
|
|
@ -1911,6 +1924,15 @@ recv_recovery_from_checkpoint_start(
|
|||
recv_sys_init();
|
||||
}
|
||||
|
||||
if (srv_force_recovery >= SRV_FORCE_NO_LOG_REDO) {
|
||||
fprintf(stderr,
|
||||
"InnoDB: The user has set SRV_FORCE_NO_LOG_REDO on\n");
|
||||
fprintf(stderr,
|
||||
"InnoDB: Skipping log redo\n");
|
||||
|
||||
return(DB_SUCCESS);
|
||||
}
|
||||
|
||||
sync_order_checks_on = TRUE;
|
||||
|
||||
recv_recovery_on = TRUE;
|
||||
|
|
@ -2028,10 +2050,8 @@ recv_recovery_from_checkpoint_start(
|
|||
while (group) {
|
||||
old_scanned_lsn = recv_sys->scanned_lsn;
|
||||
|
||||
if (srv_force_recovery < SRV_FORCE_NO_LOG_REDO) {
|
||||
recv_group_scan_log_recs(group, &contiguous_lsn,
|
||||
recv_group_scan_log_recs(group, &contiguous_lsn,
|
||||
&group_scanned_lsn);
|
||||
}
|
||||
|
||||
group->scanned_lsn = group_scanned_lsn;
|
||||
|
||||
|
|
@ -2124,7 +2144,10 @@ recv_recovery_from_checkpoint_finish(void)
|
|||
|
||||
/* Apply the hashed log records to the respective file pages */
|
||||
|
||||
recv_apply_hashed_log_recs(TRUE);
|
||||
if (srv_force_recovery < SRV_FORCE_NO_LOG_REDO) {
|
||||
|
||||
recv_apply_hashed_log_recs(TRUE);
|
||||
}
|
||||
|
||||
if (log_debug_writes) {
|
||||
fprintf(stderr,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue