Commit graph

280 commits

Author SHA1 Message Date
mats@mats-laptop.(none)
c14426aefe Merge mkindahl@bk-internal.mysql.com:/home/bk/mysql-5.1-bugteam
into  mats-laptop.(none):/home/bk/b29020-mysql-5.1-rpl
2008-03-28 14:52:33 +01:00
mats@mats-laptop.(none)
c8c4500a98 BUG#29020 (Event results not correctly replicated to slave in RBR):
The bug allow multiple executing transactions working with non-transactional
to interfere with each others by interleaving the events of different trans-
actions.

Bug is fixed by writing non-transactional events to the transaction cache and
flushing the cache to the binary log at statement commit. To mimic the behavior
of normal statement-based replication, we flush the transaction cache in row-
based mode when there is no committed statements in the transaction cache,
which means we are committing the first one. This means that it will be written
to the binary log as a "mini-transaction" with just the rows for the statement.

Note that the changes here does not take effect when building the server with
HAVE_TRANSACTIONS set to false, but it is not clear if this was possible before
this patch either.

For row-based logging, we also have that when AUTOCOMMIT=1, the code now always
generates a BEGIN/COMMIT pair for single statements, or BEGIN/ROLLBACK pair in the
case of non-transactional changes in a statement that was rolled back. Note that
for the case where changes to a non-transactional table causes a rollback due
to error, the statement will now be logged with a BEGIN/ROLLBACK pair, even
though some changes has been committed to the non-transactional table.
2008-03-28 13:16:41 +01:00
istruewing@stella.local
c882b87110 Merge stella.local:/home2/mydev/mysql-5.1-ateam
into  stella.local:/home2/mydev/mysql-5.1-axmrg
2008-03-26 10:56:03 +01:00
istruewing@stella.local
44fbe74e1e Merge stella.local:/home2/mydev/mysql-5.1-amain
into  stella.local:/home2/mydev/mysql-5.1-axmrg
2008-03-26 10:27:00 +01:00
svoj@mysql.com/june.mysql.com
b799ea244c BUG#34768 - nondeterministic INSERT using LIMIT logged in stmt mode
if binlog_format=mixed

Addition to fix for BUG#34768: fixed test case failures discovered
by pushbuild.
2008-03-25 17:28:12 +04:00
istruewing@stella.local
b67add660f Post-merge fixes 2008-03-14 21:37:19 +01:00
svoj@mysql.com/june.mysql.com
2f4bb0f115 BUG#28248 - mysqldump results with MERGE ... UNION=() cannot be executed
After merge fix.
2008-03-15 00:24:10 +04:00
mkindahl@dl145h.mysql.com
f48aa05fd0 Merge mkindahl@bk-internal.mysql.com:/home/bk/mysql-5.1-new-rpl
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl
2008-03-14 18:18:14 +01:00
mkindahl@dl145h.mysql.com
c5fefc688c Post-merge fixes. 2008-03-14 17:52:57 +01:00
svoj@april.(none)
3a7bcaf7d6 Merge mysql.com:/home/svoj/devel/mysql/BUG13861/mysql-5.0-engines
into  mysql.com:/home/svoj/devel/mysql/BUG13861/mysql-5.1-engines
2008-03-14 17:54:17 +04:00
mkindahl@dl145h.mysql.com
b5ebc67855 Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl
2008-03-12 13:07:35 +01:00
sven@riska.(none)
38b406cec8 Removed pushbuild errors.
Problem: rpl_variables_stm.test used a character set and a collation which
are not included on all platforms.
Fix: replace the character set and collation by ones that are included on
all platforms. (rpl_variables_stm does not rely on which character set is
used, the only important aspect is the fact that it changes.)
2008-03-11 18:43:29 +01:00
antony@pcg5ppc.xiphis.org
820068f1b7 Merge pcg5ppc.xiphis.org:/Network/Servers/anubis.xiphis.org/home/antony/work/mysql-5.1-engines
into  pcg5ppc.xiphis.org:/Network/Servers/anubis.xiphis.org/home/antony/work/merge.20080307/mysql-5.1
2008-03-07 13:46:29 -08:00
sven@riska.(none)
81b1d712bf BUG#31168: @@hostname does not replicate
Problem: in mixed and statement mode, a query that refers to a
system variable will use the slave's value when replayed on
slave. So if the value of a system variable is inserted into a
table, the slave will differ from the master.
Fix: mark statements that refer to a system variable as "unsafe",
meaning they will be replicated by row in mixed mode and produce a warning
in statement mode. There are some exceptions: some variables are actually
replicated. Those should *not* be marked as unsafe.
BUG#34732: mysqlbinlog does not print default values for auto_increment variables
Problem: mysqlbinlog does not print default values for some variables,
including auto_increment_increment and others. So if a client executing
the output of mysqlbinlog has different default values, replication will
be wrong.
Fix: Always print default values for all variables that are replicated.
I need to fix the two bugs at the same time, because the test cases would
fail if I only fixed one of them.
2008-03-07 13:59:36 +01:00
aelkin/andrei@mysql1000.(none)
9c2ef8377f Bug #28780 report_host is not available through SELECT @@report_host
merging and post-make-test changes.
2008-03-07 14:39:37 +02:00
aelkin/andrei@mysql1000.(none)
93737d3f7a Merge mysql1000.(none):/home/andrei/MySQL/FIXES/5.1/bug22234-Extra_Slave_Col_Slave_should_stop_on_Error_Field
into  mysql1000.(none):/home/andrei/MySQL/MERGE/5.1
2008-03-06 20:35:59 +02:00
aelkin/andrei@mysql1000.(none)
65bb7d3e2d Merge mysql1000.(none):/home/andrei/MySQL/FIXES/5.1/bug28780_report_host_no_show
into  mysql1000.(none):/home/andrei/MySQL/MERGE/5.1
2008-03-06 20:33:29 +02:00
aelkin/andrei@mysql1000.(none)
7d0a83ce1e Bug #22234 Extra Slave Col: Slave should stop on Error Field d of table
There was a failure in that show slave status displayed a wrong message
when slave stopped at processing a row event inserting to a default-less
column.

