- 30 Jan, 2008 2 commits
-
-
mkindahl@dl145h.mysql.com authored
into dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl-merge
-
hezx@mail.hezx.com authored
into mail.hezx.com:/media/sda3/work/mysql/bkwork/bug26489_corruption_in_relay_log/5.0
-
- 29 Jan, 2008 2 commits
-
-
hezx@mail.hezx.com authored
-
hezx@mail.hezx.com authored
Here is the scenario that causes the failure.(by Mats) 1. The to-be corrupt log event (let's call it X), is split into two packets B and C on the network level (net_write_buff()). The parts are X = (x',x''). The part x' ends up in packet B and part x'' ends up in packet C. Prior to the corrupt event X, the event Y has been written successfully, but has been split into two packets as well, which we call (y',y''). 2. The master sends packet A = (y'',x') to the slave, increases the packet sequence number, the slave receives the packet, but fails to reply before the master gets a timeout. 3. Since the master got a timeout, it reports failure, and aborts sending the binary log by exiting mysql_binlog_send(). However, it leaves the buffer intact, still holding y'' (but not x', since the write_pos is not increased). 4. After exiting mysql_binlog_send(), the master does a disconnection of the client thread, which involves sending an error message e to the client (i.e., the slave). 5. In this case, net_write_buff() is used again, but this time the old contents of the packet is used so that the new packet is D = (y'',e). Note that this will use a new packet sequence number, since the packet number was increased in step 2. 6. The slave receives the tail y'' of the Y log event, concatenates this with x' (which it already received), and writes the event (x',y'') it to the relay log since it hasn't noticed anything is amiss. 7. It then tries to read more bytes, which is either e (if the length given for X just happened to match the length given for Y, or just plain garbage because the slave is out of sync with what is actually sent. 8. After a while, the SQL thread tries to execute the event (x',y''), which is very likely to be just nonsense. The problem can be fixed by not resetting net->error after the call of mysql_binlog_send, so the error message will not be sent and the connection will be closed.
-
- 25 Jan, 2008 1 commit
-
-
hezx@mail.hezx.com authored
The problem is when create/rename/drop users, the statement was logged regardless of error, even if no data has been changed, the statement was logged. After this patch, create/rename/drop users don't write the binlog if the statement makes no changes, if the statement does make any changes, log the statement with possible error code. This patch is based on the patch for BUG#29749, which is not pushed
-
- 08 Jan, 2008 1 commit
-
-
mats@unknown.kindahl.net authored
-
- 06 Jan, 2008 6 commits
-
-
hezx@mail.hezx.com authored
-
hezx@mail.hezx.com authored
into mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#32205/mysql-5.0-rpl
-
hezx@mail.hezx.com authored
-
hezx@mail.hezx.com authored
into mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#32205/mysql-5.0-rpl
-
hezx@mail.hezx.com authored
-
hezx@mail.hezx.com authored
into mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#32205/mysql-5.0-rpl
-
- 02 Jan, 2008 1 commit
-
-
sven@riska.(none) authored
into riska.(none):/home/sven/bk/b26395-autocommit-xa/5.0-rpl
-
- 24 Dec, 2007 1 commit
-
-
hezx@mail.hezx.com authored
into mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#28908/mysql-5.0-rpl
-
- 23 Dec, 2007 1 commit
-
-
aelkin/elkin@koti.dsl.inet.fi authored
changes due to non-determinism in value of read_buffer_size.
-
- 22 Dec, 2007 1 commit
-
-
aelkin/elkin@koti.dsl.inet.fi authored
refining the test after it failed on pb.
-
- 21 Dec, 2007 8 commits
-
-
aelkin/elkin@koti.dsl.inet.fi authored
into koti.dsl.inet.fi:/home/elkin/MySQL/TEAM/FIXES/5.0/bug33435-load_data_read_buffer_size
-
aelkin/elkin@koti.dsl.inet.fi authored
read_buffer_size set on master BUG#33413 show binlog events fails if binlog has event size of close to max_allowed_packet The size of Append_block replication event was determined solely by read_buffer_size whereas the rest of replication code deals with max_allowed_packet. When the former parameter was set to larger than the latter there were two artifacts: the master could not read events from binlog; show master events did not show. Fixed with - fragmenting the used io-cached buffer into pieces each size of less than max_allowed_packet (bug#30435) - incrementing show-binlog-events handling thread's max_allowed_packet with the max estimated for the replication header size
-
sven@riska.(none) authored
Now, every transaction (including autocommit transactions) start with a BEGIN and end with a COMMIT/ROLLBACK in the binlog. Added a test case, and updated lots of test case result files.
-
aelkin/elkin@koti.dsl.inet.fi authored
into koti.dsl.inet.fi:/home/elkin/MySQL/TEAM/FIXES/5.0/bug31359-future_gpos
-
hezx@mail.hezx.com authored
into mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#28908/5.0
-
aelkin/elkin@koti.dsl.inet.fi authored
ignores future_group_master_log_p There was a redundant assignement. However, that's the only artifact. Wrt to future_group_master_log_position, there is no issue. The counter is supposed to be set at Log_event::exec_event(). It's used only by Innodb for recovery purposes.
-
mats@capulet.kindahl.net authored
into capulet.kindahl.net:/home/mats/devel/fix-mysql-5.0-rpl
-
hezx@mail.hezx.com authored
When set the server-id dynamically, the server_id member of current thread is not updated. Update the server_id member of current thread after updated the global variable value.
-
- 20 Dec, 2007 1 commit
-
-
mats@capulet.kindahl.net authored
Complementary patch since LOAD DATA INFILE was not covered in the previous patch. This patch adds a check so that the slave skip counter is not decreased to zero if seeing a BEGIN_LOAD_QUERY_EVENT, APPEND_BLOCK_EVENT, or CREATE_FILE_EVENT since these cannot end a group. The group is terminated by an EXECUTE_LOAD_QUERY_ EVENT or DELETE_FILE_EVENT.
-
- 19 Dec, 2007 1 commit
-
-
mkindahl@dl145h.mysql.com authored
into dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl-merge
-
- 18 Dec, 2007 1 commit
-
-
hezx@hezx.(none) authored
-
- 15 Dec, 2007 2 commits
-
-
kostja@bodhi.(none) authored
into bodhi.(none):/opt/local/work/mysql-5.0-runtime
-
hezx@hezx.(none) authored
The reason of this bug is that when mysqlbinlog dumps a query, the query is written to output with a delimeter appended right after it, if the query string ends with a '--' comment, then the delimeter would be considered as part of the comment, if there are any statements after this query, then it will cause a syntax error. Start a newline before appending delimiter after a query string
-
- 14 Dec, 2007 4 commits
-
-
tomas@whalegate.ndb.mysql.com authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
-
-
anozdrin/alik@station. authored
into station.:/mnt/raid/alik/MySQL/devel/5.0-rt
-
tomas@whalegate.ndb.mysql.com authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
-
- 13 Dec, 2007 7 commits
-
-
tomas@whalegate.ndb.mysql.com authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
-
tomas@whalegate.ndb.mysql.com authored
- during commit deadlock timeout needs to be at least 5 times db hearbeat
-
gluh@mysql.com/eagle.(none) authored
-
gluh@mysql.com/eagle.(none) authored
-
tomas@whalegate.ndb.mysql.com authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
-
tomas@whalegate.ndb.mysql.com authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
-
gluh@mysql.com/eagle.(none) authored
-