mariadb/mysys
unknown 2fcff8988a Fix for BUG#34114 "maria_chk reports false error when several tables on
command-line" and BUG#34062 "Maria table corruption on master".
Use 5 bytes (instead of 4) to store page's number in the checkpoint
record, to allow bigger table (1PB with maria-block-size=1kB).
Help pushbuild not run out of memory by moving the portion of
maria-recovery.test which generates lots of data into a -big.test.


mysql-test/r/maria-recovery.result:
  result moved
mysql-test/t/maria-recovery.test:
  piece which generates much data moved to maria-recovery-big.test
mysys/my_pread.c:
  To fix BUG#34062, where a 1.1TB file was generated due to a wrong
  pwrite offset, it was useful to not lose precision on 'offset' in
  DBUG_PRINT, so that the crazy value is visible.
mysys/my_read.c:
  To fix BUG#34062, where a 1.1TB file was generated due to a wrong
  pwrite offset, it was useful to not lose precision on 'offset' in
  DBUG_PRINT, so that the crazy value is visible.
mysys/my_write.c:
  To fix BUG#34062, where a 1.1TB file was generated due to a wrong
  pwrite offset, it was useful to not lose precision on 'offset' in
  DBUG_PRINT, so that the crazy value is visible.
storage/maria/ha_maria.cc:
  When starting a bulk insert, we throw away dirty index pages from the
  cache. Unique (non disabled) key insertions thus read out-of-date
  pages from the disk leading to BUG#34062 "Maria table corruption on
  master": a DELETE in procedure viewer_sp() had deleted all rows of
  viewer_tbl2 one by one, putting index page 1 into key_del; that page
  was thrown away at start of INSERT SELECT, then the INSERT SELECT
  needed a page to insert keys, looked at key_del, found 1, read page 1
  from disk, and its out-of-date content was used to set the new value of
  key_del (crazy value of 1TB), then a later insertion needed another
  index page, tried to read page at this crazy offset and failed, leading
  to corruption mark.
  The fix is to destroy out-of-date pages and make the state consistent
  with that, i.e. call maria_delete_all_rows().
storage/maria/ma_blockrec.c:
  Special hook for UNDO_BULK_INSERT
storage/maria/ma_blockrec.h:
  special hook for UNDO_BULK_INSERT
storage/maria/ma_check.c:
  Fix for BUG#34114 "maria_chk reports false error when several tables on
  command-line": if the Nth (on the command line) table was BLOCK_RECORD
  it would start checks by using the param->record_checksum computed by
  checks of table N-1.
storage/maria/ma_delete_all.c:
  comment
storage/maria/ma_loghandler.c:
  special hook for UNDO_BULK_INSERT
storage/maria/ma_page.c:
  comment
storage/maria/ma_pagecache.c:
  page number is 5 bytes in checkpoint record now (allows bigger tables)
storage/maria/ma_recovery.c:
  page number is 5 bytes in checkpoint record now
storage/maria/ma_recovery_util.c:
  page number is 5 bytes now
storage/maria/ma_write.c:
  typo
mysql-test/r/maria-recovery-big.result:
  result is correct
mysql-test/t/maria-recovery-big-master.opt:
  usual options for recovery tests
mysql-test/t/maria-recovery-big.test:
  Moving out the big blob test to a -big test (it exhausts memory when
  using /dev/shm on certain machines)
2008-01-29 22:20:59 +01:00
..
.cvsignore
array.c
base64.c
ChangeLog
charset-def.c
charset.c
checksum.c
CMakeLists.txt Windows fixes 2008-01-10 13:21:53 +01:00
default.c
default_modify.c
errors.c Added wrapper for chmod(): my_chmod() 2008-01-03 09:45:46 +02:00
hash.c
lf_alloc-pin.c
lf_dynarray.c Windows fixes 2008-01-10 13:21:53 +01:00
lf_hash.c
list.c
make-ccc
make-conf.c
Makefile.am Added wrapper for chmod(): my_chmod() 2008-01-03 09:45:46 +02:00
md5.c
mf_arr_appstr.c
mf_brkhant.c
mf_cache.c
mf_dirname.c
mf_fn_ext.c
mf_format.c
mf_getdate.c
mf_iocache.c Fixed compiler warnings 2008-01-13 00:30:38 +02:00
mf_iocache2.c
mf_keycache.c
mf_keycaches.c
mf_loadpath.c
mf_pack.c
mf_path.c
mf_qsort.c
mf_qsort2.c
mf_radix.c
mf_same.c
mf_sort.c
mf_soundex.c
mf_strip.c
mf_tempdir.c
mf_tempfile.c
mf_unixpath.c
mf_util.c
mf_wcomp.c
mf_wfile.c
mulalloc.c
my_access.c
my_aes.c
my_alarm.c
my_alloc.c
my_append.c
my_atomic.c
my_bit.c
my_bitmap.c
my_chmod.c Added wrapper for chmod(): my_chmod() 2008-01-03 09:45:46 +02:00
my_chsize.c
my_clock.c
my_compress.c Fixed compiler warnings 2008-01-13 00:30:38 +02:00
my_conio.c
my_copy.c
my_crc32.c
my_create.c
my_delete.c
my_div.c
my_dup.c
my_error.c Bugs fixed: 2008-01-07 18:54:41 +02:00
my_file.c
my_fopen.c
my_fstream.c
my_gethostbyname.c
my_gethwaddr.c
my_getncpus.c Windows fixes 2008-01-10 13:21:53 +01:00
my_getopt.c
my_getpagesize.c
my_getsystime.c Fixed compiler warnings 2008-01-13 00:30:38 +02:00
my_getwd.c
my_handler.c
my_init.c Added wrapper for chmod(): my_chmod() 2008-01-03 09:45:46 +02:00
my_largepage.c
my_lib.c
my_libwrap.c
my_lock.c
my_lockmem.c
my_malloc.c
my_memmem.c
my_messnc.c
my_mkdir.c
my_mmap.c
my_net.c
my_netware.c
my_new.cc
my_once.c
my_open.c
my_port.c
my_pread.c Fix for BUG#34114 "maria_chk reports false error when several tables on 2008-01-29 22:20:59 +01:00
my_pthread.c
my_quick.c
my_read.c Fix for BUG#34114 "maria_chk reports false error when several tables on 2008-01-29 22:20:59 +01:00
my_realloc.c
my_redel.c
my_rename.c
my_rnd.c
my_safehash.c
my_safehash.h
my_seek.c
my_sleep.c
my_static.c
my_static.h Fixed compiler warnings 2008-01-13 00:30:38 +02:00
my_symlink.c
my_symlink2.c
my_sync.c
my_thr_init.c
my_uuid.c Added --loose-skip-maria to MYSQLD_BOOTSTRAP_CMD to get bootstrap.test to work 2008-01-11 01:47:52 +02:00
my_vle.c
my_wincond.c
my_windac.c
my_winthread.c Windows fixes 2008-01-10 13:21:53 +01:00
my_write.c Fix for BUG#34114 "maria_chk reports false error when several tables on 2008-01-29 22:20:59 +01:00
mysys_priv.h
ptr_cmp.c
queues.c
rijndael.c
safemalloc.c Fixed compiler warnings 2008-01-13 00:30:38 +02:00
sha1.c
string.c
test_charset.c
test_dir.c
test_fn.c
test_xml.c
testhash.c
thr_alarm.c
thr_lock.c
thr_mutex.c
thr_rwlock.c
tree.c
trie.c
typelib.c
wqueue.c