Removing the "external lock" functionality from Maria (as two separate processes wanting to share a table
should not only my_lock() the data and index files but also the log files, and share memory
(as the latest data is in the page cache), it sounds useless to feature this).
Removing the MyISAM logging from Maria (as REDO logging will be done differently).
BitKeeper/deleted/.del-maria_log.c~1fb295a18c3f5d4c:
Delete: storage/maria/maria_log.c
BitKeeper/deleted/.del-ma_log.c~4a44ec11d547772f:
Delete: storage/maria/ma_log.c
include/maria.h:
unneeded
storage/maria/Makefile.am:
log removed
storage/maria/ma_check.c:
external locking removed
storage/maria/ma_close.c:
log removed
storage/maria/ma_delete.c:
log removed
storage/maria/ma_delete_all.c:
log removed. Unused var.
storage/maria/ma_dynrec.c:
external locking removed
storage/maria/ma_extra.c:
log removed
storage/maria/ma_init.c:
log removed
storage/maria/ma_locking.c:
external locking removed, log removed
storage/maria/ma_open.c:
external locking removed, log removed
storage/maria/ma_static.c:
log removed
storage/maria/ma_statrec.c:
external locking removed
storage/maria/ma_test2.c:
log removed
storage/maria/ma_test3.c:
log removed
storage/maria/ma_update.c:
log removed
storage/maria/ma_write.c:
external locking removed, log removed
storage/maria/maria_chk.c:
external locking removed
storage/maria/maria_def.h:
log removed, maria_pid unused.
storage/maria/maria_pack.c:
fixes for warnings (where pointers are like ulong and so %u is not enough).
storage/maria/control_file.h:
small fix
storage/maria/recovery.c:
small fixes to the pseudocode and discussion of why no checkpoint at end of UNDO phase.
control file (WL#3234), to serve as a detailed LLD. It looks like C code, but does not compile (no point in making it compile,
as other modules on which I depend are not yet fully speficied or written); some pieces are not coded and just marked in comments.
Files' organization (names, directories of C files) does not matter at this point.
I don't think I had to commit so early, but it feels good to publish something, gives me the impression of moving forward :)
storage/maria/checkpoint.c:
WL#3071 Maria checkpoint, implementation
storage/maria/checkpoint.h:
WL#3071 Maria checkpoint, interface
storage/maria/control_file.c:
WL#3234 Maria control file, implementation
storage/maria/control_file.h:
WL#3234 Maria control file, interface
storage/maria/least_recently_dirtied.c:
WL#3261 Maria background flushing of least-recently-dirtied pages, implementation
storage/maria/least_recently_dirtied.h:
WL#3261 Maria background flushing of least-recently-dirtied pages, interface
storage/maria/recovery.c:
WL#3072 Maria recovery, implementation
storage/maria/recovery.h:
WL#3072 Maria recovery, interface
Moved things into ft_global.h, my_handler.h and myisamchk.h to allow MyISAM and Maria to share code and defines
Rename of not properly renamed functions in MyISAM and my_handler.c
Renamed some MI_ defines to HA_ to allow MyISAM and Maria to share
Added maria variables to mysqld.cc and set_var.cc
Fixed compiler warnings
BitKeeper/etc/ignore:
added storage/maria/*.MAI
BUILD/SETUP.sh:
Compile maria by default
BitKeeper/triggers/post-commit:
No public maria emails.
Mark changesets emails with 'maria'
configure.in:
Add maria
include/ft_global.h:
Move defines needed by maria and MyISAM here
include/keycache.h:
Add support for default key_cache if cache not found
include/my_base.h:
Add invalidator_by_filename
include/my_handler.h:
Remove duplicate header files
Add defines that are typical for handlers (MyISAM and Maria)
include/myisam.h:
Move things to my_handler.h to allow Maria and MyISAM to share things
(Some things needed to be shared to allow sharing of HA_CHECK structure)
libmysqld/Makefile.am:
Added ha_maria.cc
mysys/mf_keycaches.c:
Added default value for multi_key_cache_search
mysys/my_handler.c:
mi_compare_text -> ha_compare_text
Removed compiler warnings
sql/ha_myisam.cc:
MI_CHECK -> HA_CHECK
MI_MAX_KEY_LENGTH -> HA_MAX_KEY_LENGTH
sql/ha_myisam.h:
MI_CHECK -> HA_CHECK
MI_MAX_KEY_LENGTH -> HA_MAX_KEY_LENGTH
sql/ha_myisammrg.h:
MI_CHECK -> HA_CHECK
MI_MAX_KEY_LENGTH -> HA_MAX_KEY_LENGTH
sql/handler.h:
Added MARIA
Added inclusion of my_handler.h
sql/item_func.h:
Remove duplicate include
sql/mysql_priv.h:
Added maria variables
sql/mysqld.cc:
Added maria
sql/set_var.cc:
Added maria status variables
sql/set_var.h:
Added maria
sql/sql_class.h:
Added maria status variables
sql/sql_sort.h:
Remove duplicate BUFFPEK struct
storage/Makefile.am:
Added maria
storage/csv/ha_tina.cc:
Removed compiler warning
storage/myisam/Makefile.am:
Added ft_myisam.c
storage/myisam/ft_boolean_search.c:
mi_compare_text -> ha_compare_text
MI_MAX_KEY_BUFF -> HA_MAX_KEY_BUFF
Remove compiler warnings
storage/myisam/ft_nlq_search.c:
mi_compare_text -> ha_compare_text
storage/myisam/ft_parser.c:
mi_compare_text -> ha_compare_text
storage/myisam/ft_static.c:
Move ft_init_search() to ft_myisam.c to make ft_static.c independent of MyISAM
storage/myisam/ft_stopwords.c:
mi_compare_text -> ha_compare_text
storage/myisam/ft_update.c:
mi_compare_text -> ha_compare_text
storage/myisam/fulltext.h:
Move things to ft_global.h to allow to share more things between MyISAM and Maria
storage/myisam/mi_check.c:
MI_CHECK -> HA_CHECK
storage/myisam/mi_create.c:
MI_MAX_POSSIBLE_KEY -> HA_MAX_POSSIBLE_KEY
MI_MAX_KEY_BLOCK_SIZE -> HA_MAX_KEY_BLOCK_SIZE
MI_MAX_KEY_SEG -> HA_MAX_KEY_SEG
MI_MAX_KEY_BUFF -> HA_MAX_KEY_BUFF
storage/myisam/mi_delete.c:
MI_MAX_KEY_BUFF -> HA_MAX_KEY_BUFF
storage/myisam/mi_delete_all.c:
Remove not used variable
storage/myisam/mi_dynrec.c:
_my_calc_total_blob_length -> _mi_calc_total_blob_length
storage/myisam/mi_key.c:
_my_store_blob_length -> _mi_store_blob_length
storage/myisam/mi_log.c:
_my_calc_total_blob_length -> _mi_calc_total_blob_length
storage/myisam/mi_open.c:
MI_MAX_POSSIBLE_KEY -> HA_MAX_POSSIBLE_KEY
MI_MAX_KEY_SEG -> HA_MAX_KEY_SEG
MI_MAX_KEY_BUFF -> HA_MAX_KEY_BUFF
my_n_base_info_read -> mi_n_base_info_read
storage/myisam/mi_packrec.c:
Made read_pack_length static
_my_store_blob_length -> _mi_store_blob_length
Remove not used variable
storage/myisam/mi_range.c:
MI_MAX_KEY_BUFF -> HA_MAX_KEY_BUFF
storage/myisam/mi_search.c:
MI_MAX_KEY_BUFF -> HA_MAX_KEY_BUFF
storage/myisam/mi_test1.c:
MI_MAX_KEY_LENGTH -> HA_MAX_KEY_LENGTH
storage/myisam/mi_test2.c:
Fixed compiler warning
storage/myisam/mi_unique.c:
Fixed compiler warning
mi_compare_text -> ha_compare_text
storage/myisam/mi_update.c:
MI_MAX_KEY_BUFF -> HA_MAX_KEY_BUFF
storage/myisam/mi_write.c:
Rename of defines and functions
storage/myisam/myisamchk.c:
Rename of defines and functions
storage/myisam/myisamdef.h:
Remove tabs
Indentation fixes (Large changes as I did run indent-ex on the file)
Move some things to myisamchk.h
Added missing functions that gave compiler warnings
storage/myisam/myisamlog.c:
Rename of defines and functions
storage/myisam/myisampack.c:
Remove compiler warning
storage/myisam/rt_index.c:
Rename of defines and functions
storage/myisam/sort.c:
Rename of defines, functions and structures
config/ac-macros/ha_maria.m4:
New BitKeeper file ``config/ac-macros/ha_maria.m4''
include/maria.h:
New BitKeeper file ``include/maria.h''
include/myisamchk.h:
New BitKeeper file ``include/myisamchk.h''
libmysqld/ha_maria.cc:
New BitKeeper file ``libmysqld/ha_maria.cc''
mysql-test/include/have_maria.inc:
New BitKeeper file ``mysql-test/include/have_maria.inc''
mysql-test/r/have_maria.require:
New BitKeeper file ``mysql-test/r/have_maria.require''
mysql-test/r/maria.result:
New BitKeeper file ``mysql-test/r/maria.result''
mysql-test/r/ps_maria.result:
New BitKeeper file ``mysql-test/r/ps_maria.result''
mysql-test/t/maria.test:
New BitKeeper file ``mysql-test/t/maria.test''
mysql-test/t/ps_maria.test:
New BitKeeper file ``mysql-test/t/ps_maria.test''
sql/ha_maria.cc:
New BitKeeper file ``sql/ha_maria.cc''
sql/ha_maria.h:
New BitKeeper file ``sql/ha_maria.h''
storage/maria/Makefile.am:
New BitKeeper file ``storage/maria/Makefile.am''
storage/maria/cmakelists.txt:
New BitKeeper file ``storage/maria/cmakelists.txt''
storage/maria/ft_maria.c:
New BitKeeper file ``storage/maria/ft_maria.c''
storage/maria/ma_cache.c:
New BitKeeper file ``storage/maria/ma_cache.c''
storage/maria/ma_changed.c:
New BitKeeper file ``storage/maria/ma_changed.c''
storage/maria/ma_check.c:
New BitKeeper file ``storage/maria/ma_check.c''
storage/maria/ma_checksum.c:
New BitKeeper file ``storage/maria/ma_checksum.c''
storage/maria/ma_close.c:
New BitKeeper file ``storage/maria/ma_close.c''
storage/maria/ma_create.c:
New BitKeeper file ``storage/maria/ma_create.c''
storage/maria/ma_dbug.c:
New BitKeeper file ``storage/maria/ma_dbug.c''
storage/maria/ma_delete.c:
New BitKeeper file ``storage/maria/ma_delete.c''
storage/maria/ma_delete_all.c:
New BitKeeper file ``storage/maria/ma_delete_all.c''
storage/maria/ma_delete_table.c:
New BitKeeper file ``storage/maria/ma_delete_table.c''
storage/maria/ma_dynrec.c:
New BitKeeper file ``storage/maria/ma_dynrec.c''
storage/maria/ma_extra.c:
New BitKeeper file ``storage/maria/ma_extra.c''
storage/maria/ma_ft_boolean_search.c:
New BitKeeper file ``storage/maria/ma_ft_boolean_search.c''
storage/maria/ma_ft_eval.c:
New BitKeeper file ``storage/maria/ma_ft_eval.c''
storage/maria/ma_ft_eval.h:
New BitKeeper file ``storage/maria/ma_ft_eval.h''
storage/maria/ma_ft_nlq_search.c:
New BitKeeper file ``storage/maria/ma_ft_nlq_search.c''
storage/maria/ma_ft_parser.c:
New BitKeeper file ``storage/maria/ma_ft_parser.c''
storage/maria/ma_ft_stem.c:
New BitKeeper file ``storage/maria/ma_ft_stem.c''
storage/maria/ma_ft_test1.c:
New BitKeeper file ``storage/maria/ma_ft_test1.c''
storage/maria/ma_ft_test1.h:
New BitKeeper file ``storage/maria/ma_ft_test1.h''
storage/maria/ma_ft_update.c:
New BitKeeper file ``storage/maria/ma_ft_update.c''
storage/maria/ma_ftdefs.h:
New BitKeeper file ``storage/maria/ma_ftdefs.h''
storage/maria/ma_fulltext.h:
New BitKeeper file ``storage/maria/ma_fulltext.h''
storage/maria/ma_info.c:
New BitKeeper file ``storage/maria/ma_info.c''
storage/maria/ma_init.c:
New BitKeeper file ``storage/maria/ma_init.c''
storage/maria/ma_key.c:
New BitKeeper file ``storage/maria/ma_key.c''
storage/maria/ma_keycache.c:
New BitKeeper file ``storage/maria/ma_keycache.c''
storage/maria/ma_locking.c:
New BitKeeper file ``storage/maria/ma_locking.c''
storage/maria/ma_log.c:
New BitKeeper file ``storage/maria/ma_log.c''
storage/maria/ma_open.c:
New BitKeeper file ``storage/maria/ma_open.c''
storage/maria/ma_packrec.c:
New BitKeeper file ``storage/maria/ma_packrec.c''
storage/maria/ma_page.c:
New BitKeeper file ``storage/maria/ma_page.c''
storage/maria/ma_panic.c:
New BitKeeper file ``storage/maria/ma_panic.c''
storage/maria/ma_preload.c:
New BitKeeper file ``storage/maria/ma_preload.c''
storage/maria/ma_range.c:
New BitKeeper file ``storage/maria/ma_range.c''
storage/maria/ma_rename.c:
New BitKeeper file ``storage/maria/ma_rename.c''
storage/maria/ma_rfirst.c:
New BitKeeper file ``storage/maria/ma_rfirst.c''
storage/maria/ma_rkey.c:
New BitKeeper file ``storage/maria/ma_rkey.c''
storage/maria/ma_rlast.c:
New BitKeeper file ``storage/maria/ma_rlast.c''
storage/maria/ma_rnext.c:
New BitKeeper file ``storage/maria/ma_rnext.c''
storage/maria/ma_rnext_same.c:
New BitKeeper file ``storage/maria/ma_rnext_same.c''
storage/maria/ma_rprev.c:
New BitKeeper file ``storage/maria/ma_rprev.c''
storage/maria/ma_rrnd.c:
New BitKeeper file ``storage/maria/ma_rrnd.c''
storage/maria/ma_rsame.c:
New BitKeeper file ``storage/maria/ma_rsame.c''
storage/maria/ma_rsamepos.c:
New BitKeeper file ``storage/maria/ma_rsamepos.c''
storage/maria/ma_rt_index.c:
New BitKeeper file ``storage/maria/ma_rt_index.c''
storage/maria/ma_rt_index.h:
New BitKeeper file ``storage/maria/ma_rt_index.h''
storage/maria/ma_rt_key.c:
New BitKeeper file ``storage/maria/ma_rt_key.c''
storage/maria/ma_rt_key.h:
New BitKeeper file ``storage/maria/ma_rt_key.h''
storage/maria/ma_rt_mbr.c:
New BitKeeper file ``storage/maria/ma_rt_mbr.c''
storage/maria/ma_rt_mbr.h:
New BitKeeper file ``storage/maria/ma_rt_mbr.h''
storage/maria/ma_rt_split.c:
New BitKeeper file ``storage/maria/ma_rt_split.c''
storage/maria/ma_rt_test.c:
New BitKeeper file ``storage/maria/ma_rt_test.c''
storage/maria/ma_scan.c:
New BitKeeper file ``storage/maria/ma_scan.c''
storage/maria/ma_search.c:
New BitKeeper file ``storage/maria/ma_search.c''
storage/maria/ma_sort.c:
New BitKeeper file ``storage/maria/ma_sort.c''
storage/maria/ma_sp_defs.h:
New BitKeeper file ``storage/maria/ma_sp_defs.h''
storage/maria/ma_sp_key.c:
New BitKeeper file ``storage/maria/ma_sp_key.c''
storage/maria/ma_sp_test.c:
New BitKeeper file ``storage/maria/ma_sp_test.c''
storage/maria/ma_static.c:
New BitKeeper file ``storage/maria/ma_static.c''
storage/maria/ma_statrec.c:
New BitKeeper file ``storage/maria/ma_statrec.c''
storage/maria/ma_test1.c:
New BitKeeper file ``storage/maria/ma_test1.c''
storage/maria/ma_test2.c:
New BitKeeper file ``storage/maria/ma_test2.c''
storage/maria/ma_test3.c:
New BitKeeper file ``storage/maria/ma_test3.c''
storage/maria/ma_test_all.sh:
New BitKeeper file ``storage/maria/ma_test_all.sh''
storage/maria/ma_unique.c:
New BitKeeper file ``storage/maria/ma_unique.c''
storage/maria/ma_update.c:
New BitKeeper file ``storage/maria/ma_update.c''
storage/maria/ma_write.c:
New BitKeeper file ``storage/maria/ma_write.c''
storage/maria/maria_chk.c:
New BitKeeper file ``storage/maria/maria_chk.c''
storage/maria/maria_def.h:
New BitKeeper file ``storage/maria/maria_def.h''
storage/maria/maria_ftdump.c:
New BitKeeper file ``storage/maria/maria_ftdump.c''
storage/maria/maria_log.c:
New BitKeeper file ``storage/maria/maria_log.c''
storage/maria/maria_pack.c:
New BitKeeper file ``storage/maria/maria_pack.c''
storage/maria/maria_rename.sh:
New BitKeeper file ``storage/maria/maria_rename.sh''
storage/maria/test_pack:
New BitKeeper file ``storage/maria/test_pack''
storage/myisam/ft_myisam.c:
New BitKeeper file ``storage/myisam/ft_myisam.c''
cmakelists.txt:
Move configure processing to top-level cmakelists.txt so that it can be
shared by mysqld and libmysqld.
libmysqld/lib_sql.cc:
Temporary #ifdef to allow building from both bitkeeper sources and windows source package.
libmysqld/libmysqld.def:
Add export missing for test_libmysqld
sql/cmakelists.txt:
Move configure processing to top-level cmakelists.txt so that it can be
shared by mysqld and libmysqld.
sql/mysqld.cc:
#ifdef out code that is not used, nor compiles, in embedded server.
strings/cmakelists.txt:
Add some missing sources to fix embedded server build.
Fixed BUG#15650: DELETE with LEFT JOIN crashes server
with innodb_locks_unsafe_for_binlog.
Fixed compilation problem with non-C99 compilers
in btr0sea.c
innobase/btr/btr0sea.c:
Applied innodb-5.0-ss398 snapshot.
Fix compilation problem with non-C99 compilers.
sql/ha_innodb.cc:
Applied innodb-5.0-ss398 snapshot.
Remove assertion ut_error which crashes the mysqld
server if it prints a warning about the adaptive latch.
into linux.site:/home/reggie/work/mysql-5.1-bug17631
sql/ha_partition.cc:
Auto merged
sql/sql_partition.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
moved several functions from sql_partition to be member functions
sql/partition_info.h:
move these funcs from sql_partition to this class
sql/sql_partition.cc:
move these funcs from sql_partition to this class
sql/sql_table.cc:
calling the member func now instead
- Fix typo bug in SEL_ARG::is_singlepoint()
- In set_up_range_analysis_info(), treat MEDIUMINT as enumerable type just like other integer types
mysql-test/r/partition_pruning.result:
Testcase for BUG#18025
mysql-test/t/partition_pruning.test:
Testcase for BUG#18025
sql/opt_range.cc:
BUG#18025: Fix a typo bug in SEL_ARG::is_singlepoint()
sql/sql_partition.cc:
BUG#18025: In set_up_range_analysis_info(), treat MEDIUMINT as enumerable type just like other integer types.
into mysql.com:/home/gluh/MySQL/Merge/5.1-new
mysql-test/r/create.result:
Auto merged
mysql-test/t/create.test:
Auto merged
sql/sql_table.cc:
Auto merged
mysql-test/r/partition.result:
results block for bug # 17631
mysql-test/t/partition.test:
test block for bug #17631
sql/ha_partition.cc:
move table_type func to .cc file and return table_type from
the first handler. This is acceptable since we know we have
at least one handler and we currently do not support multiple
engine types. Later, we'll need to extend this to return
some type of delimited list
sql/ha_partition.h:
removed inline version of this function
sql/sql_show.cc:
if the table is partitioned, we add the term "partitioned" to the
create options. We make sure we are using the partitioned
handlerton before we do this. When we support more native partition
handlers then this will need to change.
into rurik.mysql.com:/home/igor/dev/mysql-5.1-0
mysql-test/r/loaddata.result:
Auto merged
mysql-test/r/ndb_read_multi_range.result:
Auto merged
mysql-test/t/innodb.test:
Auto merged
mysql-test/t/loaddata.test:
Auto merged
mysql-test/t/ndb_read_multi_range.test:
Auto merged
sql/field.cc:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_select.cc:
Auto merged
storage/ndb/tools/Makefile.am:
Auto merged
into mysql.com:/opt/local/work/mysql-5.1-merge
mysql-test/r/ps.result:
Auto merged
mysql-test/r/sp-error.result:
Auto merged
mysql-test/r/sp-prelocking.result:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/r/trigger.result:
Auto merged
mysql-test/t/ps.test:
Auto merged
mysql-test/t/sp-error.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysql-test/t/trigger.test:
Auto merged
sql/field.h:
Auto merged
sql/sp.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_view.cc:
Auto merged
mysql-test/t/sp-prelocking.test:
Manual merge.
into mysql.com:/opt/local/work/mysql-5.1-merge
mysql-test/r/loaddata.result:
Auto merged
mysql-test/r/ndb_read_multi_range.result:
Auto merged
mysql-test/t/loaddata.test:
Auto merged
mysql-test/t/ndb_read_multi_range.test:
Auto merged
sql/field.cc:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/sql_load.cc:
Auto merged
storage/ndb/tools/Makefile.am:
Auto merged
Docs/Makefile.am:
Include Windows manual in source package (if available), needed for CMake
packaging.
Makefile.am:
Include initial Windows database files in source package, needed for
CMake packaging