mariadb/storage/maria
unknown 791b0aa081 WL#3071 - Maria checkpoint
* Preparation for having a background checkpoint thread:
frequency of checkpoint taken by that thread is now configurable
by the user: global variable maria_checkpoint_frequency, in seconds,
default 30 (checkpoint every 30th second); 0 means no checkpoints
(and thus no background thread, thus no background flushing, that
will probably only be used for testing).
* Don't take checkpoints in Recovery if it didn't do anything
significant; thus no checkpoint after a clean shutdown/restart. The
only checkpoint which is never skipped is the one at shutdown.
* fix for a test failure (after-merge fix)


include/maria.h:
  new variable
mysql-test/suite/rpl/r/rpl_row_flsh_tbls.result:
  result update
mysql-test/suite/rpl/t/rpl_row_flsh_tbls.test:
  position update (=after merge fix, as this position was already changed
  into 5.1 and not merged here, causing test to fail)
storage/maria/ha_maria.cc:
  Checkpoint's frequency is now configurable by the user:
  global variable maria_checkpoint_frequency. Changing it on the fly
  requires us to shutdown/restart the background checkpoint thread,
  as the loop done in that thread assumes a constant checkpoint
  interval. Default value is 30: a checkpoint every 30 seconds (yes, I
  know, physicists will remind that it should be named "period" then).
  ha_maria now asks for a background checkpoint thread when it starts,
  but this is still overruled (disabled) in ma_checkpoint_init().
storage/maria/ma_checkpoint.c:
  Checkpoint's frequency is now configurable by the user: background thread
  takes a checkpoint every maria_checkpoint_interval-th second.
  If that variable is 0, no checkpoints are taken.
  Note, I will enable the background thread only in a later changeset.
storage/maria/ma_recovery.c:
  Don't take checkpoints at the end of the REDO phase and at the end of
  Recovery if Recovery didn't make anything significant (didn't open
  any tables, didn't rollback any transactions).
  With this, after a clean shutdown, Recovery shouldn't take any
  checkpoint, which makes starting faster (we save a few fsync()s of
  the log and control file).
