summaryrefslogtreecommitdiff
path: root/sql
Commit message (Collapse)AuthorAgeFilesLines
* BUG#31793 (log event corruption causes crash):mats@kindahl-laptop.dnsalias.net2007-11-121-10/+37
| | | | Corrections to get_str_len_and_pointer().
* Merge capulet.net:/home/bk/mysql-5.0-rplmats@capulet.net2007-11-097-66/+83
|\ | | | | | | into capulet.net:/home/mats/devel/b31793-mysql-5.0-rpl
| * Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.0-rplaelkin/elkin@koti.dsl.inet.fi2007-11-066-59/+79
| |\ | | | | | | | | | into koti.dsl.inet.fi:/home/elkin/MySQL/TEAM/FIXES/5.0/bug28597-log_name_upgrade
| | * Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.0-rplaelkin/elkin@koti.dsl.inet.fi2007-11-066-59/+79
| | |\ | | | | | | | | | | | | into koti.dsl.inet.fi:/home/elkin/MySQL/TEAM/FIXES/5.0/bug27571_asyn_killed_flags
| | | * Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.0-rplaelkin/elkin@koti.dsl.inet.fi2007-10-306-59/+79
| | | |\ | | | | | | | | | | | | | | | into koti.dsl.inet.fi:/home/elkin/MySQL/TEAM/FIXES/5.0/bug27571_asyn_killed_flags
| | | | * Bug #27571 asynchronousity in setting mysql_`query`::error andaelkin/elkin@koti.dsl.inet.fi2007-10-296-59/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Query_log_event::error_code A query can perform completely having the local var error of mysql_$query zero, where $query in insert, update, delete, load, and be binlogged with error_code e.g KILLED_QUERY while there is no reason do to so. That can happen because Query_log_event consults thd->killed flag to evaluate error_code. Fixed with implementing a scheme suggested and partly implemented at time of bug@22725 work-on. error_status is cached immediatly after the control leaves the main rows-loop and that instance always corresponds to `error' the local of mysql_$query functions. The cached value is passed to Query_log_event constructor, not the default thd->killed which can be changed in between of the caching and the constructing.
| * | | | Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.0-rplaelkin/elkin@koti.dsl.inet.fi2007-11-051-7/+4
| |\ \ \ \ | | |/ / / | |/| | | | | | | | into koti.dsl.inet.fi:/home/elkin/MySQL/TEAM/FIXES/5.0/bug28597-log_name_upgrade
| | * | | Bug #28597 Replication doesn't start after upgrading to 5.1.18aelkin/elkin@koti.dsl.inet.fi2007-11-051-7/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since bug@20166, which replaced the binlog file name generating to base on pidfile_name instead of the previous glob_hostname, the binlog file name suddenly started to be stored solely in the absolute path format, including a case when --log-bin option meant a relative path. What's more serious, the path for binlog file can lead unrequestedly to pid-file directory so that after any proper fix for this bug there might be similar to the bug report consequences for one who upgrades from post-fix-bug@20166-pre-fix-bug@28597 to post-fix-bug@28597. Fixed with preserving`pidfile_name' (intr.by bug@20166) but stripping off its directory part. This restores the original logics of storing the names in compatible with --log-bin option format and with the requirement for --log-bin ralative path to corresond to the data directory. Side effects for this fix: effective fixing bug@27070, refining its test; ensuring no overrun for buff can happen anymore (Bug#31836 insufficient space reserved for the suffix of relay log file name); bug#31837 --remove_file $MYSQLTEST_VARDIR/tmp/bug14157.sql missed in rpl_temporary.test; fixes Bug@28603 Invalid log-bin default location;
* | | | | BUG#31793 (log event corruption causes crash):mats@capulet.net2007-11-091-12/+85
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When running mysqlbinlog on a 64-bit machine with a corrupt relay log, it causes mysqlbinlog to crash. In this case, the crash is caused because a request for 18446744073709534806U bytes is issued, which apparantly can be served on a 64-bit machine (speculatively, I assume) but this causes the memcpy() issued later to copy the data to segfault. The request for the number of bytes is caused by a computation of data_len - server_vars_len where server_vars_len is corrupt in such a sense that it is > data_len. This causes a wrap-around, with the the data_len given above. This patch adds a check that if server_vars_len is greater than data_len before the substraction, and aborts reading the event in that case marking the event as invalid. It also adds checks to see that reading the server variables does not go outside the bounds of the available space, giving a limited amount of integrity check.
* | | | Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.0bar@bar.myoffice.izhnet.ru2007-10-3013-122/+296
|\ \ \ \ | | |/ / | |/| | | | | | into mysql.com:/home/bar/mysql-work/mysql-5.0-rpl-merge
| * | | Merge kindahl-laptop.dnsalias.net:/home/bkroot/mysql-5.0-rplmats@kindahl-laptop.dnsalias.net2007-10-261-3/+53
| |\ \ \ | | | | | | | | | | | | | | | into kindahl-laptop.dnsalias.net:/home/bk/b12691-mysql-5.0-rpl
| | * | | BUG#12691 (Exec_master_log_pos corrupted with SQL_SLAVE_SKIP_COUNTER):mats@kindahl-laptop.dnsalias.net2007-10-261-3/+53
| | | | | | | | | | | | | | | | | | | | | | | | | Adding code to keep skipping events while inside a transaction. Execution will start just after the transaction has been skipped.
| * | | | Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.0-rplbar@bar.myoffice.izhnet.ru2007-10-241-1/+1
| |\ \ \ \ | | | | | | | | | | | | | | | | | | into mysql.com:/home/bar/mysql-work/mysql-5.0.b31081
| | * | | | Bug#31081 server crash in regexp functionbar@mysql.com/bar.myoffice.izhnet.ru2007-10-241-1/+1
| | | |/ / | | |/| | | | | | | | | | | | Additional fix for valgrind warning
| * | | | Merge mysql.com:/home/bar/mysql-work/mysql-5.0bar@bar.myoffice.izhnet.ru2007-10-2413-119/+243
| |\ \ \ \ | | |_|/ / | |/| | | | | | | | into mysql.com:/home/bar/mysql-work/mysql-5.0-rpl-mr
| | * | | Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.0-rplaelkin/elkin@dsl-hkibras1-ff5fc300-23.dhcp.inet.fi2007-10-211-2/+3
| | |\ \ \ | | | |/ / | | |/| | | | | | | into dsl-hkibras1-ff5fc300-23.dhcp.inet.fi:/home/elkin/MySQL/TEAM/FIXES/5.0/bug26199-create_proc_syntax_slave
| | | * | Bug #26199 Replication Failure on Slave when using stored procs with ↵aelkin/elkin@dsl-hkibras1-ff5fc300-23.dhcp.inet.fi2007-10-211-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bit-type parameters. The value of the actual argument of BIT-type-arg stored procedure was binlogged as non-escaped sequence of bytes corresponding to internal representation of the bit value. The patch enforces binlogging of the bit-argument as a valid literal: prefixing the quoted bytes sequence with _binary. Note, that behaviour of Item_field::var_str for field_type() of MYSQL_TYPE_BIT is exceptional in that the returned string contains the binary representation even though result_type() of the item is INT_RESULT.
| | * | | Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.0-rplbar@bar.myoffice.izhnet.ru2007-10-162-50/+76
| | |\ \ \ | | | |_|/ | | |/| | | | | | | into mysql.com:/home/bar/mysql-work/mysql-5.0.b31081
| | | * | Bug#31081 server crash in regexp functionbar@mysql.com/bar.myoffice.izhnet.ru2007-10-052-50/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The "regex" library written by Henry Spencer does not support tricky character sets like UCS2. Fix: convert tricky character sets to UTF8 before calling regex functions.
| | * | | Bug #29136 erred multi-delete on trans table does not rollback the statementaelkin/elkin@koti.dsl.inet.fi2007-10-134-15/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | similar to bug_27716, but it was stressed on in the synopsis on that there is another side of the artifact affecting behaviour in transaction. Fixed with deploying multi_delete::send_error() - otherwise never called - and refining its logic to perform binlogging job if needed. The changeset includes the following side effects: - added tests to check bug_23333's scenarios on the mixture of tables for multi_update; - fixes bug@30763 with two-liner patch and a test coinciding to one added for bug_23333.
| | * | | Merge koti.dsl.inet.fi:/home/elkin/MySQL/TEAM/BARE/5.0aelkin/elkin@koti.dsl.inet.fi2007-10-042-2/+41
| | |\ \ \ | | | | | | | | | | | | | | | | | | into koti.dsl.inet.fi:/home/elkin/MySQL/TEAM/FIXES/5.0/bug29309-wrong_master_timestamp
| | | * | | Bug #29309 Incorrect "Seconds_Behind_Master" value in SHOW SLAVE STATUS ↵aelkin/elkin@koti.dsl.inet.fi2007-10-042-2/+41
| | | | |/ | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | after FLUSH LOGS Report claims that Seconds_behind_master behaves unexpectedly. Code analysis shows that there is an evident flaw in that treating of FormatDescription event is wrong so that after FLUSH LOGS on slave the Seconds_behind_master's calculation slips and incorrect value can be reported to SHOW SLAVE STATUS. Even worse is that the gap between the correct and incorrect deltas grows with time. Fixed with prohibiting changes to rpl->last_master_timestamp by artifical events (any kind of). suggestion as comments is added how to fight with lack of info on the slave side by means of new heartbeat feature coming. The test can not be done ealily fully determistic.
| | * | | Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.0-rplaelkin/elkin@koti.dsl.inet.fi2007-10-031-1/+10
| | |\ \ \ | | | | | | | | | | | | | | | | | | into koti.dsl.inet.fi:/home/elkin/MySQL/TEAM/FIXES/5.0/bug26000_show_slave_status_when_no_active_mi
| | | * \ \ Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.0-rplaelkin/elkin@koti.dsl.inet.fi2007-10-031-1/+10
| | | |\ \ \ | | | | | | | | | | | | | | | | | | | | | into koti.dsl.inet.fi:/home/elkin/MySQL/TEAM/FIXES/5.0/bug26000_show_slave_status_when_no_active_mi
| | | | * | | Bug #26000 SHOW SLAVE STATUS can crash mysqld during shutdown processaelkin/elkin@koti.dsl.inet.fi2007-09-261-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | active_mi has been reset (shutdown) at the time of quering with SHOW SLAVE STATUS so that at handling of SHOW an attempt to read its members segfaults. Fixed with checking the value of active_mi before to call show_master_info() Merely send_ok() is invoked when active_mi does not exist. A test can not be easiely written. Notice, there are more analogical cases in the code which require a similar treatment (to be reported as a bug separately).
| | * | | | | BUG#30752 rpl_dual_pos_advance valgrind (jump depends on uninitialized LOG_INFO)sven@murkla.(none)2007-10-032-3/+15
| | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: one thread could read uninitialized memory from (the stack of) another thread. Fix: swapped order of initializing the memory and making it available to the other thread. Fix: put lock around the statement that makes the memory available to the other thread. Fix: all fields of the struct are now initialized in the constructor, to avoid future problems.
| | * | | | Bug#29675 collation_connection is defined twice for the same valuebar@mysql.com/bar.myoffice.izhnet.ru2007-10-021-1/+0
| | | |_|/ | | |/| | | | | | | | | | | | Removing redundant initialization.
| | * | | Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-5.0-rpllars/lthalmann@dl145h.mysql.com2007-10-015-45/+45
| | |\ \ \ | | | |/ / | | | | | | | | | | into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge
| | | * | Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-5.0-rpllars/lthalmann@dl145h.mysql.com2007-09-105-45/+45
| | | |\ \ | | | | |/ | | | | | | | | | | into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge
| | | | * Merge quant.(none):/ext/mysql/bkroot/mysql-5.0-rplrafal@quant.(none)2007-08-291-1/+1
| | | | |\ | | | | | | | | | | | | | | | | | | into quant.(none):/ext/mysql/bk/mysql-5.0-bug21132
| | | | | * BUG#21132 (Slave fails to reconnect on update_slave_list):rafal@quant.(none)2006-12-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The update_slave_list() call is a remainder from attempts to implement failsafe replication. This code is now obsolete and not maintained (see comments in rpl_failsafe.cc). Inspecting the code one can see that this function do not interferre with normal slave operation and thus can be safely removed. This will solve the issue reported in the bug (errors on slave reconnection). A related issue is to remove unneccessary reconnections done by slave. This is handled in the patch for BUG#20435.
| | | | * | Bug #23333 stored function + non-transac table + transac table = breaks ↵aelkin/elkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi2007-08-214-44/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | stmt-based binlog Binlogging of the statement with a side effect like a modified non-trans table did not happen. The artifact involved all binloggable dml queries. Fixed with changing the binlogging conditions all over the code to exploit thd->transaction.stmt.modified_non_trans_table introduced by the patch for bug@27417. Multi-delete case has own specific addressed by another bug@29136. Multi-update case has been addressed by bug#27716 and patch and will need merging.
* | | | | | Merge mysql.com:/home/gluh/MySQL/Merge/5.0gluh@eagle.(none)2007-10-2340-210/+435
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | into mysql.com:/home/gluh/MySQL/Merge/5.0-opt
| * | | | | Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-5.0-optholyfoot/hf@hfmain.(none)2007-10-232-4/+4
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | into mysql.com:/home/hf/work/30638/my50-30638
| | * | | | | type conversions fixed to get rid of warningsholyfoot/hf@mysql.com/hfmain.(none)2007-10-232-4/+4
| | | | | | |
| * | | | | | Merge ssh://bk-internal.mysql.com//home/bk/mysql-5.0-optkaa@polly.(none)2007-10-231-1/+4
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | into polly.(none):/home/kaa/src/opt/mysql-5.0-opt
| | * \ \ \ \ \ Merge polly.(none):/home/kaa/src/opt/bug31742/my50-bug28550kaa@polly.(none)2007-10-231-1/+4
| | |\ \ \ \ \ \ | | | |/ / / / / | | |/| | | | | | | | | | | | | into polly.(none):/home/kaa/src/opt/mysql-5.0-opt
| | | * | | | | Fix for bug #31742: delete from ... order by function call that causeskaa@polly.(none)2007-10-221-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | an error, asserts server In case of a fatal error during filesort in find_all_keys() the error was returned without the necessary handler uninitialization. Fixed by changing the code so that handler uninitialization is performed before returning the error.
| * | | | | | | Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-optgkodinov/kgeorge@magare.gmz2007-10-231-3/+3
| |\ \ \ \ \ \ \ | | |/ / / / / / | | | | | | | | | | | | | | | | into magare.gmz:/home/kgeorge/mysql/autopush/B30825-new-5.0-opt
| | * | | | | | Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-5.0-optholyfoot/hf@hfmain.(none)2007-10-231-3/+3
| | |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | into mysql.com:/home/hf/work/30638/my50-30638
| | | * | | | | | type conversion fixed to get rid of warningsholyfoot/hf@mysql.com/hfmain.(none)2007-10-231-3/+3
| | | | | | | | |
| * | | | | | | | Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-optgkodinov/kgeorge@magare.gmz2007-10-238-16/+16
| |\ \ \ \ \ \ \ \ | | |/ / / / / / / | | | | | | | | | | | | | | | | | | into magare.gmz:/home/kgeorge/mysql/autopush/B30825-new-5.0-opt
| | * | | | | | | Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-5.0-optholyfoot/hf@hfmain.(none)2007-10-238-16/+16
| | |\ \ \ \ \ \ \ | | | |/ / / / / / | | | | | | | | | | | | | | | | | | into mysql.com:/home/hf/work/30638/my50-30638
| | | * | | | | | type conversions fixed to avoid warnings on Windowsholyfoot/hf@mysql.com/hfmain.(none)2007-10-238-16/+16
| | | | | | | | |
| * | | | | | | | Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-optgkodinov/kgeorge@magare.gmz2007-10-231-0/+3
| |\ \ \ \ \ \ \ \ | | |/ / / / / / / | | | | | | | | | | | | | | | | | | into magare.gmz:/home/kgeorge/mysql/autopush/B30825-new-5.0-opt
| | * | | | | | | Bug #28687: Search fails on '0000-00-00' date after sql_mode changegkodinov/kgeorge@magare.gmz2007-10-221-0/+3
| | |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When doing indexed search the server constructs a key image for faster comparison to the stored keys. While doing that it must not perform (and stop if they fail) the additional date checks that can be turned on by the SQL mode because there already may be values in the table that don't comply with the error checks. Fixed by ignoring these SQL mode bits while making the key image.
| * | | | | | | Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-optgkodinov/kgeorge@magare.gmz2007-10-2313-80/+142
| |\ \ \ \ \ \ \ | | |/ / / / / / | | | | | | | | | | | | | | | | into magare.gmz:/home/kgeorge/mysql/autopush/B30825-new-5.0-opt
| | * | | | | | Merge bk@192.168.21.1:mysql-5.0-optholyfoot/hf@hfmain.(none)2007-10-221-1/+6
| | |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | into mysql.com:/home/hf/work/30638/my50-30638
| | | * \ \ \ \ \ Merge mysql.com:/home/hf/work/29801/my50-29801holyfoot/hf@hfmain.(none)2007-10-221-1/+6
| | | |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into mysql.com:/home/hf/work/30638/my50-30638
| | | | * | | | | | bug #29801 Federated engine crashes local serverholyfoot/hf@mysql.com/hfmain.(none)2007-10-151-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | if remote server sends malicious response. We need to check if the SHOW TABLE STATUS query we issue inside the FEDERATED engine returned the result with the proper (or just sufficient) number of rows. Otherwise statements like row[12] can crash the server.