Commit graph

38547 commits

Author SHA1 Message Date
mkindahl@dl145h.mysql.com
716c63ebaa Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl-merge
2008-01-30 11:25:54 +01:00
hezx@mail.hezx.com
afe8ac3128 Merge zhe@bk-internal.mysql.com:/home/bk/mysql-5.0-rpl
into  mail.hezx.com:/media/sda3/work/mysql/bkwork/bug26489_corruption_in_relay_log/5.0
2008-01-30 16:40:36 +08:00
hezx@mail.hezx.com
7572a9e391 update test result 2008-01-29 19:21:21 +08:00
hezx@mail.hezx.com
e4f37eab56 BUG#26489 Corruption in relay logs
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.
2008-01-29 11:56:48 +08:00
hezx@mail.hezx.com
750c4022f2 BUG#33862 completely failed DROP USER statement gets replicated
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
2008-01-25 15:02:26 +08:00
mats@unknown.kindahl.net
e4bad7a8d0 Post-merge fixes to make tests pass. 2008-01-08 22:22:40 +01:00
hezx@mail.hezx.com
87abfe06e3 Replace one overlooked return with DBUG_RETURN in function log_loaded_block 2008-01-06 20:16:28 +08:00
hezx@mail.hezx.com
e2676d0f1c Merge mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#32205/5.0
into  mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#32205/mysql-5.0-rpl
2008-01-06 15:39:46 +08:00
hezx@mail.hezx.com
5a5672d630 Fixed some test case after push of BUG#32205 2008-01-06 15:27:42 +08:00
hezx@mail.hezx.com
44a318efd5 Merge mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#28908/5.0
into  mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#32205/mysql-5.0-rpl
2008-01-06 15:18:45 +08:00
hezx@mail.hezx.com
287b981c87 Add missing include test file for rpl_server_id test 2008-01-06 15:17:47 +08:00
hezx@mail.hezx.com
987b67cd01 Merge mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#32205/5.0
into  mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#32205/mysql-5.0-rpl
2008-01-06 13:20:52 +08:00
sven@riska.(none)
72676b226b Merge ssandberg@bk-internal.mysql.com:/home/bk/mysql-5.0-rpl
into  riska.(none):/home/sven/bk/b26395-autocommit-xa/5.0-rpl
2008-01-02 14:23:14 +01:00
hezx@mail.hezx.com
d501c40629 Merge mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#28908/5.0
into  mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#28908/mysql-5.0-rpl
2007-12-24 11:08:39 +08:00
aelkin/elkin@koti.dsl.inet.fi
c5b597bc89 bug#30435
changes due to non-determinism in value of read_buffer_size.
2007-12-23 11:18:46 +02:00
aelkin/elkin@koti.dsl.inet.fi
d8100934a5 bug#30435
refining the test after it failed on pb.
2007-12-22 19:59:47 +02:00
aelkin/elkin@koti.dsl.inet.fi
7801f29041 Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.0-rpl
into  koti.dsl.inet.fi:/home/elkin/MySQL/TEAM/FIXES/5.0/bug33435-load_data_read_buffer_size
2007-12-21 22:37:10 +02:00
aelkin/elkin@koti.dsl.inet.fi
0ca3250e59 BUG#30435 loading large LOAD DATA INFILE breaks slave with
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
2007-12-21 22:34:43 +02:00
sven@riska.(none)
25d53f907c BUG#26395: if crash during autocommit update to transactional table on master, slave fails
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.
2007-12-21 20:30:23 +01:00
aelkin/elkin@koti.dsl.inet.fi
3624851643 Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.0-rpl
into  koti.dsl.inet.fi:/home/elkin/MySQL/TEAM/FIXES/5.0/bug31359-future_gpos
2007-12-21 15:44:06 +02:00
hezx@mail.hezx.com
2b4bc3e93c Merge mail.hezx.com:/media/sda3/work/mysql/bkroot/mysql-5.0-rpl
into  mail.hezx.com:/media/sda3/work/mysql/bkwork/bug#28908/5.0
2007-12-21 17:52:25 +08:00
aelkin/elkin@koti.dsl.inet.fi
1032038579 Bug #31359 change_master sets group_master_log_pos twice,
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.
2007-12-21 10:13:54 +02:00
mats@capulet.kindahl.net
1666ecf070 Merge capulet.kindahl.net:/home/mats/devel/b12691-mysql-5.0-rpl
into  capulet.kindahl.net:/home/mats/devel/fix-mysql-5.0-rpl
2007-12-21 07:52:07 +01:00
hezx@mail.hezx.com
329d1a7bf7 BUG#28908 Replication: set global server_id is not setting the session server_id
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.
2007-12-21 11:02:48 +08:00
mats@capulet.kindahl.net
f1c32705f1 BUG#12691 (Exec_master_log_pos corrupted with SQL_SLAVE_SKIP_COUNTER):
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.
2007-12-20 16:07:54 +01:00
mkindahl@dl145h.mysql.com
a9daa2cd86 Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl-merge
2007-12-19 14:49:04 +01:00
hezx@hezx.(none)
f858fe1064 Fixed some test case for BUG#32205 2007-12-18 15:43:51 +08:00
kostja@bodhi.(none)
4bb503568d Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  bodhi.(none):/opt/local/work/mysql-5.0-runtime
2007-12-15 17:00:18 +03:00
hezx@hezx.(none)
c2f00cc3f9 BUG#32205 Replaying statements from mysqlbinlog fails with a syntax error, replicates fine
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
2007-12-15 19:50:23 +08:00
tomas@whalegate.ndb.mysql.com
d2a93fd60b Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
2007-12-14 17:49:58 +01:00
kent/mysqldev@mysql.com/production.mysql.com
028ed33610 Raise version number after cloning 5.0.54 2007-12-14 16:58:12 +01:00
anozdrin/alik@station.
61b903f896 Merge station.:/mnt/raid/alik/MySQL/devel/5.0
into  station.:/mnt/raid/alik/MySQL/devel/5.0-rt
2007-12-14 15:57:36 +03:00
tomas@whalegate.ndb.mysql.com
70902cdd86 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
2007-12-14 06:53:55 +01:00
tomas@whalegate.ndb.mysql.com
4bc90fe469 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
2007-12-13 21:50:17 +01:00
tomas@whalegate.ndb.mysql.com
3a89198273 Bug #33168 Incorrectly handled parameters can make the TC crash during node failure
- during commit deadlock timeout needs to be at least 5 times db hearbeat
2007-12-13 21:31:38 +01:00
gluh@mysql.com/eagle.(none)
8be07b88df additional fix 2007-12-13 23:46:29 +04:00
gluh@mysql.com/eagle.(none)
2627f775be valgrind error fix 2007-12-13 21:13:08 +04:00
tomas@whalegate.ndb.mysql.com
6821f36837 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
2007-12-13 15:02:10 +01:00
tomas@whalegate.ndb.mysql.com
f84b45244d Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
2007-12-13 14:25:16 +01:00
gluh@mysql.com/eagle.(none)
9df070ed7c after merge fix 2007-12-13 15:47:23 +04:00
tomas@whalegate.ndb.mysql.com
b009d97f84 Bug #33206 signal not reset properly in ndb 2007-12-13 12:03:11 +01:00
gluh@eagle.(none)
ffeb563d60 Merge mysql.com:/home/gluh/MySQL/Merge/4.1-opt
into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
2007-12-13 14:53:24 +04:00
gluh@eagle.(none)
e039595029 Merge mysql.com:/home/gluh/MySQL/Merge/5.0
into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
2007-12-13 14:52:49 +04:00
sergefp@foxhole.(none)
9f4f6acc53 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  mysql.com:/home/psergey/mysql-5.0-bug32198
2007-12-13 13:39:37 +03:00
sergefp@mysql.com
dd0854db54 BUG#32198: Comparison of DATE with DATETIME still not using indexes correctly
- Make conditions like "date_col $CMP$ 'datetime-const'" range-sargable
2007-12-13 13:38:22 +03:00
gluh@mysql.com/eagle.(none)
4e50bb0ebe Merge mysql.com:/home/gluh/MySQL/Merge/4.1
into  mysql.com:/home/gluh/MySQL/Merge/4.1-opt
2007-12-13 14:38:01 +04:00
anozdrin/alik@station.
7d9dd21cd9 Merge station.:/mnt/raid/alik/MySQL/devel/5.0
into  station.:/mnt/raid/alik/MySQL/devel/5.0-rt
2007-12-13 12:01:04 +03:00
istruewing@stella.local
9217f01136 Dummy push to help pushbuild running again.
Fixed case of comment.
2007-12-12 19:49:08 +01:00
kostja@bodhi.(none)
4c83efbb95 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  bodhi.(none):/opt/local/work/mysql-5.0-runtime
2007-12-12 06:00:10 +03:00
istruewing@stella.local
fb93ba7a08 Merge stella.local:/home2/mydev/mysql-5.0-amain
into  stella.local:/home2/mydev/mysql-5.0-axmrg
2007-12-11 23:18:14 +01:00