2007-10-09 10:38:31 +02:00
..
unittest WL#3072 - Maria recovery. 2007-10-02 18:02:09 +02:00
CMakeLists.txt After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ft_maria.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ha_maria.cc WL#3071 - Maria checkpoint 2007-10-09 10:38:31 +02:00
ha_maria.h After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
lockman.c This patch is a collection of patches from from Sanja, Sergei and Monty. 2007-05-29 20:13:56 +03:00
lockman.h GPL license update (same change as was done for all files in 5.1). 2007-03-02 11:20:23 +01:00
ma_bitmap.c WL#3072 Maria recovery 2007-10-08 19:08:25 +02:00
ma_blockrec.c WL#3072 - Maria recovery. 2007-10-02 18:02:09 +02:00
ma_blockrec.h WL#3072 - Maria recovery. 2007-10-02 18:02:09 +02:00
ma_cache.c merging MyISAM changes into Maria (not done in 5.1->maria merge of 2007-07-27 12:06:39 +02:00
ma_changed.c GPL license update (same change as was done for all files in 5.1). 2007-03-02 11:20:23 +01:00
ma_check.c Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-maria 2007-10-04 23:33:55 +03:00
ma_check_standalone.h WL#3072 Maria recovery. 2007-10-03 18:10:32 +02:00
ma_checkpoint.c WL#3071 - Maria checkpoint 2007-10-09 10:38:31 +02:00
ma_checkpoint.h fix for non-debug compilation errors. 2007-09-20 16:11:46 +02:00
ma_checksum.c Added applying of undo for updates 2007-09-09 19:15:10 +03:00
ma_close.c - WL#3072 Maria Recovery: 2007-09-07 15:02:30 +02:00
ma_commit.c WL#3072 - Maria recovery. 2007-10-02 18:02:09 +02:00
ma_commit.h - WL#3239 "log CREATE TABLE in Maria" 2007-06-22 14:49:37 +02:00
ma_control_file.c WL#3072 Maria recovery 2007-08-29 16:43:01 +02:00
ma_control_file.h WL#3072 Maria recovery 2007-08-29 16:43:01 +02:00
ma_create.c Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-maria 2007-10-04 23:33:55 +03:00
ma_dbug.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_delete.c Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-maria 2007-10-04 23:33:55 +03:00
ma_delete_all.c WL#3072 Maria recovery 2007-10-08 19:08:25 +02:00
ma_delete_table.c WL#3072 - Maria recovery. 2007-10-02 18:02:09 +02:00
ma_dynrec.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_extra.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_ft_boolean_search.c merging MyISAM changes into Maria (not done in 5.1->maria merge of 2007-07-27 12:06:39 +02:00
ma_ft_eval.c Fixes after review of guilhem of block record patch 2007-04-19 13:18:56 +03:00
ma_ft_eval.h GPL license update (same change as was done for all files in 5.1). 2007-03-02 11:20:23 +01:00
ma_ft_nlq_search.c merging MyISAM changes into Maria (not done in 5.1->maria merge of 2007-07-27 12:06:39 +02:00
ma_ft_parser.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_ft_stem.c GPL license update (same change as was done for all files in 5.1). 2007-03-02 11:20:23 +01:00
ma_ft_test1.c Fixes after review of guilhem of block record patch 2007-04-19 13:18:56 +03:00
ma_ft_test1.h GPL license update (same change as was done for all files in 5.1). 2007-03-02 11:20:23 +01:00
ma_ft_update.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_ftdefs.h Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_fulltext.h Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_info.c merging MyISAM changes into Maria (not done in 5.1->maria merge of 2007-07-27 12:06:39 +02:00
ma_init.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_key.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_keycache.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_locking.c WL#3072 Maria recovery 2007-10-08 19:08:25 +02:00
ma_loghandler.c Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-maria 2007-10-09 09:14:04 +02:00
ma_loghandler.h WL#3072 - Maria recovery. 2007-10-02 18:02:09 +02:00
ma_loghandler_lsn.h Fixes of the empty log problem. 2007-09-13 10:37:51 +03:00
ma_open.c Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-maria 2007-10-04 23:33:55 +03:00
ma_packrec.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_page.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_pagecache.c Optimisation todo for loghandler added. 2007-10-07 23:27:03 +03:00
ma_pagecache.h Faster translog_filename_by_fileno 2007-09-27 17:41:21 +03:00
ma_pagecaches.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_panic.c - WL#3239 "log CREATE TABLE in Maria" 2007-06-22 14:49:37 +02:00
ma_preload.c merging MyISAM changes into Maria (not done in 5.1->maria merge of 2007-07-27 12:06:39 +02:00
ma_range.c fixes of bad merge (probably). Less duplication in ma_test_recovery. 2007-08-06 16:13:42 +02:00
ma_recovery.c WL#3071 - Maria checkpoint 2007-10-09 10:38:31 +02:00
ma_recovery.h WL#3072 Maria recovery 2007-10-08 19:08:25 +02:00
ma_rename.c WL#3072 - Maria recovery. 2007-10-02 18:02:09 +02:00
ma_rfirst.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_rkey.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_rlast.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_rnext.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_rnext_same.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_rprev.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_rrnd.c Fixes for bugs found by maria.test and event*tests: 2007-08-21 20:54:11 +03:00
ma_rsame.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_rsamepos.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_rt_index.c merging MyISAM changes into Maria (not done in 5.1->maria merge of 2007-07-27 12:06:39 +02:00
ma_rt_index.h Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_rt_key.c merging MyISAM changes into Maria (not done in 5.1->maria merge of 2007-07-27 12:06:39 +02:00
ma_rt_key.h Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_rt_mbr.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_rt_mbr.h Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_rt_split.c merging MyISAM changes into Maria (not done in 5.1->maria merge of 2007-07-27 12:06:39 +02:00
ma_rt_test.c GPL license update (same change as was done for all files in 5.1). 2007-03-02 11:20:23 +01:00
ma_scan.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_search.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_sort.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_sp_defs.h Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_sp_key.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_sp_test.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_static.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_statrec.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_test1.c after-merge fixes for 64bit 2007-10-06 11:39:26 +02:00
ma_test2.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_test3.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
ma_test_all.res After merge fixes 2007-01-26 13:32:02 +02:00
ma_test_all.sh Generalized the way update and redo extends the size of a directory record. 2007-08-31 10:19:54 +03:00
ma_test_recovery WL#3072 Maria recovery 2007-09-25 11:54:35 +02:00
ma_test_recovery.expected WL#3072 - Maria recovery. 2007-10-02 18:02:09 +02:00
ma_unique.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
ma_update.c Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-maria 2007-10-04 23:33:55 +03:00
ma_write.c Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-maria 2007-10-04 23:33:55 +03:00
Makefile.am WL#3072 Maria recovery. 2007-10-03 18:10:32 +02:00
maria_chk.c Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-maria 2007-10-04 23:33:55 +03:00
maria_def.h after-merge fixes for 64bit 2007-10-06 11:39:26 +02:00
maria_ftdump.c Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
maria_pack.c After merge fixes. Applied changes made in myisam manually to maria. 2007-10-04 20:33:42 +03:00
maria_read_log.c WL#3072 Maria recovery 2007-10-08 19:08:25 +02:00
maria_rename.sh Added storage/maria (based on MyISAM). WL#3245 2006-04-11 16:45:10 +03:00
plug.in enable --with-maria-storage-engine 2007-09-07 19:45:33 +02:00
tablockman.c WL#3072 Maria recovery: 2007-08-01 15:52:57 +02:00
tablockman.h GPL license update (same change as was done for all files in 5.1). 2007-03-02 11:20:23 +01:00
test_pack Added storage/maria (based on MyISAM). WL#3245 2006-04-11 16:45:10 +03:00
trnman.c WL#3071 Maria checkpoint 2007-09-12 11:27:34 +02:00
trnman.h Merged with mysql-5.1 main tree. 2007-07-02 20:45:15 +03:00
trnman_public.h WL#3072 - Maria Recovery 2007-09-07 15:52:25 +02:00