(All commit emails since 4.0.1 checked)
This had to be done now, before the 4.1 tree changes to much, to make it easy to propagate bug fixes to the 4.1 tree.
DBUG_ macro cleanup
buffer boundary cleanup
This changeset, although not fully tested, works for me better than
anything I've had so far, including what is in the repository. I will
push it unless something crashes while I am writing this :-)
of one of our users which replicates from a live server. So I now have a
lot of confidence in it and will push. It passes all tests, so I if I broke
somebody's code in 3.23 merge this is your fault - you should have had a good test
case :-)
fixed bug in LOAD DATA FROM MASTER
fixed rpl000001.result
Slave now replicates 3.23 master, with the exception of LOAD DATA INFILE,
which is still buggy. Will push this one after the pull/merge
Test of unsigned BIGINT values
Fixes for queries-per-hour
Cleanup of replication code (comments and portability fixes)
Make most of the binary log code 4G clean
Changed syntax for GRANT ... QUERIES PER HOUR
fixed too quick timeout in mysql-test-run which caused a race with the
new server getting started before the old one completely finished
shutdown. This should fix the pid warning we've been getting as well as
inconsistent results when running tests with the manager
first pull, merge,test, and get it to work.
The main change is the new replication code - now we have two slave threads
SQL thread and I/O thread. I have also re-written a lot of the code to
prepare for multi-master implementation.
I also documented IO_CACHE quite extensively and to some extend, THD class.
added extra/mysql_install.c - will work on it in 4.0, but it does not hurt
to have it sit in 3.23 tree for now since it will eventually be backported
to 3.23 anyway
Stop event and bugs the test suite could not catch
Did some big restructuring of binlog event classes - most important
change is that now each event class has exec_event method and one does
not need to modify slave core code to add a new event. Slave code is
now much smaller and easier to read
fixed test case to produce same results on txn-enabled binary.
temporary fix - permanent fix is it make mysqld behave the same with
MyISAM on auto_increment insert after delete from tbl_name regardless
of how the binary was compiled
sql/slave.cc
fixed concurrency bug with log_seq
sql/slave.h
last_log_seq needs to be updated atomically with pos
sql/sql_repl.cc
cleared up comment and fixed concurrency bug
slave will skip the first SQL_SLAVE_SKIP_COUNTER events on start -
this is needed to recover from broken replication when the next log
event(s) should just be skipped.
Rotate binlogs when max_binlog_size is reached
fixed slave to preserve temp tables on slave stop; slave start
added abort-slave-event-count option to mysqld to test the above
added a test case for temp tables with a contantly aborting slave
removed warning in sql_parse.cc
fixed thimble.cc to compile
send_file() is more stack-friendly - changed large static buffer to alloc_root()
fixed my_b_seek() to work with WRITE_CACHE
test case to make sure the slave starts correctly after being stopped
truncated words file so the replication tests will take less time
cleanup - remove unneeded daeamon restarts
sql/log_event.cc
fixed bug - do not confuse confused slaves even further if they try to
read less than LOG_EVENT_HEADER_LEN before the end of file
sql/mysqlbinlog.cc
give error if constructor fails
sql/mysqld.cc
--disconnect-slave-event-count for replication debugging
sql/slave.cc
--disconnect-slave-event-count
cleanup to remove unneeded sleeps when things go wrong - sleep only
when we have to
sql/slave.h
--disconnect-slave-event-count
test cases for ALTER TABLE ORDER BY and replication offset off by 22
confusion mystery bug (both pass)
this file needs to be deleted
sql/log_event.cc
fixed warnings
sql/log_event.h
fixed () #define bug
sql/mysqlbinlog.cc
fixed length argument - was supposed to be one less
sql/mysqld.cc
replicate-do/ignore-table now works, wild does not yet
sql/mysql_priv.h
updating argument to add_table_to_list() -- needed for replicate-do/ignore table
sql/slave.cc
changes fore replicate-do/ignore-table
close the socket before going to sleep sleeping after error
bad event was being freed too early
sql/slave.h
changes for replicate-do/ignore-table
sql/sql_class.cc
slave_thread variable to THD
sql/sql_class.h
added slave_thread to THD, fixed bug in end_time()
sql/sql_parse.cc
updating argument to add_tables_to_list()
sql/sql_table.cc
fixed bug in mysql_rm_table()
sql/sql_yacc.yy
fixed up add_table_to_list() calls to accept updating argument
sql/table.h
added updating to TABLE_LIST