client/mysqlbinlog.cc:
Auto merged
configure.in:
Auto merged
include/my_global.h:
Auto merged
include/my_pthread.h:
Auto merged
innobase/trx/trx0trx.c:
Auto merged
mysql-test/include/varchar.inc:
Auto merged
mysql-test/r/bdb.result:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/r/mysqlbinlog2.result:
Auto merged
mysql-test/t/ctype_ucs.test:
Auto merged
mysql-test/t/user_var.test:
Auto merged
mysys/hash.c:
Auto merged
sql/item_func.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/log_event.h:
Auto merged
sql/set_var.h:
Auto merged
sql/slave.cc:
Auto merged
sql/slave.h:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_repl.cc:
Auto merged
sql/sql_repl.h:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_trigger.cc:
Auto merged
mysql-test/r/ctype_ucs.result:
ul
mysql-test/r/drop_temp_table.result:
ul
mysql-test/r/innodb.result:
ul
mysql-test/r/insert_select.result:
ul
mysql-test/r/mix_innodb_myisam_binlog.result:
ul
mysql-test/r/rpl_change_master.result:
ul
mysql-test/r/rpl_charset.result:
ul
mysql-test/r/rpl_error_ignored_table.result:
ul
mysql-test/r/rpl_flush_log_loop.result:
ul
mysql-test/r/rpl_flush_tables.result:
ul
mysql-test/r/rpl_loaddata.result:
ul
mysql-test/r/rpl_loaddata_rule_m.result:
ul
mysql-test/r/rpl_log.result:
ul
mysql-test/r/rpl_max_relay_size.result:
ul
mysql-test/r/rpl_relayrotate.result:
ul
mysql-test/r/rpl_replicate_do.result:
ul
mysql-test/r/rpl_rotate_logs.result:
ul
mysql-test/r/rpl_temporary.result:
ul
mysql-test/r/rpl_timezone.result:
ul
mysql-test/r/rpl_until.result:
ul
mysql-test/r/rpl_user_variables.result:
ul
mysql-test/r/user_var.result:
ul
by adding #ifndef UNIV_HOTBACKUP and adjusting some function
declarations.
innobase/data/data0type.c:
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/dict/dict0dict.c:
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/dict/dict0load.c:
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/include/data0type.ic:
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/include/srv0srv.h:
Introduce srv_init(), so that it can be called in InnoDB Hot Backup
innobase/include/srv0start.h:
Introduce srv_add_path_separator_if_needed(), so that it can be
invoked in InnoDB Hot Backup
innobase/include/sync0sync.h:
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/include/sync0sync.ic:
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/include/trx0trx.h:
trx_recover_for_mysql(): replace uint with ulint, as uint is not
declared in InnoDB Hot Backup
innobase/lock/lock0lock.c:
Replace bool with ibool
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/row/row0ins.c:
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/row/row0mysql.c:
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/srv/srv0srv.c:
Make srv_init() global, so that InnoDB Hot Backup can call it.
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/srv/srv0start.c:
Make srv_add_path_separator_if_needed() global for InnoDB Hot Backup.
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/sync/sync0rw.c:
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/sync/sync0sync.c:
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/trx/trx0roll.c:
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/trx/trx0trx.c:
Replace uint with ulint, as uint is undeclared in InnoDB Hot Backup
innobase/ut/ut0ut.c:
Exclude code from InnoDB Hot Backup with #ifndef UNIV_HOTBACKUP
innobase/lock/lock0lock.c:
Add prepared state to concurrency states in lock validate.
innobase/trx/trx0trx.c:
Prepared transactions are active transactions in file based word.
sql/ha_innodb.cc:
Add full support of X/Open XA to InnoDB.
include/my_pthread.h:
cleanup. don't use gcc extensions
innobase/include/trx0sys.ic:
Jan's fix for innobase_xa_prepare
innobase/read/read0read.c:
Jan's fix for innobase_xa_prepare
innobase/trx/trx0trx.c:
Jan's fix for innobase_xa_prepare
mysql-test/include/varchar.inc:
test fix
mysql-test/r/ctype_ucs.result:
new log event - all binlog positions are changed :(
mysql-test/r/drop_temp_table.result:
new log event - all binlog positions are changed :(
mysql-test/r/insert_select.result:
new log event - all binlog positions are changed :(
mysql-test/r/mix_innodb_myisam_binlog.result:
new log event - all binlog positions are changed :(
mysql-test/r/myisam.result:
test fix
mysql-test/r/rpl000015.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_change_master.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_charset.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_error_ignored_table.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_flush_log_loop.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_flush_tables.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_loaddata.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_loaddata_rule_m.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_loaddata_rule_s.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_log.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_log_pos.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_max_relay_size.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_relayrotate.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_replicate_do.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_reset_slave.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_rotate_logs.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_server_id1.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_server_id2.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_temporary.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_timezone.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_until.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_user_variables.result:
new log event - all binlog positions are changed :(
mysql-test/r/user_var.result:
new log event - all binlog positions are changed :(
mysql-test/t/ctype_ucs.test:
new log event - all binlog positions are changed :(
mysql-test/t/mix_innodb_myisam_binlog.test:
new log event - all binlog positions are changed :(
mysql-test/t/mysqlbinlog.test:
new log event - all binlog positions are changed :(
mysql-test/t/mysqlbinlog2.test:
new log event - all binlog positions are changed :(
mysql-test/t/rpl_charset.test:
new log event - all binlog positions are changed :(
mysql-test/t/rpl_error_ignored_table.test:
new log event - all binlog positions are changed :(
mysql-test/t/rpl_loaddata_rule_m.test:
new log event - all binlog positions are changed :(
mysql-test/t/rpl_loaddata_rule_s.test:
new log event - all binlog positions are changed :(
mysql-test/t/rpl_log.test:
new log event - all binlog positions are changed :(
mysql-test/t/rpl_log_pos.test:
new log event - all binlog positions are changed :(
mysql-test/t/rpl_user_variables.test:
new log event - all binlog positions are changed :(
mysql-test/t/user_var.test:
new log event - all binlog positions are changed :(
mysys/hash.c:
typo fixed
sql/ha_berkeley.cc:
handlerton framework
sql/ha_berkeley.h:
handlerton framework
sql/ha_innodb.cc:
handlerton framework
sql/ha_innodb.h:
handlerton framework
sql/handler.cc:
new transaction handling, handlerton framework, two-phase commit, XA support
sql/handler.h:
new transaction handling, handlerton framework, two-phase commit, XA support
sql/lex.h:
XA commands
sql/log.cc:
new transaction handling, handlerton framework, two-phase commit,
XA support, tc-logging, TC_LOG_MMAP class
sql/log_event.cc:
Xid_log_event
sql/log_event.h:
Xid_log_event, LOG_EVENT_BINLOG_CLOSED_F flag
sql/mysql_priv.h:
wrapper for query_id++
sql/mysqld.cc:
new command-line options --log-tc, --log-tc-size, --tc-heuristic-recover,
new status variables Tc_log_page_size, Tc_log_max_pages_used, Tc_log_page_waits.
init/stop tc logging
sql/set_var.h:
warning fixed
sql/share/errmsg.txt:
XA error messages
sql/sp_head.cc:
s/query_id++/next_query_id()/
sql/sql_base.cc:
typo fixed. new transaction handling.
sql/sql_class.cc:
cleanup of THD.transaction
sql/sql_class.h:
TC_LOG classes, new status variables, new savepoint handling, XA support
sql/sql_insert.cc:
comments
sql/sql_lex.cc:
s/found_colon/found_semicolon/
sql/sql_lex.h:
SQLCOM_XA_xxx, XA related changes in Lex
sql/sql_parse.cc:
cleanup, XA commands, new savepoint handling
sql/sql_repl.cc:
two functions moved to log.cc
sql/sql_repl.h:
two functions moved to log.cc
sql/sql_trigger.cc:
s/lex.name_and_length/lex.ident/
sql/sql_yacc.yy:
XA commands, cleanup
configure.in:
Auto merged
client/mysqldump.c:
Auto merged
innobase/buf/buf0rea.c:
Auto merged
innobase/dict/dict0load.c:
Auto merged
innobase/fil/fil0fil.c:
Auto merged
innobase/include/fil0fil.h:
Auto merged
innobase/include/row0mysql.h:
Auto merged
innobase/include/trx0trx.h:
Auto merged
innobase/os/os0file.c:
Auto merged
innobase/row/row0ins.c:
Auto merged
innobase/row/row0mysql.c:
Auto merged
innobase/row/row0sel.c:
Auto merged
innobase/srv/srv0start.c:
Auto merged
innobase/trx/trx0trx.c:
Auto merged
libmysqld/lib_sql.cc:
Auto merged
mysql-test/mysql-test-run.sh:
Auto merged
mysql-test/r/alter_table.result:
Auto merged
mysql-test/r/ctype_ucs.result:
Auto merged
mysql-test/r/func_str.result:
Auto merged
mysql-test/r/grant.result:
Auto merged
mysql-test/r/grant_cache.result:
Auto merged
mysql-test/r/merge.result:
Auto merged
mysql-test/r/ndb_blob.result:
Auto merged
mysql-test/r/ps_1general.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/timezone2.result:
Auto merged
mysql-test/t/ctype_ucs.test:
Auto merged
mysql-test/t/grant.test:
Auto merged
mysql-test/t/merge.test:
Auto merged
mysql-test/t/multi_update.test:
Auto merged
mysql-test/t/mysqldump.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
ndb/src/ndbapi/NdbBlob.cpp:
Auto merged
ndb/src/ndbapi/NdbConnection.cpp:
Auto merged
ndb/src/ndbapi/NdbDictionaryImpl.cpp:
Auto merged
ndb/src/ndbapi/NdbOperationDefine.cpp:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/ha_myisammrg.cc:
Auto merged
sql/ha_myisammrg.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/log.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql-common/client.c:
Auto merged
sql/sql_table.cc:
Auto merged
sql/strfunc.cc:
Auto merged
sql/unireg.cc:
Auto merged
vio/vio.c:
Auto merged
vio/viosocket.c:
Auto merged
innobase/dict/dict0dict.c:
Make dict_is_mixed_table_rec() a non-inlined function.
innobase/include/dict0dict.h:
Make dict_is_mixed_table_rec() a non-inlined function.
Remove dict_index_rec_get_sys_col().
innobase/include/dict0dict.ic:
Make dict_is_mixed_table_rec() a non-inlined function.
Remove dict_index_rec_get_sys_col().
innobase/trx/trx0rec.c:
Replace the two calls to the removed
function dict_index_rec_get_sys_col() with equivalent code.
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
innobase/buf/buf0rea.c:
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
innobase/include/dict0load.h:
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
innobase/include/fil0fil.h:
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
innobase/include/row0mysql.h:
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
innobase/include/trx0trx.h:
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
innobase/dict/dict0load.c:
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
innobase/fil/fil0fil.c:
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
innobase/row/row0ins.c:
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
innobase/row/row0mysql.c:
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
innobase/row/row0sel.c:
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
innobase/srv/srv0start.c:
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
innobase/trx/trx0trx.c:
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
sql/ha_innodb.cc:
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
sql/ha_innodb.cc:
Auto merged
sql/ha_innodb.h:
Auto merged
sql/handler.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
innobase/trx/trx0roll.c:
Auto merged.
Put a sensible value of thread id and process no to a background rollback transaction
innobase/trx/trx0roll.c:
Put a sensible value of thread id and process no to a background rollback transaction
Print progress of background rollback of transactions with more than 1000 undo log entries
srv0start.c, trx0roll.c, log0recv.c, trx0roll.h:
Cleanup background rollback code in crash recovery; do not flush all modified pages from the buffer pool after a crash recovery: this makes mysqld accesible for users more quickly
innobase/include/trx0roll.h:
Cleanup background rollback code in crash recovery; do not flush all modified pages from the buffer pool after a crash recovery: this makes mysqld accesible for users more quickly
innobase/log/log0recv.c:
Cleanup background rollback code in crash recovery; do not flush all modified pages from the buffer pool after a crash recovery: this makes mysqld accesible for users more quickly
innobase/srv/srv0start.c:
Cleanup background rollback code in crash recovery; do not flush all modified pages from the buffer pool after a crash recovery: this makes mysqld accesible for users more quickly
innobase/trx/trx0roll.c:
Print progress of background rollback of transactions with more than 1000 undo log entries
memory heaps. This changeset plugs also a few memory leaks that
were introduced with the compact InnoDB table format.
innobase/btr/btr0btr.c:
Changed interface to rec_get_offsets()
innobase/btr/btr0cur.c:
Changed interface to rec_get_offsets()
innobase/btr/btr0pcur.c:
Changed interface to rec_get_offsets()
innobase/btr/btr0sea.c:
Changed interface to rec_get_offsets()
innobase/include/rem0rec.h:
Changed interface to rec_get_offsets()
innobase/include/rem0rec.ic:
Changed interface to rec_get_offsets()
innobase/lock/lock0lock.c:
Changed interface to rec_get_offsets()
innobase/page/page0cur.c:
Changed interface to rec_get_offsets()
innobase/page/page0page.c:
Changed interface to rec_get_offsets()
innobase/rem/rem0rec.c:
Changed interface to rec_get_offsets()
innobase/row/row0ins.c:
Changed interface to rec_get_offsets()
innobase/row/row0mysql.c:
Changed interface to rec_get_offsets()
innobase/row/row0purge.c:
Changed interface to rec_get_offsets()
innobase/row/row0row.c:
Changed interface to rec_get_offsets()
innobase/row/row0sel.c:
Changed interface to rec_get_offsets()
innobase/row/row0umod.c:
Changed interface to rec_print()
innobase/row/row0undo.c:
Changed interface to rec_get_offsets()
innobase/row/row0upd.c:
Changed interface to rec_get_offsets()
innobase/row/row0vers.c:
Changed interface to rec_get_offsets()
innobase/trx/trx0rec.c:
Changed interface to rec_get_offsets()
transactional table locks to tables mentioned in the query. These locks
are released at the end of the transaction automatically.
This is fix for bugs #5655, #5998 and issue #3762.
innobase/include/lock0lock.h:
Added a new lock type LOCK_TABLE_TRANSACTIONAL.
innobase/include/trx0trx.h:
Added a varible to store the number of transactional table locks
reserved by the transaction and stored in the trx_locks list.
innobase/lock/lock0lock.c:
Added a lock type LOCK_TABLE_TRANSACTIONAL.
innobase/row/row0mysql.c:
Added support for a transactional table lock.
innobase/trx/trx0roll.c:
Make compiler happy and format function.
innobase/trx/trx0trx.c:
Added information about number of explicit and transactional table locks in
the innodb monitor.
sql/ha_innodb.cc:
Added support for a LOCK_TABLE_TRANSACTIONAL table lock (SQLCOM_LOCK_TABLES_TRANSACTIONAL).
Transactional table locks are taken in the function ::transactional_table_lock().
sql/ha_innodb.h:
Added prototype for a function trandactional_table_lock().
sql/handler.h:
Added prototype for a virtual function transactional_table_lock().
Handler does not need to implement this function.
sql/lock.cc:
Added a function transactional_lock_tables() to lock all tables in the list
with transactional table lock. These locks can cause a deadlock and
this error should be reported back to user.
sql/mysql_priv.h:
Added prototype for a function transactional_lock_tables().
sql/sql_lex.h:
Added SQLCOM_LOCK_TABLES_TRANSACTIONAL command.
sql/sql_parse.cc:
Added SQLCOM_LOCK_TABLES_TRANSACTIONAL command.
sql/sql_yacc.yy:
Added parsing rules for a LOCK TABLES...WHERE ENGINE = x;
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/btr/btr0btr.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/btr/btr0cur.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/btr/btr0pcur.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/btr/btr0sea.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/data/data0data.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/data/data0type.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/dict/dict0boot.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/dict/dict0crea.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/dict/dict0dict.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/dict/dict0load.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/dict/dict0mem.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/fil/fil0fil.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/fsp/fsp0fsp.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/ibuf/ibuf0ibuf.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/btr0btr.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/btr0btr.ic:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/btr0cur.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/btr0cur.ic:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/btr0pcur.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/btr0sea.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/data0type.ic:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/dict0dict.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/dict0dict.ic:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/dict0mem.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/lock0lock.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/lock0lock.ic:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/mtr0log.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/mtr0mtr.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/page0cur.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/page0cur.ic:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/page0page.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/page0page.ic:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/rem0cmp.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/rem0cmp.ic:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/rem0rec.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/rem0rec.ic:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/row0row.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/row0row.ic:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/row0upd.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/row0upd.ic:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/row0vers.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/row0vers.ic:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/srv0srv.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/trx0rec.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/ut0byte.h:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/include/ut0byte.ic:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/lock/lock0lock.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/log/log0recv.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/mtr/mtr0log.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/page/page0cur.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/page/page0page.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/pars/pars0pars.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/rem/rem0cmp.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/rem/rem0rec.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/row/row0ins.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/row/row0mysql.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/row/row0purge.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/row/row0row.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/row/row0sel.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/row/row0umod.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/row/row0undo.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/row/row0upd.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/row/row0vers.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/srv/srv0srv.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/trx/trx0rec.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
innobase/trx/trx0undo.c:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
sql/ha_innodb.cc:
Implement more compact InnoDB record format.
Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
BitKeeper/deleted/.del-xa.h~4021d7e61ff515b:
Delete: innobase/include/xa.h
innobase/include/trx0trx.h:
Change xa.h to trx0ha.h.
innobase/include/trx0undo.h:
Split TRX_UNDO_DICT_OPERATION field to two fiels: first contains
TRX_UNDO_XID_EXISTS flag which is TRUE if log header contains
X/Open XA XID and the second one contains TRX_UNDO_DICT_TRANS
flag which is TRUE if the transaction is dictionary transaction.
innobase/trx/trx0trx.c:
Remove unnecessary and erroneus code from prepare. Add some
informative printouts of prepared transactions.
innobase/trx/trx0undo.c:
Split TRX_UNDO_DICT_OPERATION field to two fields: the first field
is TRX_UNDO_XID_EXISTS flag which is true if the log header contains
X/Open XA XID and the second field is TRX_UNDO_DICT_TRANS flag
which is true if the transaction was a dictionary transaction.
sql/ha_innodb.cc:
Code cleanup.
innobase/include/trx0roll.h:
Changed prototype of the function trx_rollback_or_clean_all_without_sess
because this function is executed in a background thread.
innobase/include/trx0trx.h:
Added support for X/Open XA prepare, recover and search by X/Open XA XID.
innobase/include/trx0undo.h:
Added support for X/Open XA prepare and recover. We need to store X/Open XA XID
to the undo log header for recovery.
innobase/log/log0recv.c:
Create a thread to run trx_rollback_or_clean_all_without_sess function
to rollback the uncommitted transactions which have no user session.
innobase/row/row0ins.c:
Remove unnecessary variables.
innobase/trx/trx0roll.c:
Changed so that trx_rollback_or_clean_all_without_sess is executed
in a background thread. We should also leave all prepared transactions
active to wait for commit or abort from MySQL.
innobase/trx/trx0sys.c:
Only those rows which belong to the active transaction in crash recovery
are undone.
innobase/trx/trx0trx.c:
Added support for X/Open XA prepare and recover. We need to store X/Open XA
XID to trx structure and left prepared transactions to wait for a
commit or abort from MySQL. This requires also that we add TRX_PREPARED
state to the transaction and TRX_UNDO_PREPARED state for undo logs.
innobase/trx/trx0undo.c:
Added support for X/Open XA prepare and recover. We need to store X/Open XA
XID to undo log header for recovery of distributed transactions.
sql/ha_innodb.h:
Added prototypes for X/Open XA prepare, recover, commit and rollback.
sql/handler.h:
Added definition for X/Open XA XID structure.
Print a warning to the .err log if the InnoDB history list length is > 20 000 even though purge reaches the list head; this is to track corruption reported on the MySQL mailing list Nov 9, 2004
lock0lock.c:
Let SHOW INNODB STATUS print the history list length
innobase/lock/lock0lock.c:
Let SHOW INNODB STATUS print the history list length
innobase/trx/trx0purge.c:
Print a warning to the .err log if the InnoDB history list length is > 20 000 even though purge reaches the list head; this is to track corruption reported on the MySQL mailing list Nov 9, 2004
innobase/trx/trx0undo.c:
Print a warning to the .err log if the InnoDB history list length is > 20 000 even though purge reaches the list head; this is to track corruption reported on the MySQL mailing list Nov 9, 2004
BitKeeper/deleted/.del-innodb-lock-master.opt~f76a4a1999728f87:
Auto merged
innobase/include/trx0sys.h:
Auto merged
innobase/srv/srv0srv.c:
Auto merged
innobase/trx/trx0purge.c:
Auto merged
innobase/trx/trx0rseg.c:
Auto merged
mysql-test/r/innodb-lock.result:
Auto merged
mysql-test/t/innodb-lock.test:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/mysqld.cc:
Use local version during merge
BitKeeper/etc/logging_ok:
auto-union
Docs/Support/texi2html:
Auto merged
innobase/trx/trx0rec.c:
Auto merged
libmysql/libmysql.c:
Auto merged
myisam/myisampack.c:
Auto merged
mysql-test/t/innodb-lock.test:
Auto merged
mysys/thr_lock.c:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/lock.cc:
Auto merged
sql/sql_acl.cc:
Keep old code
Fix bug #5960: if one updated a column so that its size changed, or updated it to an externally stored (TEXT or BLOB) value, then ANOTHER externally stored column would show up as 512 bytes of good data + 20 bytes of garbage in a consistent read that fetched the old version of the row
innobase/trx/trx0rec.c:
Fix bug #5960: if one updated a column so that its size changed, or updated it to an externally stored (TEXT or BLOB) value, then ANOTHER externally stored column would show up as 512 bytes of good data + 20 bytes of garbage in a consistent read that fetched the old version of the row
Fix bug #5414 in 4.1: srv_max_n_threads was always set to only 1000, regardless of the buffer pool size; undelr very high concurrent loads this could cause an assertion failure in sync0arr.c line 384 when we ran out of wait slots for threads; also innodb_thread_concurrency did not work, because the wait queue also there overflowed at 1000 concurrent threads; also remove redundant code
trx0undo.c:
Add a missing newline to fprints
innobase/trx/trx0undo.c:
Add a missing newline to fprints
innobase/srv/srv0start.c:
Fix bug in 4.1: srv_max_n_threads was always set to only 1000, regardless of the buffer pool size; undelr very high concurrent loads this could cause an assertion failure in sync0arr.c line 384 when we ran out of wait slots for threads; also innodb_thread_concurrency did not work, because the wait queue also there overflowed at 1000 concurrent threads; also remove redundant code
Build-tools/Do-compile:
Auto merged
Docs/Makefile.am:
Auto merged
innobase/btr/btr0cur.c:
Auto merged
innobase/include/lock0lock.h:
Auto merged
innobase/include/row0mysql.h:
Auto merged
innobase/include/srv0srv.h:
Auto merged
innobase/include/sync0arr.h:
Auto merged
innobase/include/trx0trx.h:
Auto merged
innobase/lock/lock0lock.c:
Auto merged
innobase/srv/srv0srv.c:
Auto merged
innobase/srv/srv0start.c:
Auto merged
innobase/sync/sync0arr.c:
Auto merged
innobase/trx/trx0trx.c:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
mysql-test/r/innodb.result:
to be fixed after the merge
innobase/include/lock0lock.h:
Improve comments regarding LOCK_TABLE_EXP
innobase/include/row0mysql.h:
Rename row_unlock_table_for_mysql() to row_unlock_tables_for_mysql()
and improve its comment
innobase/include/trx0trx.h:
Rename n_tables_locked to n_lock_table_exp
innobase/lock/lock0lock.c:
Rename n_tables_locked to n_lock_table_exp
Increment n_lock_table_exp already in lock_table_create()
Replace some ut_ad() assertions with ut_a()
innobase/row/row0mysql.c:
Rename n_tables_locked to n_lock_table_exp
Rename row_unlock_table_for_mysql() to row_unlock_tables_for_mysql()
and improve its comment
innobase/trx/trx0trx.c:
Rename n_tables_locked to n_lock_table_exp
sql/ha_innodb.cc:
Rename n_tables_locked to n_lock_table_exp
Rename row_unlock_table_for_mysql() to row_unlock_tables_for_mysql()
into mysql.com:/home/mysql_src/mysql-4.1-1717
client/mysqltest.c:
Auto merged
innobase/trx/trx0sys.c:
Auto merged
mysql-test/mysql-test-run.sh:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/ha_innodb.h:
Auto merged
sql/log.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_class.h:
Auto merged
Won't be pushed as is - separate email sent for internal review.
WL#1717 "binlog-innodb consistency".
Now when mysqld starts, if InnoDB does a crash recovery, we use the binlog name
and position retrieved from InnoDB (corresponding to the last transaction
successfully committed by InnoDB) to cut any rolled back transaction from
the binary log. This is triggered by the --innodb-safe-binlog option.
Provided you configure mysqld to fsync() InnoDB at every commit (using
flush_log_at_trx_commit) and to fsync() the binlog at every write
(using --sync-binlog=1), this behaviour guarantees that a master always has
consistency between binlog and InnoDB, whenever the crash happens.
6 tests to verify that it works.
client/mysqltest.c:
New command require_os (only "unix" accepted for now).
innobase/include/trx0sys.h:
when InnoDB does crash recovery, we now save the binlog coords it prints, into variables for later use.
innobase/trx/trx0sys.c:
when InnoDB does crash recovery, we now save the binlog coords it prints, into variables for later use.
mysql-test/mysql-test-run.sh:
The tests which check that the binlog is cut at restart, need to not delete those binlogs, of course.
And not delete replication info, so that we can test that the slave does not receive anything
wrong from the cut binlog.
sql/ha_innodb.cc:
methods to read from InnoDB the binlog coords stored into it
sql/ha_innodb.h:
ethods to read from InnoDB the binlog coords stored into it
sql/log.cc:
Added my_sync() when we create a binlog (my_sync of the binlog and of the index file);
this is always done, whether --sync-binlog or not (binlog creation is rare, so no speed
problem, and I like to have the existence of the binlog always reliably recorded, even if
later content is not).
If --crash-binlog-innodb, crash between the binlog write and the InnoDB commit.
New methods:
- report_pos_in_innodb() to store the binlog name and position into InnoDB (used only when
we create a new binlog: at startup and at FLUSH LOGS)
- cut_spurious_tail() to possibly cut the tail of a binlog based on the info we read
from InnoDB (does something only if InnoDB has just done a crash recovery).
sql/mysql_priv.h:
new option, to crash (use for testing only)
sql/mysqld.cc:
New option --innodb-safe-binlog and --crash-binlog-innodb (the latter is for testing, it makes mysqld crash).
Just after opening the logs and opening the storage engines, cut any wrong statement from the binlog, based
on info read from InnoDB.
sql/sql_class.h:
new methods for MYSQL_LOG.
BitKeeper/etc/logging_ok:
auto-union
Build-tools/mysql-copyright-2:
Auto merged
include/violite.h:
Auto merged
innobase/btr/btr0btr.c:
Auto merged
innobase/buf/buf0buf.c:
Auto merged
innobase/buf/buf0flu.c:
Auto merged
innobase/buf/buf0lru.c:
Auto merged
innobase/dict/dict0dict.c:
Auto merged
innobase/dict/dict0mem.c:
Auto merged
innobase/fsp/fsp0fsp.c:
Auto merged
innobase/fut/fut0lst.c:
Auto merged
innobase/ha/hash0hash.c:
Auto merged
innobase/include/buf0buf.ic:
Auto merged
innobase/include/buf0lru.h:
Auto merged
innobase/include/data0data.h:
Auto merged
innobase/include/dict0dict.h:
Auto merged
innobase/include/dict0mem.h:
Auto merged
innobase/include/fsp0fsp.h:
Auto merged
innobase/include/hash0hash.h:
Auto merged
innobase/include/lock0lock.h:
Auto merged
innobase/include/log0log.h:
Auto merged
innobase/include/log0log.ic:
Auto merged
innobase/include/mem0dbg.ic:
Auto merged
innobase/include/mem0pool.h:
Auto merged
innobase/include/mtr0mtr.h:
Auto merged
innobase/include/sync0rw.h:
Auto merged
innobase/include/sync0sync.h:
Auto merged
innobase/include/trx0roll.h:
Auto merged
innobase/include/trx0trx.h:
Auto merged
innobase/include/ut0mem.h:
Auto merged
innobase/lock/lock0lock.c:
Auto merged
innobase/log/log0log.c:
Auto merged
innobase/mem/mem0dbg.c:
Auto merged
innobase/mem/mem0pool.c:
Auto merged
innobase/mtr/mtr0mtr.c:
Auto merged
innobase/pars/lexyy.c:
Auto merged
innobase/pars/pars0opt.c:
Auto merged
innobase/que/que0que.c:
Auto merged
innobase/rem/rem0cmp.c:
Auto merged
innobase/row/row0ins.c:
Auto merged
innobase/row/row0mysql.c:
Auto merged
innobase/row/row0upd.c:
Auto merged
innobase/srv/srv0srv.c:
Auto merged
innobase/srv/srv0start.c:
Auto merged
innobase/sync/sync0rw.c:
Auto merged
innobase/sync/sync0sync.c:
Auto merged
innobase/thr/thr0loc.c:
Auto merged
innobase/trx/trx0purge.c:
Auto merged
innobase/trx/trx0roll.c:
Auto merged
innobase/trx/trx0sys.c:
Auto merged
innobase/trx/trx0trx.c:
Auto merged
innobase/usr/usr0sess.c:
Auto merged
innobase/ut/ut0mem.c:
Auto merged
mysql-test/r/func_if.result:
Auto merged
mysql-test/r/type_date.result:
Auto merged
mysql-test/t/type_date.test:
Auto merged
mysql-test/t/type_decimal.test:
Auto merged
mysys/mf_tempfile.c:
Auto merged
netware/BUILD/nwbootstrap:
Auto merged
netware/Makefile.am:
Auto merged
scripts/mysqld_safe.sh:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
mysql-test/t/func_if.test:
Auto merged
sql/mysqld.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
support-files/my-innodb-heavy-4G.cnf.sh:
Auto merged
Build-tools/Do-compile:
Merge with 4.0
Build-tools/mysql-copyright:
Merge with 4.0
client/mysqltest.c:
Merge with 4.0
include/my_global.h:
Merge with 4.0
innobase/buf/buf0rea.c:
Merge with 4.0
innobase/data/data0type.c:
Merge with 4.0
innobase/ibuf/ibuf0ibuf.c:
Merge with 4.0
innobase/include/buf0buf.h:
Merge with 4.0
innobase/include/data0type.h:
Merge with 4.0
innobase/include/mem0mem.h:
Merge with 4.0
innobase/include/mem0mem.ic:
Merge with 4.0
innobase/log/log0recv.c:
Merge with 4.0
libmysql/libmysql.c:
Merge with 4.0
libmysqld/Makefile.am:
Merge with 4.0
mysql-test/r/range.result:
Merge with 4.0
mysql-test/r/type_decimal.result:
Merge with 4.0
mysql-test/t/range.test:
Merge with 4.0
netware/BUILD/mwenv:
Merge with 4.0
netware/mysql_test_run.c:
Merge with 4.0
scripts/mysql_install_db.sh:
Merge with 4.0
sql/field.cc:
Merge with 4.0
sql/field.h:
Merge with 4.0
sql/item_cmpfunc.h:
Merge with 4.0
support-files/my-huge.cnf.sh:
Merge with 4.0
support-files/my-large.cnf.sh:
Merge with 4.0
support-files/my-medium.cnf.sh:
Merge with 4.0
support-files/my-small.cnf.sh:
Merge with 4.0
support-files/mysql.spec.sh:
Merge with 4.0
configure.in:
Auto merged
Build-tools/Do-compile:
Auto merged
client/mysql.cc:
Auto merged
client/mysqladmin.c:
Auto merged
client/mysqlcheck.c:
Auto merged
client/mysqldump.c:
Auto merged
client/mysqlimport.c:
Auto merged
client/mysqlshow.c:
Auto merged
client/mysqltest.c:
Auto merged
include/my_global.h:
Auto merged
include/thr_alarm.h:
Auto merged
innobase/include/trx0roll.h:
Auto merged
innobase/include/trx0trx.h:
Auto merged
innobase/que/que0que.c:
Auto merged
innobase/srv/srv0srv.c:
Auto merged
innobase/trx/trx0purge.c:
Auto merged
innobase/trx/trx0roll.c:
Auto merged
innobase/trx/trx0trx.c:
Auto merged
innobase/usr/usr0sess.c:
Auto merged
isam/isamchk.c:
Auto merged
myisam/myisam_ftdump.c:
Auto merged
myisam/myisamchk.c:
Auto merged
myisam/myisampack.c:
Auto merged
mysys/default.c:
Auto merged
mysys/my_getopt.c:
Auto merged
mysys/my_init.c:
Auto merged
mysys/my_pthread.c:
Auto merged
netware/Makefile.am:
Auto merged
netware/init_db.sql:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
tools/mysqlmanager.c:
Auto merged
VC++Files/dbug/dbug.dsp:
Auto merged
VC++Files/heap/heap.dsp:
Auto merged
VC++Files/isam/isam.dsp:
Auto merged
VC++Files/libmysql/libmysql.dsp:
Auto merged
VC++Files/myisam/myisam.dsp:
Auto merged
VC++Files/myisammrg/myisammrg.dsp:
Auto merged
VC++Files/mysys/mysys.dsp:
Auto merged
VC++Files/libmysqld/libmysqld.dsp:
merge
client/mysqlbinlog.cc:
merge
extra/perror.c:
merge
include/mysql_com.h:
merge
libmysqld/Makefile.am:
merge
netware/BUILD/mwenv:
merge
sql/mysqld.cc:
merge
VC++Files/client/mysqladmin.dsp:
Auto merged
VC++Files/client/mysqldump.dsp:
Auto merged
VC++Files/client/mysqlimport.dsp:
Auto merged
VC++Files/client/mysqlshow.dsp:
Auto merged
VC++Files/dbug/dbug.dsp:
Auto merged
VC++Files/heap/heap.dsp:
Auto merged
VC++Files/innobase/innobase.dsp:
Auto merged
VC++Files/isam/isam.dsp:
Auto merged
VC++Files/isamchk/isamchk.dsp:
Auto merged
VC++Files/libmysql/libmysql.dsp:
Auto merged
VC++Files/mysql.dsw:
Auto merged
BitKeeper/deleted/.del-sync0ipm.ic~2024167f6418de39:
Auto merged
VC++Files/libmysqltest/myTest.dsp:
Auto merged
VC++Files/merge/merge.dsp:
Auto merged
VC++Files/my_print_defaults/my_print_defaults.dsp:
Auto merged
VC++Files/myisam/myisam.dsp:
Auto merged
VC++Files/myisam_ftdump/myisam_ftdump.dsp:
Auto merged
VC++Files/myisammrg/myisammrg.dsp:
Auto merged
VC++Files/mysqlbinlog/mysqlbinlog.dsp:
Auto merged
VC++Files/mysqlcheck/mysqlcheck.dsp:
Auto merged
VC++Files/mysqlshutdown/mysqlshutdown.dsp:
Auto merged
VC++Files/mysqlwatch/mysqlwatch.dsp:
Auto merged
VC++Files/mysys/mysys.dsp:
Auto merged
VC++Files/pack_isam/pack_isam.dsp:
Auto merged
VC++Files/perror/perror.dsp:
Auto merged
VC++Files/regex/regex.dsp:
Auto merged
VC++Files/replace/replace.dsp:
Auto merged
VC++Files/test1/test1.dsp:
Auto merged
VC++Files/thr_test/thr_test.dsp:
Auto merged
VC++Files/vio/vio.dsp:
Auto merged
VC++Files/zlib/zlib.dsp:
Auto merged
extra/my_print_defaults.c:
Auto merged
include/m_string.h:
Auto merged
include/mysql_embed.h:
Auto merged
include/mysql_version.h.in:
Auto merged
innobase/dict/dict0dict.c:
Auto merged
innobase/mem/mem0pool.c:
Auto merged
innobase/srv/srv0srv.c:
Auto merged
innobase/trx/trx0sys.c:
Auto merged
myisam/myisam_ftdump.c:
Auto merged
VC++Files/bdb/bdb.dsp:
Merge with 4.0
VC++Files/client/mysql.dsp:
Merge with 4.0
VC++Files/client/mysqlclient.dsp:
Merge with 4.0
VC++Files/comp_err/comp_err.dsp:
Merge with 4.0
VC++Files/libmysqld/examples/test_libmysqld.dsp:
Merge with 4.0
VC++Files/libmysqld/libmysqld.dsp:
Merge with 4.0
VC++Files/myisamchk/myisamchk.dsp:
Merge with 4.0
VC++Files/myisamlog/myisamlog.dsp:
Merge with 4.0
VC++Files/myisampack/myisampack.dsp:
Merge with 4.0
VC++Files/mysqldemb/mysqldemb.dsp:
Merge with 4.0
VC++Files/mysqlserver/mysqlserver.dsp:
Merge with 4.0
VC++Files/sql/mysqld.dsp:
Merge with 4.0
VC++Files/strings/strings.dsp:
Merge with 4.0
libmysqld/lib_sql.cc:
Merge with 4.0
libmysqld/libmysqld.def:
Merge with 4.0
mysql-test/r/func_str.result:
Merge with 4.0
mysql-test/r/handler.result:
auto
mysql-test/r/variables.result:
Merge with 4.0
mysql-test/t/func_str.test:
auto
mysql-test/t/handler.test:
auto
mysql-test/t/variables.test:
Merge with 4.0
scripts/make_win_src_distribution.sh:
auto
scripts/mysql_install_db.sh:
Use original file
sql/Makefile.am:
Merge with 4.0
sql/ha_innodb.cc:
auto
sql/item_strfunc.cc:
Merge with 4.0
sql/mysql_priv.h:
auto
sql/mysqld.cc:
Merge with 4.0
sql/set_var.cc:
Merge with 4.0
sql/slave.cc:
auto
sql/sql_class.h:
auto
sql/sql_handler.cc:
Merge with 4.0
strings/ctype-tis620.c:
Merge with 4.0
Ensured that all projects compile
Removed compiler warnings
Better setting of server_version variable.
Fix that make_win_src_distribution creates the privilege tables.
VC++Files/bdb/bdb.dsp:
Small, automatic changes
VC++Files/client/mysql.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/client/mysqladmin.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/client/mysqlclient.dsp:
Removed files that should only be used with mysql command line client
VC++Files/client/mysqldump.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/client/mysqlimport.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/client/mysqlshow.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/comp_err/comp_err.dsp:
Automatic changes
VC++Files/dbug/dbug.dsp:
Automatic changes
VC++Files/heap/heap.dsp:
automatic changes
VC++Files/innobase/innobase.dsp:
Automatic changes
VC++Files/isam/isam.dsp:
Automatic changes
VC++Files/isamchk/isamchk.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/libmysql/libmysql.dsp:
Automatic changes
VC++Files/libmysqld/examples/test_libmysqld.dsp:
Add missing files
VC++Files/libmysqld/libmysqld.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/libmysqltest/myTest.dsp:
Automatic changes
VC++Files/merge/merge.dsp:
Automatic changes
VC++Files/my_print_defaults/my_print_defaults.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/myisam/myisam.dsp:
automatic changes
VC++Files/myisam_ftdump/myisam_ftdump.dsp:
automatic changes
VC++Files/myisamchk/myisamchk.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/myisamlog/myisamlog.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/myisammrg/myisammrg.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/myisampack/myisampack.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/mysql.dsw:
Automatic changes
VC++Files/mysqlbinlog/mysqlbinlog.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/mysqlcheck/mysqlcheck.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/mysqldemb/mysqldemb.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/mysqlserver/mysqlserver.dsp:
Automatic changes
VC++Files/mysqlshutdown/mysqlshutdown.dsp:
Automatic changes
VC++Files/mysqlwatch/mysqlwatch.dsp:
Automatic changes
VC++Files/mysys/mysys.dsp:
Automatic changes
VC++Files/pack_isam/pack_isam.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/perror/perror.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/regex/regex.dsp:
Automatic changes
VC++Files/replace/replace.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/sql/mysqld.dsp:
Added support for projects 'classic', 'classic nt', 'pro' and 'pro nt'
VC++Files/strings/strings.dsp:
Removed duplicate code for strnlen
VC++Files/test1/test1.dsp:
Automatic changes
VC++Files/thr_test/thr_test.dsp:
Automatic changes
VC++Files/vio/vio.dsp:
Automatic changes
VC++Files/zlib/contrib/asm386/zlibvc.dsp:
Automatic changes
VC++Files/zlib/zlib.dsp:
Automatic changes
extra/my_print_defaults.c:
Fixed bug in --verbose
include/m_string.h:
Portability fix
include/mysql_embed.h:
Better setting of server_version variable
include/mysql_version.h.in:
Better license text handling
innobase/pars/pars0lex.l:
Remove compiler warnings
innobase/trx/trx0sys.c:
Remove compiler warnings
libmysqld/lib_sql.cc:
Better setting of server_version variable
libmysqld/libmysqld.def:
Add functions needed for mysql command line client
myisam/myisam_ftdump.c:
Remove compiler warnings
mysys/sha1.c:
Remove compiler warnings
scripts/make_win_src_distribution.sh:
Safety fix
scripts/mysql_install_db.sh:
Backport from 4.1 to allow make_win_src_distribution create the privilege tables
sql/Makefile.am:
Add new file mysqld_suffix.h
Remove not used file sql_olap.h
sql/ha_innodb.cc:
Remove not used variable
sql/mysqld.cc:
Better setting of server_version variable
sql/set_var.cc:
Fixed bug when showing lower_case_file_system
strings/ctype-tis620.c:
Remove compiler warnings
BitKeeper/etc/logging_ok:
auto-union
client/mysql.cc:
Auto merged
client/mysqltest.c:
Auto merged
innobase/btr/btr0btr.c:
Auto merged
innobase/dict/dict0dict.c:
Auto merged
innobase/dict/dict0load.c:
Auto merged
innobase/eval/eval0eval.c:
Auto merged
innobase/ibuf/ibuf0ibuf.c:
Auto merged
innobase/include/ut0mem.h:
Auto merged
innobase/lock/lock0lock.c:
Auto merged
innobase/row/row0ins.c:
Auto merged
innobase/row/row0mysql.c:
Auto merged
innobase/row/row0sel.c:
Auto merged
innobase/row/row0umod.c:
Auto merged
innobase/row/row0upd.c:
Auto merged
innobase/trx/trx0trx.c:
Auto merged
innobase/ut/ut0dbg.c:
Auto merged
innobase/ut/ut0mem.c:
Auto merged
myisam/mi_dynrec.c:
Auto merged
mysql-test/r/innodb.result:
Auto merged
mysql-test/t/fulltext.test:
Auto merged
mysql-test/t/rpl_rotate_logs.test:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_show.cc:
Auto merged
innobase/os/os0file.c:
Merge with 4.0.20
Ensure that we call F_UNLCK for files on which we call F_WRLCK.
This is to ensure that this code will be portable accross most platforms.
myisam/ft_boolean_search.c:
Merge with 4.0.20 (keep original file)
myisam/ft_parser.c:
Merge with 4.0.20 (keep original file)
myisam/ftdefs.h:
Merge with 4.0.20 (keep original file)
Reserve the MySQL LOCK_thread_count mutex when printing thd->query of
an arbitrary transaction; if we are printing thd->query of a transaction that
we know is currently executing inside InnoDB, then we know that MySQL cannot
meanwhile change thd->query, and no need to reserve the MySQL mutex; note
that this patch still leaves open the possibility of races in MySQL's
thd->query_len
innobase/trx/trx0trx.c:
Reserve the MySQL LOCK_thread_count mutex when printing thd->query of an arbitrary transaction; if we are printing thd->query of the a transaction that we know is currently executing inside InnoDB, then we know that MySQL cannot meanwhile change thd->query, and no need to reserve the MySQL mutex; note that thsi patch still leaves aopen the possibility of races in MySQL's thd->query_len
innobase/lock/lock0lock.c:
Reserve the MySQL LOCK_thread_count mutex when printing thd->query of an arbitrary transaction; if we are printing thd->query of the a transaction that we know is currently executing inside InnoDB, then we know that MySQL cannot meanwhile change thd->query, and no need to reserve the MySQL mutex; note that thsi patch still leaves aopen the possibility of races in MySQL's thd->query_len
innobase/include/trx0trx.h:
Reserve the MySQL LOCK_thread_count mutex when printing thd->query of an arbitrary transaction; if we are printing thd->query of the a transaction that we know is currently executing inside InnoDB, then we know that MySQL cannot meanwhile change thd->query, and no need to reserve the MySQL mutex; note that thsi patch still leaves aopen the possibility of races in MySQL's thd->query_len
sql/ha_innodb.cc:
Reserve the MySQL LOCK_thread_count mutex when printing thd->query of an arbitrary transaction; if we are printing thd->query of the a transaction that we know is currently executing inside InnoDB, then we know that MySQL cannot meanwhile change thd->query, and no need to reserve the MySQL mutex; note that thsi patch still leaves aopen the possibility of races in MySQL's thd->query_len