Commit graph

10 commits

Author SHA1 Message Date
unknown
6686a3ee53 After merge fixes
Read blocks through page cache in check_block_record()
Don't read first bitmap on ma_open()
Don't require that a files block_size is equal to maria_block_size, if page cache is not setup yet.
Changed ma_test1, ma_test2, maria_chk and maria_pack to always create a page cache.
The above fixes so that ma_test_all now works again



BitKeeper/etc/ignore:
  added storage/maria/unittest/ma_pagecache_consist_1k-t-big storage/maria/unittest/ma_pagecache_consist_1kHC-t-big storage/maria/unittest/ma_pagecache_consist_1kRD-t-big storage/maria/unittest/ma_pagecache_consist_1kWR-t-big storage/maria/unittest/ma_pagecache_consist_64k-t-big storage/maria/unittest/ma_pagecache_consist_64kHC-t-big storage/maria/unittest/ma_pagecache_consist_64kRD-t-big storage/maria/unittest/ma_pagecache_consist_64kWR-t-big storage/maria/unittest/ma_pagecache_single_64k-t-big
include/maria.h:
  Added MARIA_MIN_PAGE_CACHE_SIZE
include/pagecache.h:
  Filedescriptors should be of type File
storage/maria/ma_bitmap.c:
  After merge fixes
  Create dummy bitmap on startup (can't read first bitmap becasue page cache may not be set up yet)
storage/maria/ma_blockrec.c:
  After merge fixes
storage/maria/ma_check.c:
  Use page cache to read rows-in-block rows.
  Don't initialize page cache; It's now done in maria_chk
storage/maria/ma_dynrec.c:
  Trivial code reorganization
storage/maria/ma_open.c:
  Don't give error for conflicting block size if page cache is not initalized.
  (Needed for maria_chk to be able to work on tables with different page sizes)
  After merge fixes
storage/maria/ma_page.c:
  Fix compiler warning
  Remove net needed asserts (Guranteed by ma_create())
storage/maria/ma_pagecache.c:
  Allow one to create a page cache with just one block
  (For trivail scan of table)
  Trivial code simplication
storage/maria/ma_test1.c:
  Always create a page cache (Maria now requires a page cache to work)
storage/maria/ma_test2.c:
  Always create a page cache (Maria now requires a page cache to work)
storage/maria/maria_chk.c:
  Remove command line options --maria_block_size and --pagecache_block_size.
  Set the global maria_block_size from the data file. This allows maria_chk to work with tables of different block sizes.
  Simply DESCRIPT handling; Allows us to remove one indentation level in maria_chk().
  Always initialize page cache if we are doing check/repair.
  (Most of the patch is reindentation of the code)
storage/maria/maria_def.h:
  After merge fix
storage/maria/maria_pack.c:
  Set maria_block_size based on the files block_size.
  Initalize page cache (needed for getting rows-in-blocks to works)
2007-04-19 18:48:36 +03:00
unknown
39d64a1d25 Pagecache integration for review.
storage/maria/unittest/ma_pagecache_single.c:
  Rename: storage/maria/unittest/mf_pagecache_single.c -> storage/maria/unittest/ma_pagecache_single.c
include/maria.h:
  Pagecache integration.
include/myisamchk.h:
  Pagecache integration.
include/pagecache.h:
  removed WRITE_NOW mode
  Pagecache parameters management.
mysys/Makefile.am:
  Safe hash procedures moved to the separate file.
  Pagecache moved to maria engine directory.
mysys/mf_keycaches.c:
  Safe hash procedures moved to the separate file.
sql/handler.cc:
  Pageccahe integration.
sql/handler.h:
  Pagecache integration.
sql/mysql_priv.h:
  pagecache integration
sql/mysqld.cc:
  pagecache integration
sql/set_var.cc:
  Pagecache integration.
sql/set_var.h:
  Pagecache integration.
storage/maria/Makefile.am:
  Pagecache integration and moving to maria engine directory.
storage/maria/ha_maria.cc:
  File changed on PAGECCAHE_FILE.
storage/maria/ma_bitmap.c:
  Pagecache integration.
storage/maria/ma_blockrec.c:
  Pagecache integration.
storage/maria/ma_check.c:
  File changed on PAGECCAHE_FILE.
  Pagecache integration.
storage/maria/ma_close.c:
  File changed on PAGECCAHE_FILE.
storage/maria/ma_delete_all.c:
  File changed on PAGECCAHE_FILE.
storage/maria/ma_dynrec.c:
  File changed on PAGECCAHE_FILE.
storage/maria/ma_extra.c:
  File changed on PAGECCAHE_FILE.
storage/maria/ma_info.c:
  File changed on PAGECCAHE_FILE.
storage/maria/ma_keycache.c:
  Pagecache integration.
storage/maria/ma_locking.c:
  File changed on PAGECCAHE_FILE.
storage/maria/ma_loghandler.c:
  Assert added.
storage/maria/ma_loghandler.h:
  extern specifier added.
storage/maria/ma_open.c:
  Pagecache integration.
  File changed on PAGECCAHE_FILE.
storage/maria/ma_packrec.c:
  File changed on PAGECCAHE_FILE.
storage/maria/ma_page.c:
  Pagecache integration.
storage/maria/ma_pagecache.c:
  Pagecache renamed and moved to the maria directory.
  BLOCK_* defines renamed to avoid conflict with BLOCK_ERROR defined in maria_def.h
storage/maria/ma_panic.c:
  File changed on PAGECCAHE_FILE.
storage/maria/ma_preload.c:
  Pagecache integration.
  File changed on PAGECCAHE_FILE.
storage/maria/ma_static.c:
  Pagecache integration.
storage/maria/ma_test1.c:
  Pagecache integration.
storage/maria/ma_test2.c:
  Pagecache integration.
storage/maria/ma_test3.c:
  Pagecache integration.
storage/maria/ma_write.c:
  File changed on PAGECCAHE_FILE.
storage/maria/maria_chk.c:
  Pagecache integration.
  File changed on PAGECCAHE_FILE.
storage/maria/maria_def.h:
  Pagecache integration.
  File changed on PAGECCAHE_FILE.
storage/maria/maria_ftdump.c:
  Pagecache integration.
storage/maria/maria_pack.c:
  File changed on PAGECCAHE_FILE.
storage/maria/unittest/Makefile.am:
  Pagecache moved to the maria directory.
storage/maria/unittest/ma_pagecache_consist.c:
  fixed using uninitialized variable
storage/maria/ma_pagecaches.c:
  New BitKeeper file ``storage/maria/ma_pagecaches.c''
mysys/my_safehash.h:
  New BitKeeper file ``mysys/my_safehash.h''
2007-04-04 23:37:09 +03:00
unknown
91a8199773 Postmerge fix (including changing type of LSN)
Some debug info and comments added


include/pagecache.h:
  postmerge fix
mysys/mf_pagecache.c:
  Postmerge fix (including changing type of LSN)
  Additional DBUG_ASSERTs added
  Comment about pinning mechanism added
storage/maria/ma_control_file.c:
  Used the same LSN storing procedure everywhere
  Postmerge fix (including changing type of LSN)
storage/maria/ma_control_file.h:
  Postmerge fix (including changing type of LSN)
storage/maria/ma_loghandler.c:
  Postmerge fix (including changing type of LSN)
storage/maria/ma_loghandler.h:
  Postmerge fix (including changing type of LSN)
storage/maria/ma_loghandler_lsn.h:
  Postmerge fix (including changing type of LSN)
storage/maria/unittest/Makefile.am:
  Postmerge fix
storage/maria/unittest/ma_control_file-t.c:
  Postmerge fix (including changing type of LSN)
storage/maria/unittest/ma_test_loghandler-t.c:
  Postmerge fix (including changing type of LSN)
storage/maria/unittest/ma_test_loghandler_multigroup-t.c:
  Postmerge fix (including changing type of LSN)
storage/maria/unittest/ma_test_loghandler_multithread-t.c:
  Postmerge fix (including changing type of LSN)
storage/maria/unittest/ma_test_loghandler_pagecache-t.c:
  Postmerge fix (including changing type of LSN)
storage/maria/unittest/mf_pagecache_consist.c:
  Postmerge fix (including changing type of LSN)
storage/maria/unittest/mf_pagecache_single.c:
  Postmerge fix (including changing type of LSN)
2007-02-12 14:23:43 +02:00
unknown
199ea756a6 Merge desktop.sanja.is.com.ua:/home/bell/mysql/bk/mysql-maria
into  desktop.sanja.is.com.ua:/home/bell/mysql/bk/work-maria-pagecache


mysys/Makefile.am:
  Auto merged
mysys/mf_keycache.c:
  Auto merged
storage/maria/Makefile.am:
  Auto merged
storage/maria/unittest/ma_control_file-t.c:
  Auto merged
storage/maria/unittest/mf_pagecache_consist.c:
  Auto merged
storage/maria/unittest/mf_pagecache_single.c:
  Auto merged
storage/maria/unittest/test_file.h:
  Auto merged
include/pagecache.h:
  merge
mysys/mf_pagecache.c:
  merge
storage/maria/maria_def.h:
  merge
storage/maria/unittest/Makefile.am:
  merge
unittest/mysys/Makefile.am:
  merge
2007-02-02 13:55:48 +02:00
unknown
0254009221 postreview changes for page cache and pre review commit for loghandler
storage/maria/unittest/test_file.c:
  Rename: unittest/mysys/test_file.c -> storage/maria/unittest/test_file.c
storage/maria/unittest/test_file.h:
  Rename: unittest/mysys/test_file.h -> storage/maria/unittest/test_file.h
include/pagecache.h:
  A waiting queue mechanism moved to separate file wqueue.*
  Pointer name changed for compatibility
mysys/Makefile.am:
  A waiting queue mechanism moved to separate file wqueue.*
mysys/mf_keycache.c:
  fixed unsigned comparison
mysys/mf_pagecache.c:
  A waiting queue mechanism moved to separate file wqueue.*
  Fixed bug in unregistering block during write
storage/maria/Makefile.am:
  The loghandler files added
storage/maria/ma_control_file.h:
  Now we have loghandler and can compile control file
storage/maria/maria_def.h:
  Including files need for compilation of maria
storage/maria/unittest/Makefile.am:
  unit tests of loghandler
storage/maria/unittest/ma_control_file-t.c:
  Used maria def
storage/maria/unittest/mf_pagecache_consist.c:
  fixed memory overrun
storage/maria/unittest/mf_pagecache_single.c:
  fixed used uninitialized memory
unittest/mysys/Makefile.am:
  unittests of pagecache moved to maria becase pagecache need loghandler
include/wqueue.h:
  New BitKeeper file ``include/wqueue.h''
mysys/wqueue.c:
  New BitKeeper file ``mysys/wqueue.c''
storage/maria/ma_loghandler.c:
  New BitKeeper file ``storage/maria/ma_loghandler.c''
storage/maria/ma_loghandler.h:
  New BitKeeper file ``storage/maria/ma_loghandler.h''
storage/maria/ma_loghandler_lsn.h:
  New BitKeeper file ``storage/maria/ma_loghandler_lsn.h''
storage/maria/unittest/ma_test_loghandler-t.c:
  New BitKeeper file ``storage/maria/unittest/ma_test_loghandler-t.c''
storage/maria/unittest/ma_test_loghandler_multigroup-t.c:
  New BitKeeper file ``storage/maria/unittest/ma_test_loghandler_multigroup-t.c''
storage/maria/unittest/ma_test_loghandler_multithread-t.c:
  New BitKeeper file ``storage/maria/unittest/ma_test_loghandler_multithread-t.c''
storage/maria/unittest/ma_test_loghandler_pagecache-t.c:
  New BitKeeper file ``storage/maria/unittest/ma_test_loghandler_pagecache-t.c''
2007-02-02 09:41:32 +02:00
unknown
7412f0fa0c After merge fixes
Removed compiler warnings
Fixed clashing function name in maria
Disable maria tests from MySQL level for now


BitKeeper/deleted/.del-ha_maria.cc:
  Rename: libmysqld/ha_maria.cc -> BitKeeper/deleted/.del-ha_maria.cc
BitKeeper/etc/ignore:
  added libmysqld/ha_maria.cc
  ---
  added storage/maria/unittest/maria_control unittest/maria_control
  ---
  added *.Tpo
  ---
  added unittest/page_cache_test_file_1
  ---
  added unittest/pagecache_debug.log
  ---
  added unittest/mysys/mf_pagecache_consist_1k-t-big unittest/mysys/mf_pagecache_consist_1kHC-t-big unittest/mysys/mf_pagecache_consist_1kRD-t-big unittest/mysys/mf_pagecache_consist_1kWR-t-big unittest/mysys/mf_pagecache_consist_64k-t-big unittest/mysys/mf_pagecache_consist_64kHC-t-big unittest/mysys/mf_pagecache_consist_64kRD-t-big unittest/mysys/mf_pagecache_consist_64kWR-t-big
  ---
  added unittest/mysys/mf_pagecache_single_64k-t-big
Makefile.am:
  Don't run 'test-unit' by default (takes too long time)
client/mysqldump.c:
  Fixed compiler warning
include/lf.h:
  Remove compiler warnings about not used require_pins constant
include/pagecache.h:
  LSN should be of type ulonglong
  (This fixes some compiler warnings)
mysql-test/r/events_logs_tests.result:
  Make test predictable
mysql-test/r/view.result:
  Make test results predictable
mysql-test/t/disabled.def:
  Disable maria tests for a while
mysql-test/t/events_logs_tests.test:
  Make test predictable
mysql-test/t/view.test:
  Make test results predictable
mysys/lf_alloc-pin.c:
  #warning ->QQ
mysys/lf_hash.c:
  #warning ->QQ
  Removed compiler warnings
mysys/mf_pagecache.c:
  Removed compiler warnings
mysys/my_rename.c:
  Removed compiler warnings
plugin/daemon_example/daemon_example.c:
  Remove compiler warning
sql/ha_ndbcluster.cc:
  Remove compiler warning
sql/udf_example.c:
  Remove compiler warning
storage/maria/lockman.c:
  Changed #warnings to QQ comment
  Removed compiler warnings
storage/maria/ma_blockrec.c:
  Removed compiler warnings
storage/maria/ma_check.c:
  After merge fixes
storage/maria/ma_key.c:
  After merge fixes
storage/maria/ma_packrec.c:
  After merge fixes
storage/maria/ma_rkey.c:
  After merge fixes
storage/maria/ma_sort.c:
  After merge fixes
storage/maria/ma_sp_defs.h:
  Rename clashing function name
storage/maria/ma_sp_key.c:
  Rename clashing function name
storage/maria/ma_test_all.res:
  New test results
storage/maria/ma_unique.c:
  Fixed compiler warning
storage/maria/tablockman.c:
  #warning -> QQ
storage/maria/tablockman.h:
  #warning -> QQ
storage/maria/trnman.c:
  #warning -> QQ
storage/maria/unittest/lockman2-t.c:
  Removed compiler warnings
storage/maria/unittest/ma_control_file-t.c:
  Removed warning for 'maria_control' file not found
storage/maria/unittest/trnman-t.c:
  Removed compiler warnings
storage/ndb/src/mgmapi/mgmapi.cpp:
  Remove compiler warnings
unittest/mysys/mf_pagecache_consist.c:
  Removed compiler warnings
unittest/mysys/my_atomic-t.c:
  Removed compiler warnings
2007-01-26 13:32:02 +02:00
unknown
714f3b73e5 merge of recent MyISAM changes into Maria.
Only failure is ndb_restore - could have been worse!!


include/pagecache.h:
  LSN->lsn
mysys/mf_keycache.c:
  page_status is int
mysys/mf_pagecache.c:
  merge of recent key cache changes
sql/mysqld.cc:
  post-merge fixes
sql/set_var.cc:
  post-merge fixes
storage/maria/ha_maria.cc:
  merge of recent MyISAM changes into Maria
storage/maria/ha_maria.h:
  merge of recent MyISAM changes into Maria
storage/maria/ma_close.c:
  merge of recent MyISAM changes into Maria
storage/maria/ma_create.c:
  merge of recent MyISAM changes into Maria
storage/maria/ma_delete.c:
  merge of recent MyISAM changes into Maria
storage/maria/ma_dynrec.c:
  merge of recent MyISAM changes into Maria
storage/maria/ma_ft_boolean_search.c:
  merge of recent MyISAM changes into Maria
storage/maria/ma_key.c:
  merge of recent MyISAM changes into Maria
storage/maria/ma_keycache.c:
  merge of recent MyISAM changes into Maria
storage/maria/ma_open.c:
  merge of recent MyISAM changes into Maria
storage/maria/ma_page.c:
  merge of recent MyISAM changes into Maria
storage/maria/ma_rsamepos.c:
  merge of recent MyISAM changes into Maria
storage/maria/ma_statrec.c:
  merge of recent MyISAM changes into Maria
storage/maria/ma_unique.c:
  merge of recent MyISAM changes into Maria
storage/maria/maria_chk.c:
  merge of recent MyISAM changes into Maria
storage/maria/maria_pack.c:
  merge of recent MyISAM changes into Maria
storage/myisam/myisampack.c:
  compiler warning
2006-12-20 18:58:35 +01:00
unknown
7199c90559 WL#3071 Maria checkpoint
- cleanups, simplifications
- moving the construction of the "dirty pages table" into the
pagecache where it belongs (because it's the pagecache which knows
dirty pages). TODO: do the same soon for the "transactions table".
- fix for a small bug in the pagecache (decrementation of "changed_blocks")


include/pagecache.h:
  prototype
mysys/mf_pagecache.c:
  m_string.h moves up for LEX_STRING to be known for pagecache.h.
  In pagecache_delete_page(), we must decrement "blocks_changed" even
  if we just delete the page without flushing it.
  A new function pagecache_collect_changed_blocks_with_LSN()
  (used by the Checkpoint module), which stores information about the
  changed blocks (a.k.a. "the dirty pages table") into a LEX_STRING.
  This function is not tested now, it will be when there is a Checkpoint.
storage/maria/ma_checkpoint.c:
  refining the checkpoint code: factoring functions, moving the
  construction of the "dirty pages table" into mf_pagecache.c
  (I'll do the same with the construction of the "transactions table"
  once Serg tells me what's the best way to do it).
storage/maria/ma_least_recently_dirtied.c:
  Simplifying the thread which does background flushing of
  least-recently-dirtied pages:
  - in first version that thread will not flush, just do checkpoints
  - in 2nd version, flushing should re-use existing page cache functions
  like flush_pagecache_blocks().
unittest/mysys/test_file.h:
  m_string.h moves up for LEX_STRING to be known in pagecache.h
2006-12-18 17:24:02 +01:00
unknown
e5858e1fb4 postreview fixes
fixed bug in the pagecache which lead to assertion in multithread test


include/pagecache.h:
  post review fixes:
   - comments fixed
   - types fixed
   - keyword 'extern' added to all interface functions
mysys/mf_pagecache.c:
  postreview fixes:
   - comments fixed and added
   - types fixed
   - typo fixed
  Added write locking flag set when we took a block from LRU and going to free it (to prevent locking/using it for write)
mysys/test_pagecache_consist.c:
  pagecache size reduced (to be able reproduce problems found by Guilhem)
  typo in the comment fixed
2006-11-13 00:26:29 +02:00
unknown
fbe22b6020 The pagae cache added.
mysys/Makefile.am:
  the page cache and test proms for it added
include/pagecache.h:
  New BitKeeper file ``include/pagecache.h''
mysys/mf_pagecache.c:
  New BitKeeper file ``mysys/mf_pagecache.c''
mysys/test_file.c:
  New BitKeeper file ``mysys/test_file.c''
mysys/test_file.h:
  New BitKeeper file ``mysys/test_file.h''
mysys/test_pagecache_consist.c:
  New BitKeeper file ``mysys/test_pagecache_consist.c''
mysys/test_pagecache_single.c:
  New BitKeeper file ``mysys/test_pagecache_single.c''
2006-07-06 11:10:34 +03:00