- 14 Mar, 2008 1 commit
-
-
hezx@mail.hezx.com authored
using a trig in SP For all 5.0 and up to 5.1.12 exclusive, when a stored routine or trigger caused an INSERT into an AUTO_INCREMENT column, the generated AUTO_INCREMENT value should not be written into the binary log, which means if a statement does not generate AUTO_INCREMENT value itself, there will be no Intvar event (SET INSERT_ID) associated with it even if one of the stored routine or trigger caused generation of such a value. And meanwhile, when executing a stored routine or trigger, it would ignore the INSERT_ID value even if there is a INSERT_ID value available set by a SET INSERT_ID statement. Starting from MySQL 5.1.12, the generated AUTO_INCREMENT value is written into the binary log, and the value will be used if available when executing the stored routine or trigger. Prior fix of this bug in MySQL 5.0 and prior MySQL 5.1.12 (referenced as the buggy versions in the text below), when a statement that generates AUTO_INCREMENT value by the top statement was executed in the body of a SP, all statements in the SP after this statement would be treated as if they had generated AUTO_INCREMENT by the top statement. When a statement that did not generate AUTO_INCREMENT value by the top statement but by a function/trigger called by it, an erroneous Intvar event would be associated with the statement, this erroneous INSERT_ID value wouldn't cause problem when replicating between masters and slaves of 5.0.x or prior 5.1.12, because the erroneous INSERT_ID value was not used when executing functions/triggers. But when replicating from buggy versions to 5.1.12 or newer, which will use the INSERT_ID value in functions/triggers, the erroneous value will be used, which would cause duplicate entry error and cause the slave to stop. The patch for 5.0 fixed it not to generate the erroneous Intvar event, another patch for 5.1 fixed it to ignore the SET INSERT_ID value when executing functions/triggers if it is replicating from a master of buggy versions.
-
- 15 Feb, 2008 1 commit
-
-
mkindahl@dl145h.mysql.com authored
into dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl
-
- 14 Feb, 2008 3 commits
-
-
aelkin/andrei@mysql1000.dsl.inet.fi authored
into mysql1000.dsl.inet.fi:/home/andrei/MySQL/MERGE/5.0-bug33931-assert_write_ignored_ev_when_init_slave_fails
-
aelkin/andrei@mysql1000.dsl.inet.fi authored
changes for an assert and an updated results file.
-
aelkin/andrei@mysql1000.dsl.inet.fi authored
into mysql1000.dsl.inet.fi:/home/andrei/MySQL/MERGE/5.0-bug33931-assert_write_ignored_ev_when_init_slave_fails
-
- 13 Feb, 2008 1 commit
-
-
aelkin/andrei@mysql1000.dsl.inet.fi authored
and bug#33932 assertion at handle_slave_sql if init_slave_thread() fails the asserts were caused by bug33931: having thd deleted at time of executing err: code plus a missed initialization; bug33932: initialization of slave_is_running member was missed; fixed with relocating mi members initialization and removing delete thd It is safe to do as deletion happens later explicitly in the caller of init_slave_thread(). Todo: at merging the test is better to be moved into suite/bugs for 5.x (when x>0).
-
- 12 Feb, 2008 2 commits
-
-
aelkin/andrei@mysql1000.dsl.inet.fi authored
into mysql1000.dsl.inet.fi:/home/andrei/MySQL/MERGE/pushed.mysql-5.0-rpl-bug33329-extra_rollback
-
aelkin/andrei@mysql1000.dsl.inet.fi authored
into mysql1000.dsl.inet.fi:/home/andrei/MySQL/MERGE/pushed.mysql-5.0-rpl-bug33329-extra_rollback
-
- 11 Feb, 2008 3 commits
-
-
mkindahl@dl145h.mysql.com authored
into dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl-merge
-
aelkin/andrei@mysql1000.dsl.inet.fi authored
into mysql1000.dsl.inet.fi:/home/andrei/MySQL/MERGE/mysql-5.0-rpl-bug33329-extra_rollback
-
mkindahl@dl145h.mysql.com authored
into dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl-merge
-
- 08 Feb, 2008 3 commits
-
-
aelkin/andrei@mysql1000.dsl.inet.fi authored
There was no instruction in the test that enforces the slave successfully connect to the master. The way the test was been written allowed the slave to had been late for rendezvous so that about-connecting time queries to the master failed and are error-logged to had been seen in Warnings of pb. Fixed with adding a sychronization primitive to the test. No test case is possible, observe error logs on pb. Todo: revise need of rpl_report.pl's rules due to failing execution of queries from get_master_verion_and_clock(). Any test should try to use a synchornization primitive like the current fix makes and do not let the slave to miss successful connecting.
-
kostja@dipika.(none) authored
into dipika.(none):/opt/local/work/mysql-5.0-runtime
-
davi@mysql.com/endora.local authored
The unsignedness of large integer user variables was not being properly preserved when feeded to prepared statements. This was happening because the unsigned flags wasn't being updated when converting the user variable is converted to a parameter. The solution is to copy the unsigned flag when converting the user variable to a parameter and take the unsigned flag into account when converting the integer to a string.
-
- 07 Feb, 2008 2 commits
-
-
kostja@dipika.(none) authored
-
msvensson@pilot.mysql.com authored
into pilot.mysql.com:/data/msvensson/mysql/mysql-5.0-runtime
-
- 06 Feb, 2008 2 commits
-
-
sven@riska.(none) authored
slash in filenames also for Create_file_log_event.
-
-
- 05 Feb, 2008 1 commit
-
-
aelkin/elkin@koti.dsl.inet.fi authored
to leave The artifact was caused by a flaw in concurrent accessing the slave's io thd by the io itself and a handling show slave status thread. Namely, show_master_info did not acquire mi->run_lock mutex that is specified for mi->io_thd member. Fixed with deploying the mutex locking and unlocking. The mutex is kept short time and without interleaving with mi->data_lock mutex. Todo: to report and fix an issue with sys_var_slave_skip_counter::{methods} seem to acquire incorrectly active_mi->rli.run_lock instead of the specified active_mi->rli.data_lock A test case is difficult to compose, so rpl_packet should continue serving as the indicator.
-
- 04 Feb, 2008 4 commits
-
-
aelkin/elkin@koti.dsl.inet.fi authored
does not use trans tables There had been two issues. Rollback statement was recorded in binlog even though a multi-update had not modified any non-transactional table. The reason for this artifact was a false initial value of multi_update::transactional_tables. Yet another artifact that explained on the bug page is that `ha_autocommit_or_rollback' works differently depending on whether a transaction engine has been compiled in. Fixed: with setting multi_update::transactional_tables to zero at initialization time. Multi-update on non-trans table won't cause ROLLBACK in binlog with either compilation option. The 2nd mentioned artifact comprises a self-standing issue (to be reported separately).
-
aelkin/elkin@koti.dsl.inet.fi authored
the reason for the failure were incorrect asserts. Removing asserts altogether as there is no the implication does not hold (as explained in the comments for the file).
-
mkindahl@dl145h.mysql.com authored
-
mkindahl@dl145h.mysql.com authored
-
- 01 Feb, 2008 6 commits
-
-
cbell/Chuck@mysql_cab_desk. authored
into mysql_cab_desk.:D:/source/c++/mysql-5.0-rpl-merge
-
cbell/Chuck@mysql_cab_desk. authored
This patch adds code to convert the path for LOAD DATA INFILE events to a Unix path which is needed for running mysql client on Windows.
-
mkindahl@dl145h.mysql.com authored
on the context.
-
mkindahl@dl145h.mysql.com authored
-
mkindahl@dl145h.mysql.com authored
-
mkindahl@dl145h.mysql.com authored
-
- 31 Jan, 2008 3 commits
-
-
mkindahl@dl145h.mysql.com authored
into dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl-merge
-
mkindahl@dl145h.mysql.com authored
-
mkindahl@dl145h.mysql.com authored
-
- 30 Jan, 2008 4 commits
-
-
mkindahl@dl145h.mysql.com authored
-
mkindahl@dl145h.mysql.com authored
-
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.
-
- 27 Jan, 2008 1 commit
-
-
tsmith@ramayana.hindu.god authored
and so that it works correctly on Windows.
-
- 25 Jan, 2008 1 commit
-
-
tsmith@ramayana.hindu.god authored
-