The problem seem to have ceased after recent fixes in rbr code.
However, the test was not updated to carry testing of the case commented-out.

Uncommenting and editing the test.
Notice, Bug#23907 is most probably a duplicate of this one.
2008-03-06 20:32:47 +02:00
aelkin/andrei@mysql1000.(none)
0958a508f8 Bug #28780 report_host is not available through SELECT @@report_host
There was no way to see if report-{host,port,user,password} were set up.

Fixed with introducing new global variables.
The variables are made read-only because of a possible need to change them
most probably require the slave server restart.

Todo: transform the startup options to be CHANGE master parameters - i.e
to deprecate `report-' options, and to change the new vars 
to be updatable at time of CHANGE master executes with new
values.
2008-03-05 12:25:55 +02:00
mkindahl@dl145h.mysql.com
15e7050499 Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.1
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl
2008-03-05 10:16:20 +01:00
skozlov/ksm@mysql.com/virtop.(none)
46c0342279 WL#4091, fix for rpl_flushlog_loop for windows platforms 2008-03-02 20:17:39 +03:00
skozlov/ksm@mysql.com/virtop.(none)
e9b8538fdc WL#4091, enable rpl_flushlog_loop.test and fix for rpl_drop_temp.test 2008-03-01 00:05:23 +03:00
davi@buzz.(none)
2905909d89 Merge buzz.(none):/home/davi/mysql-5.0-runtime
into  buzz.(none):/home/davi/mysql-5.1-runtime
2008-02-28 20:22:50 -03:00
skozlov/ksm@mysql.com/virtop.(none)
0771579b82 Bug#32663, Bug#33045, Bug#23533, WL#4091 2008-02-29 00:50:15 +03:00
skozlov/ksm@mysql.com/virtop.(none)
3c108889fb WL#4091, replace sleeps 2008-02-28 14:36:14 +03:00
svoj@mysql.com/june.mysql.com
cf50a67cca BUG#13861 - START SLAVE UNTIL may stop 1 evnt too late if
log-slave-updates and circul repl

After merge fixes.
2008-02-27 21:46:06 +04:00
svoj@june.mysql.com
6c6afd7130 Merge mysql.com:/home/svoj/devel/mysql/BUG13861/mysql-5.0-engines
into  mysql.com:/home/svoj/devel/mysql/BUG13861/mysql-5.1-engines
2008-02-27 17:43:54 +04:00
aelkin/andrei@mysql1000.(none)
49915eb88a Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.1-new-rpl
into  mysql1000.(none):/home/andrei/MySQL/FIXES/5.1/bug31316-sss_server_id_clashes
2008-02-20 23:25:01 +02:00
aelkin/andrei@mysql1000.(none)
7e93d94ce5 Bug #31316 Report server id clashes in SHOW SLAVE STATUS
"Server_IO_State" field

Critical error messages from get_master_version_and_clock() were written
only to the slave errorlog while Show slave status did not display any
incident happened.

Although the artifact was reported for a particular --replicate-same-server-id
related issue the fix refines all critical error reporting with 
deploying rli->report().

The test for the bug covers only --replicate-same-server-id error reporting.
2008-02-20 23:18:01 +02:00
mkindahl@dl145h.mysql.com
482997ea65 Removing deliberately generated errors for rpl_bug33931 test
and moving test to replication suite.
2008-02-19 19:59:48 +01:00
mkindahl@dl145h.mysql.com
e8e74a734f Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl-merge
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl
2008-02-19 14:47:29 +01:00
anozdrin/alik@quad.
f4659b38af Merge quad.:/mnt/raid/alik/MySQL/devel/5.1
into  quad.:/mnt/raid/alik/MySQL/devel/5.1-rt-merged
2008-02-18 18:12:37 +03:00
mkindahl@dl145h.mysql.com
fd5d7fa761 Fixing test rpl_events to not give false failures. 2008-02-14 10:53:12 +01:00
mkindahl@dl145h.mysql.com
b1fadc4cf9 The test rpl_row_charset and it dependent rpl_ndb_charset is
irrelevant to execute since the charset information does not
affect replication for row-based replication. The row-based
versions of the tests were removed, and the statement-based
version of the test was made executable by all three modes.

This involves removing any lines that causes the test to be
dependent on the contents of the binary log, and instead we
just check that the replication works as it should.
2008-02-13 11:37:06 +01:00
anozdrin/alik@quad.
d36d243d3d Fix for Bug#32538: View definition picks up character set,
but not collation.

The problem here was that text literals in a view were always
dumped with character set introducer. That lead to loosing
collation information.

The fix is to dump character set introducer only if it was
in the original query. That is now possible because there 
is no problem any more of loss of character set of string
literals in views -- after WL#4052 the view is dumped 
in the original character set.
2008-02-12 22:09:16 +03:00
sven@riska.(none)
5fb3cc65c3 Moved mysql-test/suite/rpl/rpl_variables.test into
mysql-test/t/variables.test, because:
 - mysql-test/suite/rpl/t/rpl_variables.test does not replicate anything,
so should not be in the rpl suite.
 - mysql-test/t/variables.test is the place for testing variable-related
problems and features.
 - I will soon commit a patch containing a test case that tests
replication of variables. It would be good if I could call the test case
mysql-test/suite/rpl/t/rpl_variables.test. I'm making place for that now.
2008-02-12 17:22:04 +01:00
mkindahl@dl145h.mysql.com
d4720a4ea1 Updating result file for rpl_loaddata_map. 2008-02-05 19:44:16 +01:00
mkindahl@dl145h.mysql.com
7e0f4a6fa7 Merge mkindahl@bk-internal.mysql.com:/home/bk/mysql-5.1-new-rpl
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl
2008-02-05 14:52:20 +01:00
mkindahl@dl145h.mysql.com
1dc96b388e Fixing result change after merge. 2008-02-04 14:29:23 +01:00
mkindahl@dl145h.mysql.com
1604acd9bf Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl-merge
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl-merge
2008-02-04 12:33:28 +01:00
mkindahl@dl145h.mysql.com
d6fd94f77b More fixes to remove test failures in pushbuild. 2008-02-04 12:12:03 +01:00
mkindahl@dl145h.mysql.com
ec9d14f844 Yet more changes to fix the merge clone. 2008-02-04 08:43:22 +01:00
mkindahl@dl145h.mysql.com
e493906588 Minor fix to make rpl_loaddata_map pass without warnings. 2008-02-04 06:49:15 +01:00
hezx@mail.hezx.com
4371a7888d Merge zhe@bk-internal.mysql.com:/home/bk/mysql-5.1-new-rpl
into  mail.hezx.com:/media/sda3/work/mysql/bkwork/bug33862_failed_drop_user/5.1
2008-02-01 10:27:03 +08:00
mkindahl@dl145h.mysql.com
4c95b29614 Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.1
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl-merge
2008-01-31 17:46:50 +01:00
aelkin/andrei@mysql1000.(none)
8e45696765 bug#32971 manual merge of two tests results 2008-01-31 18:12:58 +02:00
mkindahl@dl145h.mysql.com
2d9c3b715d Fixes to make tests pass on pushbuild. 2008-01-31 15:53:47 +01:00
mkindahl@dl145h.mysql.com
6aacc6415a Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl-merge
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl-merge
2008-01-31 12:32:48 +01:00
hezx@mail.hezx.com
43c4a4c359 Post merge fix 2008-01-31 16:51:55 +08:00
mkindahl@dl145h.mysql.com
018cb16b3a Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl-merge
2008-01-30 12:53:33 +01:00