summaryrefslogtreecommitdiff
path: root/storage/maria/ma_recovery.h
diff options
context:
space:
mode:
authorunknown <guilhem@gbichot4.local>2007-10-16 14:56:38 +0200
committerunknown <guilhem@gbichot4.local>2007-10-16 14:56:38 +0200
commit08b715289369512e1f7d7f4d3abb8f9a8c718d63 (patch)
tree8b5c138f2af923b87d19833ff38d6b2b8a487f62 /storage/maria/ma_recovery.h
parent80f8c917dd0904c8cccf0c392e7ba17023dbdbcd (diff)
downloadmariadb-git-08b715289369512e1f7d7f4d3abb8f9a8c718d63.tar.gz
WL#3072 Maria recovery
- fixes (in recovery, checkpoint, log handler) of bugs found during testing. - new option --check for maria_read_log: with --only-display (which only reads the header) it reads the full record, for debugging. storage/maria/ma_loghandler.c: importing patch from Sanja for bug of translog_next_LSN() found during recovery storage/maria/ma_loghandler_lsn.h: better types (0L is 4 bytes on some platforms, it causes problems when used into lsn_store(): right shift >= width of type. storage/maria/ma_pagecache.c: work around infamous "PAGECACHE_PLAIN_PAGE used for transactional tables in specialm case"; REDO phase disables logging and this causes pages to be PAGECACHE_PLAIN_PAGE, thus ignored wrongly by the checkpoint taken at the end of the REDO phase. storage/maria/ma_recovery.c: - a #ifdef which broke maria_read_log in non-debug builds (no output!) - support for maria_read_log --check - detect record corruption before opening the table - updating is_of_horizon requires writing the state - fix for wrong parsing of checkpoint record by recovery storage/maria/ma_recovery.h: support for maria_read_log --check storage/maria/maria_read_log.c: Option --check: --only-display only looks at the header; adding --check tries a translog_read_record() to see if record can be fully read (this is to find bugs).
Diffstat (limited to 'storage/maria/ma_recovery.h')
-rw-r--r--storage/maria/ma_recovery.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/storage/maria/ma_recovery.h b/storage/maria/ma_recovery.h
index da4e8895e2f..ea39fa3e98c 100644
--- a/storage/maria/ma_recovery.h
+++ b/storage/maria/ma_recovery.h
@@ -24,8 +24,11 @@
/* Performs recovery of the engine at start */
C_MODE_START
+enum maria_apply_log_way
+{ MARIA_LOG_APPLY, MARIA_LOG_DISPLAY_HEADER, MARIA_LOG_CHECK };
int maria_recover(void);
-int maria_apply_log(LSN lsn, my_bool apply, FILE *trace_file,
+int maria_apply_log(LSN lsn, enum maria_apply_log_way apply,
+ FILE *trace_file,
my_bool execute_undo_phase, my_bool skip_DDLs,
my_bool take_checkpoints);
C_MODE_END