------------------------------------------------------------
revno: 2932 committer: Joerg Bruehe <joerg@mysql.com> branch nick: clone-5.5 timestamp: Fri 2009-12-25 17:02:08 +0100 message: Backport into the 5.5.1-m2 release build: | Bug#49898 - Fix for bug#37408 introduces a linker error | | the declaration of THR_LOCK_myisam_mmap in mi_static | is redundant as it accessible via the extern declaration | in include/myisam.h ------------------------------------------------------------ revno: 2931 committer: Joerg Bruehe <joerg@mysql.com> branch nick: clone-5.5 timestamp: Wed 2009-12-23 22:42:44 +0100 message: Remove the "fix_privilege_tables" manual from the RPM spec file, there is none in 5.5. ------------------------------------------------------------ revno: 2930 committer: Joerg Bruehe <joerg@mysql.com> branch nick: clone-5.5 timestamp: Wed 2009-12-23 13:38:19 +0100 message: Backport a fix from "trunk" into 5.5.1 which came after cloning only. Original comment: revno: 2930 | revision-id: alik@sun.com-20091223120351-m6l2t721tvtsiumu | parent: alik@sun.com-20091223104155-cq3uw9l2yvg6jmgc | committer: Alexander Nozdrin <alik@sun.com> | branch nick: mysql-trunk-bugfixing | timestamp: Wed 2009-12-23 15:03:51 +0300 | message: | Backporting fix for Bug#49834 from mysql-next-mr-bugfixing | into mysql-trunk-bugfixing. | | Original revision: | ------------------------------------------------------------ | revision-id: vvaintroub@mysql.com-20091222115311-bam0xorumd8gvjyo | parent: mattias.jonsson@sun.com-20091221104426-x2e6c93x8iik4fo0 | committer: Vladislav Vaintroub <vvaintroub@mysql.com> | branch nick: mysql-next-mr-bugfixing | timestamp: Tue 2009-12-22 12:53:11 +0100 | message: | Bug#49834 - fixed a bug introduced by mismerge. | restore original innobase version ------------------------------------------------------------ revno: 2929 committer: Joerg Bruehe <joerg@mysql.com> branch nick: clone-5.5 timestamp: Wed 2009-12-23 13:30:52 +0100 message: Take an essential fix from "trunk" into 5.5.1-m2 which arrived only after cloning. Original comment: | revision-id: vvaintroub@mysql.com-20091222204937-bcjk6at5mzek126g | parent: mikael@mysql.com-20091219122600-somflpgtzosglijm | committer: Vladislav Vaintroub <vvaintroub@mysql.com> | branch nick: mysql-trunk-bugfixing | timestamp: Tue 2009-12-22 21:49:37 +0100 | message: | Fix build error with CMake 2.8 (mysql_stmt_next_result not exported | by shared embedded library) ------------------------------------------------------------ revno: 2875.12.1 committer: Vladislav Vaintroub <vvaintroub@mysql.com> branch nick: mysql-trunk-bugfixing timestamp: Tue 2009-12-22 21:49:37 +0100 message: Fix build error with CMake 2.8 (mysql_stmt_next_result not exported by shared embedded library) ------------------------------------------------------------ revno: 2928 committer: Joerg Bruehe <joerg@mysql.com> branch nick: clone-5.5 timestamp: Wed 2009-12-23 13:06:41 +0100 message: The "semisync" plugin file name has lost its introductory "lib", adapt the file lists for the subpackages. This is a part missing from the fix for bug#48351. ------------------------------------------------------------ revno: 2927 committer: Joerg Bruehe <joerg@mysql.com> branch nick: clone-5.5 timestamp: Tue 2009-12-22 23:22:42 +0100 message: Change RPM file naming: - Suffix like "-m2", "-rc" becomes part of version as "_m2", "_rc". - Release counts from 1, not 0. This is done for both the "generic" RPMs and the "shared-compat" ones. It includes introducing a new version variable "MYSQL_U_SCORE_VERSION" in "configure.in", where the dash is replaced by an underscore: 5.5.1-m2 -> 5.5.1_m2 ------------------------------------------------------------ revno: 2926 tags: clone-5.5.1-build committer: Alexander Nozdrin <alik@sun.com> branch nick: mysql-trunk-build timestamp: Tue 2009-12-22 09:31:24 +0300 message: Manual merge from mysql-trunk. Conflicts: - storage/ibmdb2i/ha_ibmdb2i.cc ------------------------------------------------------------ revno: 2875.9.25 committer: Alexander Nozdrin <alik@sun.com> branch nick: mysql-trunk timestamp: Mon 2009-12-21 18:35:38 +0300 message: Fix default.conf. ------------------------------------------------------------ revno: 2875.9.24 committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-mysql-trunk-bugfixing timestamp: Mon 2009-12-21 11:38:31 +0100 message: Bug#48737: Partitions: search fails with ucs2 Recommit of patch: http://lists.mysql.com/commits/91400 Test case only (code part was pushes as bug-49028) ------------------------------------------------------------ revno: 2875.9.23 committer: Alexander Nozdrin <alik@sun.com> branch nick: mysql-trunk-bugfixing timestamp: Mon 2009-12-21 13:20:43 +0300 message: Disable plugin_load.test due to Bug#42144. ------------------------------------------------------------ revno: 2875.9.22 committer: Mikael Ronstrom <mikael@mysql.com> branch nick: mysql-trunk-bugfixing timestamp: Sat 2009-12-19 13:26:00 +0100 message: Post-merge fix: wait for statement result before disconnecting. Otherwise the statement might affect unrelated tests. mysql-test/t/lock_multi.test, Reap statement status ------------------------------------------------------------ revno: 2875.9.21 committer: Alexander Nozdrin <alik@sun.com> branch nick: mysql-trunk-bugfixing timestamp: Sat 2009-12-19 11:33:33 +0300 message: Auto-merge from mysql-trunk. ------------------------------------------------------------ revno: 2875.11.9 committer: Alexander Nozdrin <alik@sun.com> branch nick: mysql-trunk-merge timestamp: Sat 2009-12-19 11:20:21 +0300 message: Auto-merge from mysql-trunk. ------------------------------------------------------------ revno: 2875.11.8 committer: Alexey Kopytov <Alexey.Kopytov@Sun.com> branch nick: mysql-trunk-merge timestamp: Thu 2009-12-17 20:10:18 +0300 message: Manual merge from mysql-5.1-bugteam. Re-enabled binlog.binlog_index. ------------------------------------------------------------ revno: 2661.483.27 committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.1-bugteam-merge timestamp: Thu 2009-12-17 15:47:22 +0000 message: merge mysql-5.1-bugteam (local) --> mysql-5.1-bugteam ------------------------------------------------------------ revno: 2661.489.1 committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.1-bugteam timestamp: Wed 2009-12-16 19:52:56 +0000 message: BUG#49638 binlog_index fails in mysql-trunk-merge Calling push_warning/push_warning_printf with a level of WARN_LEVEL_ERROR *is* a bug. We should either use my_error(), or WARN_LEVEL_WARN. ------------------------------------------------------------ revno: 2875.11.7 committer: Alexey Kopytov <Alexey.Kopytov@Sun.com> branch nick: mysql-trunk-merge timestamp: Thu 2009-12-17 18:09:04 +0300 message: Automerge from mysql-5.1-bugteam to mysql-trunk-merge. ------------------------------------------------------------ revno: 2661.483.26 committer: Andrei Elkin <aelkin@mysql.com> branch nick: mysql-5.1-bugteam timestamp: Thu 2009-12-17 16:50:45 +0200 message: merge from 5.0 with bug@49740 fixes ------------------------------------------------------------ revno: 1810.3975.6 committer: Andrei Elkin <aelkin@mysql.com> branch nick: mysql-5.0-bugteam timestamp: Thu 2009-12-17 16:34:11 +0200 message: Bug #49740 rpl.rpl_temporary fails in PB2 in mysql-trunk-merge The test allowed random coincidence of connection ids for two concurrent sessions performing CREATE/DROP temp tables. Fixed with correcting the test. The sessions connection ids are not changed from their defaults anymore. ------------------------------------------------------------ revno: 2661.483.25 committer: Satya B <satya.bn@sun.com> branch nick: mysql-5.1-bugteam-37408 timestamp: Thu 2009-12-17 17:47:34 +0530 message: merge to mysql-5.1-bugteam ------------------------------------------------------------ revno: 2661.488.1 committer: Martin Hansson <martin.hansson@sun.com> branch nick: 5.1bt-commit timestamp: Thu 2009-12-17 10:55:18 +0100 message: Bug#47650: using group by with rollup without indexes returns incorrect results with where An outer join of a const table (outer) and a normal table (inner) with GROUP BY on a field from the outer table would optimize away GROUP BY, and thus trigger the optimization to do away with a temporary table if grouping was performed on columns from the const table, hence executing the query with filesort without temporary table. But this should not be done if there is a non-indexed access to the inner table, since filesort does not handle joins. It expects either ref access, range ditto or table scan. The join condition will thus not be applied. Fixed by always forcing execution with temporary table in the case of ROLLUP with a query involving an outer join. This is a slightly broader class of queries than need fixing, but it is hard to ascertain the position of a ROLLUP field wrt outer join with current query representation. ------------------------------------------------------------ revno: 2661.483.24 committer: Satya B <satya.bn@sun.com> branch nick: mysql-5.1-bugteam-37408 timestamp: Thu 2009-12-17 17:15:13 +0530 message: merge mysql-5.0-bugteam to mysql-5.1-bugteam ------------------------------------------------------------ revno: 1810.3975.5 committer: Satya B <satya.bn@sun.com> branch nick: mysql-5.0-bugteam-37408 timestamp: Thu 2009-12-17 16:55:50 +0530 message: Fix for Bug#37408 - Compressed MyISAM files should not require/use mmap() When compressed myisam files are opened, they are always memory mapped sometimes causing memory swapping problems. When we mmap the myisam compressed tables of size greater than the memory available, the kswapd0 process utilization is very high consuming 30-40% of the cpu. This happens only with linux kernels older than 2.6.9 With newer linux kernels, we don't have this problem of high cpu consumption and this option may not be required. The option 'myisam_mmap_size' is added to limit the amount of memory used for memory mapping of myisam files. This option is not dynamic. The default value on 32 bit system is 4294967295 bytes and on 64 bit system it is 18446744073709547520 bytes. Note: Testcase only tests the option variable. The actual bug has be to tested manually. ------------------------------------------------------------ revno: 2661.483.23 committer: Ramil Kalimullin <ramil@mysql.com> branch nick: mysql-5.1-bugteam timestamp: Thu 2009-12-17 10:52:43 +0400 message: Auto-merge. ------------------------------------------------------------ revno: 1810.3975.4 committer: Ramil Kalimullin <ramil@mysql.com> branch nick: b49465-5.0-bugteam timestamp: Thu 2009-12-17 09:55:03 +0400 message: Fix for bug#49465: valgrind warnings and incorrect live checksum... Problem: inserting a record we don't set unused null bits in the record buffer if no default field values used. That may lead to wrong live checksum calculation. Fix: set unused null bits in the record buffer in such cases. ------------------------------------------------------------ revno: 2661.483.22 committer: Magne Mahre <magne.mahre@sun.com> branch nick: mysql-5.1-bugteam-47017 timestamp: Wed 2009-12-16 20:53:56 +0100 message: Bug#47017 rpl_timezone fails on PB-2 with mismatch error The bug is caused by a race condition between the INSERT DELAYED thread and the client thread's FLUSH TABLE. The FLUSH TABLE does not guarantee (as is (wrongly) suggested in the test case) that the INSERT DELAYED is ever executed. The execution of the test case will thus not be deterministic. The fix has been to do a deterministic verification that both threads are complete by checking the content of the table. ------------------------------------------------------------ revno: 2875.11.6 committer: Alexander Nozdrin <alik@sun.com> branch nick: mysql-trunk-merge timestamp: Wed 2009-12-16 21:35:25 +0300 message: Manual merge from mysql-5.1. Conflicts: - mysql-test/r/select.result - mysql-test/t/select.test - sql/item_cmpfunc.h - sql/sql_show.cc ------------------------------------------------------------ revno: 2661.466.45 committer: Ramil Kalimullin <ramil@mysql.com> branch nick: mysql-5.1-pe-stage timestamp: Tue 2009-12-15 21:08:21 +0400 message: Fix for bug#49517: Inconsistent behavior while using NULLable BIGINT and INT columns in comparison Problem: a consequence of the fix for 43668. Some Arg_comparator inner initialization missed, that may lead to unpredictable (wrong) comparison results. Fix: always properly initialize Arg_comparator before its usage. ------------------------------------------------------------ revno: 2661.466.44 committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.1-pe-stage timestamp: Tue 2009-12-15 11:03:24 +0200 message: Bug #48985: show create table crashes if previous access to the table was killed Merge the fix from 5.1-bugteam to 5.1-main ------------------------------------------------------------ revno: 2661.466.43 committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.1-pe-stage timestamp: Tue 2009-12-15 10:54:53 +0200 message: Bug#49489: Uninitialized cache led to a wrong result. Merge the fix from 5.1-bugteam to 5.1-main ------------------------------------------------------------ revno: 2661.466.42 committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.1-pe-stage timestamp: Tue 2009-12-15 10:37:10 +0200 message: Bug #49480: WHERE using YEAR columns returns unexpected results Merge the fix from 5.1-bugteam to 5.1-main ------------------------------------------------------------ revno: 2875.11.5 committer: Alexey Kopytov <Alexey.Kopytov@Sun.com> branch nick: mysql-trunk-merge timestamp: Wed 2009-12-16 16:47:07 +0300 message: Manual merge of mysql-5.1-bugteam into mysql-trunk-merge. ------------------------------------------------------------ revno: 2661.483.21 committer: Georgi Kodinov <joro@sun.com> branch nick: B48709-5.1-bugteam timestamp: Wed 2009-12-16 11:03:24 +0200 message: merge ------------------------------------------------------------ revno: 1810.3975.3 committer: Georgi Kodinov <joro@sun.com> branch nick: B48709-5.0-bugteam timestamp: Tue 2009-12-15 19:10:06 +0200 message: Bug #48709: Assertion failed in sql_select.cc:11782: int join_read_key(JOIN_TAB*) The eq_ref access method TABLE_REF (accessed through JOIN_TAB) to save state and to track if this is the first row it finds or not. This state was not reset on subquery re-execution causing an assert. Fixed by resetting the state before the subquery re-execution. ------------------------------------------------------------ revno: 2661.483.20 committer: <Li-Bing.Song@sun.com> branch nick: mysql-5.1-bugteam timestamp: Wed 2009-12-16 12:41:15 +0800 message: Bug #46827 rpl_circular_for_4_hosts failed on PB2 This test case tests a circular replication of four hosts. A--->B--->C--->D--->A The replicate is slow and needs more time to replicate all data in the circle. The time it spends to replicate, sometimes, is longer than the time that wait_condition.inc spends to wait that all data has been replicated. This cause sporadical failure of this test case. This patch uses sync_slave_with_master to ensure that all data can be replicated successfully in the circle. ------------------------------------------------------------ revno: 2661.483.19 committer: <Li-Bing.Song@sun.com> branch nick: mysql-5.1-bugteam timestamp: Wed 2009-12-16 12:25:46 +0800 message: Postfix Only relative log events are showed. ------------------------------------------------------------ revno: 2661.483.18 committer: Georgi Kodinov <joro@sun.com> branch nick: B48709-5.1-bugteam timestamp: Tue 2009-12-15 18:26:03 +0200 message: merge ------------------------------------------------------------ revno: 2661.487.1 committer: Georgi Kodinov <joro@sun.com> branch nick: B48709-5.0-bugteam timestamp: Tue 2009-12-15 14:20:29 +0200 message: Bug #48709: Assertion failed in sql_select.cc:11782: int join_read_key(JOIN_TAB*) The eq_ref access method TABLE_REF (accessed through JOIN_TAB) to save state and to track if this is the first row it finds or not. This state was not reset on subquery re-execution causing an assert. Fixed by resetting the state before the subquery re-execution. ------------------------------------------------------------ revno: 2661.483.17 committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-51-bugteam timestamp: Tue 2009-12-15 13:48:01 +0100 message: merge ------------------------------------------------------------ revno: 2661.486.1 committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: b49028-51-bugteam timestamp: Mon 2009-12-14 16:11:47 +0100 message: Recommit of patch for bug#49028 for 5.1. Includes both patch from bug#48737 (without test, which should go to next-mr) and test for bug#49028. ------------------------------------------------------------ revno: 2661.483.16 committer: Alexander Barkov <bar@mysql.com> branch nick: mysql-5.1-b49134 timestamp: Tue 2009-12-15 13:48:29 +0400 message: Bug#49134 5.1 server segfaults with 2byte collation file Problem: add_collation did not check that cs->number is smaller than the number of elements in the array all_charsets[], so server could crash when loading an Index.xml file with a collation ID greater the number of elements (for example when downgrading from 5.5). Fix: adding a condition to check that cs->number is not out of valid range. ------------------------------------------------------------ revno: 2661.483.15 committer: Jon Olav Hauglid <jon.hauglid@sun.com> branch nick: mysql-5.1-bugteam-bug48995 timestamp: Tue 2009-12-15 10:05:20 +0100 message: Bug #48995 abort missing DBUG_RETURN or .. in function "check_key_in_view" check_key_in_view() had one code branch which returned with "return TRUE" rather than "DBUG_RETURN(TRUE)". Only affected debug builds. No test case added. ------------------------------------------------------------ revno: 2661.483.14 committer: He Zhenxing <zhenxing.he@sun.com> branch nick: 5.1-bugteam timestamp: Tue 2009-12-15 14:48:28 +0800 message: bug#49536 - deadlock on rotate_and_purge when using expire_logs_days Problem is that purge_logs implementation in ndb (ndbcluster_binlog_index_purge_file) calls mysql_parse (with (thd->options & OPTION_BIN_LOG) === 0)) but MYSQL_BIN_LOG first takes LOCK_log and then checks thd->options Solution in this patch, changes so that rotate_and_purge does not hold LOCK_log when calling purge_logs_before_date. I think this is safe as other "purge"-function(s) is called wo/ holding LOCK_log, e.g purge_master_logs ------------------------------------------------------------ revno: 2661.483.13 committer: <Li-Bing.Song@sun.com> branch nick: mysql-5.1-bugteam timestamp: Tue 2009-12-15 13:14:14 +0800 message: Bug #34628 LOAD DATA CONCURRENT INFILE drops CONCURRENT in binary log 'LOAD DATA CONCURRENT [LOCAL] INFILE ...' statment only is binlogged as 'LOAD DATA [LOCAL] INFILE ...' in SBR and MBR. As a result, if replication is on, queries on slaves will be blocked by the replication SQL thread. This patch write code to write 'CONCURRENT' into the log event if 'CONCURRENT' option is in the original statement in SBR and MBR. ------------------------------------------------------------ revno: 2661.483.12 committer: Alexey Kopytov <Alexey.Kopytov@Sun.com> branch nick: mysql-5.1-bugteam timestamp: Mon 2009-12-14 20:29:41 +0300 message: Automerge ------------------------------------------------------------ revno: 2661.485.2 committer: Andrei Elkin <aelkin@mysql.com> branch nick: 5.1-bt timestamp: Mon 2009-12-14 18:50:22 +0200 message: correction to the earlier merging: s/return/DBUG_RETURN/ ------------------------------------------------------------ revno: 2661.485.1 committer: Andrei Elkin <aelkin@mysql.com> branch nick: 5.1-bt timestamp: Mon 2009-12-14 18:32:22 +0200 message: merging 5.0-bt -> 5.1-bt to local branch with bug@47210 ------------------------------------------------------------ revno: 1810.3975.2 committer: Andrei Elkin <aelkin@mysql.com> branch nick: 5.0-bt-bug47210-start_slave_until_poss_reg_bug13861 timestamp: Mon 2009-12-14 16:44:10 +0200 message: merging 5.0-bt to local branch with bug@47210 ------------------------------------------------------------ revno: 1810.3975.1 committer: Andrei Elkin <aelkin@mysql.com> branch nick: 5.0-bt-bug47210-start_slave_until_poss_reg_bug13861 timestamp: Thu 2009-11-12 17:10:19 +0200 message: Bug #47210 first execution of "start slave until" stops too early Until-pos guarding did not distiguish the master originated events from ones that the slave can introduce to the relay log e.g Rotate to the next relay log at slave restarting. The local Rotate's coordinate are incomparable with the Until-master-pos. That led to the unexpectable stop this bug describes. Fixed with to avoid Until-master-pos comparison for a local slave's event. Notice that if --replicate-same-server is true such event is treated as coming from the master side. ------------------------------------------------------------ revno: 2661.483.11 committer: Alexey Kopytov <Alexey.Kopytov@Sun.com> branch nick: mysql-5.1-bugteam timestamp: Mon 2009-12-14 20:27:43 +0300 message: Post-push fixes for the bug #42849: All tests in the parts suite that use partitioning on a timezone-dependent expression were commented out, since it is not valid anymore. ------------------------------------------------------------ revno: 2661.483.10 committer: Satya B <satya.bn@sun.com> branch nick: mysql-5.1-bugteam timestamp: Mon 2009-12-14 13:42:26 +0530 message: Fix for BUG#49502 - CMake error compiling 5.1 on Windows When applying innodb snapshot 1.0.6 the storage engine name for innodb plugin under windows was changed from INNODB_PLUGIN to INNOBASE. This is a wrong and changing back the name to INNODB_PLUGIN. ------------------------------------------------------------ revno: 2661.483.9 committer: Alexey Kopytov <Alexey.Kopytov@Sun.com> branch nick: mysql-5.1-bugteam timestamp: Mon 2009-12-14 09:06:46 +0300 message: Post-merge test fix for bug #42849. ------------------------------------------------------------ revno: 2661.483.8 committer: lars-erik.bjork@sun.com branch nick: mysql-5.1-bugteam timestamp: Mon 2009-12-14 01:16:50 +0100 message: Merging ------------------------------------------------------------ revno: 1810.3974.4 committer: lars-erik.bjork@sun.com branch nick: mysql-5.0-bugteam timestamp: Mon 2009-12-14 00:58:16 +0100 message: This is a patch for Bug#48500 5.0 buffer overflow for ER_UPDATE_INFO, or truncated info message in 5.1 5.0.86 has a buffer overflow/crash, and 5.1.40 has a truncated message. errmsg.txt contains this: ER_UPDATE_INFO rum "Linii identificate (matched): %ld Schimbate: %ld Atentionari (warnings): %ld" When that is sprintf'd into a buffer of STRING_BUFFER_USUAL_SIZE size, a buffer overflow can happen. The solution to this is to use MYSQL_ERRMSG_SIZE for the buffer size, instead of STRING_BUFFER_USUAL_SIZE. This will allow longer strings. To avoid potential crashes, we will also use my_snprintf instead of sprintf. ------------------------------------------------------------ revno: 2661.483.7 committer: Alexey Kopytov <Alexey.Kopytov@Sun.com> branch nick: mysql-5.1-bugteam timestamp: Sun 2009-12-13 23:57:57 +0300 message: Automerge ------------------------------------------------------------ revno: 2661.484.1 committer: Alexey Kopytov <Alexey.Kopytov@Sun.com> branch nick: my51-bug42849 timestamp: Sun 2009-12-13 23:29:50 +0300 message: Bug #42849: innodb crash with varying time_zone on partitioned timestamp primary key Since TIMESTAMP values are adjusted by the current time zone settings in both numeric and string contexts, using any expressions involving TIMESTAMP values as a (sub)partitioning function leads to undeterministic behavior of partitioned tables. The effect may vary depending on a storage engine, it can be either incorrect data being retrieved or stored, or an assertion failure. The root cause of this is the fact that the calculated partition ID may differ from a previously calculated ID for the same data due to timezone adjustments of the partitioning expression value. Fixed by disabling any expressions involving TIMESTAMP values to be used in partitioning functions with the follwing two exceptions: 1. Creating or altering into a partitioned table that violates the above rule is not allowed, but opening existing such tables results in a warning rather than an error so that such tables could be fixed. 2. UNIX_TIMESTAMP() is the only way to get a timezone-independent value from a TIMESTAMP column, because it returns the internal representation (a time_t value) of a TIMESTAMP argument verbatim. So UNIX_TIMESTAMP(timestamp_column) is allowed and should be used to fix existing tables if one wants to use TIMESTAMP columns with partitioning. ------------------------------------------------------------ revno: 2661.483.6 committer: Staale Smedseng <staale.smedseng@sun.com> branch nick: 45058-51 timestamp: Sat 2009-12-12 19:11:25 +0100 message: Bug #45058 init_available_charsets uses double checked locking As documented in the bug report, the double checked locking pattern has inherent issues, and cannot guarantee correct initialization. This patch replaces the logic in init_available_charsets() with the use of pthread_once(3). A wrapper function, my_pthread_once(), is introduced and is used in lieu of direct calls to init_available_charsets(). Related defines MY_PTHREAD_ONCE_* are also introduced. For the Windows platform, the implementation in lp:sysbench is ported. For single-thread use, a simple define calls the function and sets the pthread_once control variable. Charset initialization is modified to use my_pthread_once(). ------------------------------------------------------------ revno: 2661.483.5 committer: Kent Boortz <kent.boortz@sun.com> branch nick: mysql-5.1-bugteam timestamp: Fri 2009-12-11 19:16:04 +0100 message: Null merge of change in 5.0 to use -D_WIN32_WINNT=0x0500, Windows 2000 compatibility, not to change the -D_WIN32_WINNT=0x0501 in 5.1, XP compatibility. ------------------------------------------------------------ revno: 1810.3974.3 committer: Kent Boortz <kent.boortz@sun.com> branch nick: mysql-5.0-bugteam timestamp: Fri 2009-12-11 19:11:49 +0100 message: Define _WIN32_WINNT to the minimum supported Windows version, 0x0500 i.e Windows 2000. Visual Studio 2003 and 2005 require _WIN32_WINNT >= 0x0500 (Win2000) for TryEnterCriticalSection. ------------------------------------------------------------ revno: 2661.483.4 committer: Georgi Kodinov <joro@sun.com> branch nick: B49250-5.1-bugteam timestamp: Fri 2009-12-11 17:24:09 +0200 message: merge ------------------------------------------------------------ revno: 2661.483.3 committer: Georgi Kodinov <joro@sun.com> branch nick: B49250-5.1-bugteam timestamp: Fri 2009-12-11 16:08:28 +0200 message: merge ------------------------------------------------------------ revno: 1810.3974.2 committer: Georgi Kodinov <joro@sun.com> branch nick: B49250-5.0-bugteaam timestamp: Fri 2009-12-11 16:07:09 +0200 message: merge ------------------------------------------------------------ revno: 2661.483.2 committer: Georgi Kodinov <joro@sun.com> branch nick: B49250-5.1-bugteam timestamp: Fri 2009-12-11 16:07:19 +0200 message: merge ------------------------------------------------------------ revno: 2661.483.1 committer: Georgi Kodinov <joro@sun.com> branch nick: B49250-5.1-bugteam timestamp: Fri 2009-12-11 16:02:47 +0200 message: merge of bug #49250 to 5.1-bugteam ------------------------------------------------------------ revno: 1810.3974.1 committer: Georgi Kodinov <joro@sun.com> branch nick: B49250-5.0-bugteaam timestamp: Thu 2009-12-10 11:28:38 +0200 message: Bug #49250 : spatial btree index corruption and crash SPATIAL and FULLTEXT indexes don't support algorithm selection. Disabled by creating a special grammar rule for these in the parser. Added some encasulation of duplicate parser code. ------------------------------------------------------------ revno: 2875.11.4 committer: Alexander Nozdrin <alik@sun.com> branch nick: mysql-trunk-merge timestamp: Wed 2009-12-16 13:27:39 +0300 message: Auto-merge from mysql-trunk. ------------------------------------------------------------ revno: 2875.11.3 committer: Alexey Kopytov <Alexey.Kopytov@Sun.com> branch nick: mysql-trunk-merge timestamp: Sat 2009-12-12 10:04:52 +0300 message: Disabled binlog.binlog_index, bug#49638. ------------------------------------------------------------ revno: 2875.11.2 committer: Alexey Kopytov <Alexey.Kopytov@Sun.com> branch nick: mysql-trunk-merge timestamp: Sat 2009-12-12 00:06:54 +0300 message: Streamlined the test case for bug #49199 in mysql-trunk-merge to take into account the changes introduced by the fix for bug #30302. ------------------------------------------------------------ revno: 2875.11.1 committer: Alexey Kopytov <Alexey.Kopytov@Sun.com> branch nick: mysql-trunk-merge timestamp: Fri 2009-12-11 19:40:58 +0300 message: Manual merge of mysql-5.1-bugteam into mysql-trunk-merge. ------------------------------------------------------------ revno: 2661.474.26 committer: Evgeny Potemkin <epotemkin@mysql.com> branch nick: mysql-5.1-bugteam timestamp: Fri 2009-12-11 16:08:29 +0300 message: Auto-merged fix for bug#49489. ------------------------------------------------------------ revno: 2661.482.1 committer: Evgeny Potemkin <epotemkin@mysql.com> branch nick: 49489-bug-5.1-bugteam timestamp: Wed 2009-12-09 18:43:45 +0300 message: Bug#49489: Uninitialized cache led to a wrong result. Arg_comparator uses Item_cache objects to store constants being compared when they're need a type conversion. Because this cache wasn't initialized properly Arg_comparator might produce wrong comparison result. The Arg_comparator::cache_converted_constant function now initializes cache prior to usage. ------------------------------------------------------------ revno: 2661.474.25 committer: V Narayanan<v.narayanan@sun.com> branch nick: mysql-5.1-bugteam-49329-02 timestamp: Fri 2009-12-11 17:27:12 +0530 message: merging with mysql-5.1-bugteam ------------------------------------------------------------ revno: 2661.481.1 committer: V Narayanan<v.narayanan@sun.com> branch nick: mysql-5.1-bugteam-49329-01 timestamp: Fri 2009-12-11 12:31:16 +0530 message: Bug#49329 example (and other) engines use wrong collation for open tables hash This fix changes the character set used within the IBMDB2I handler to hash table names to information about open tables. Previously, tables with names that differed only in letter case would hash to the same data structure. This caused incorrect behavior or errors when two such tables were in use simultaneously. ------------------------------------------------------------ revno: 2661.474.24 committer: V Narayanan<v.narayanan@sun.com> branch nick: mysql-5.1-bugteam-49521-01 timestamp: Fri 2009-12-11 12:46:57 +0530 message: Bug#49521 SHOW CREATE TABLE on IBMDB2I tables has incorrect fk constraint format The fix inserts newline and comma characters as appropriate into the constraint reporting code to match the formatting required by SHOW CREATE TABLE. Additionally, a erroneously duplicated copy of check_if_incompatible_data() was removed from db2i_constraints.cc since the correct version is already in ha_ibmdb2i.cc. ------------------------------------------------------------ revno: 2661.474.23 committer: <Dao-Gang.Qu@sun.com> branch nick: mysql-5.1-bugteam timestamp: Fri 2009-12-11 10:12:18 +0800 message: Bug #48742 Replication: incorrect help text for --init-slave The help text for --init-slave=name: "Command(s) that are executed when a slave connects to this master". This text indicate that the --init-slave option is set on a master server, and the master server passes the option's argument to slave which connects to it. This is wrong. Actually the --init-slave option just can be set on a slave server, and then the slave server executes the argument each time the SQL thread starts. Correct the help text for --init-slave option as following: "Command(s) that are executed by a slave server each time the SQL thread starts." ------------------------------------------------------------ revno: 1810.3972.9 committer: <Dao-Gang.Qu@sun.com> branch nick: mysql-5.0-bugteam timestamp: Fri 2009-12-11 09:57:38 +0800 message: Bug #48742 Replication: incorrect help text for --init-slave The help text for --init-slave=name: "Command(s) that are executed when a slave connects to this master". This text indicate that the --init-slave option is set on a master server, and the master server passes the option's argument to slave which connects to it. This is wrong. Actually the --init-slave option just can be set on a slave server, and then the slave server executes the argument each time the SQL thread starts. Correct the help text for --init-slave option as following: "Command(s) that are executed by a slave server each time the SQL thread starts." ------------------------------------------------------------ revno: 2661.474.22 committer: Georgi Kodinov <joro@sun.com> branch nick: B42760-5.1-bugteam timestamp: Thu 2009-12-10 17:38:01 +0200 message: merge ------------------------------------------------------------ revno: 1810.3972.8 committer: Georgi Kodinov <joro@sun.com> branch nick: B42760-5.0-bugteam timestamp: Mon 2009-12-07 16:38:56 +0200 message: Bug #42760: Select doesn't return desired results when we have null values Part 2 : There was a special optimization on the ref access method for ORDER BY ... DESC that was set without actually looking on the type of the selected index for ORDER BY. Fixed the SELECT ... ORDER BY .. DESC (it uses a different code path compared to the ASC that has been fixed with the previous fix). ------------------------------------------------------------ revno: 2661.474.21 committer: Ramil Kalimullin <ramil@mysql.com> branch nick: mysql-5.1-bugteam timestamp: Thu 2009-12-10 11:03:23 +0400 message: Auto-merge. ------------------------------------------------------------ revno: 2661.480.1 committer: Gleb Shchepa <gshchepa@mysql.com> branch nick: mysql-5.1-bugteam timestamp: Thu 2009-12-10 10:05:44 +0400 message: Bug #49480: WHERE using YEAR columns returns unexpected results A few problems were found in the fix for bug 43668: 1) Comparison of the YEAR column with NULL always returned TRUE; 2) Comparison of the YEAR column with constants always returned unpredictable result; 3) Unnecessary conversion warnings when comparing a non-integer constant with a NULL value in the YEAR column; The problems described above have been resolved with an exception: zero (i.e. invalid) YEAR column value comparison with 00 or 2000 still fail (it is not a regression and it was not a regression), so MIN/MAX on YEAR column containing zero value still fail. ------------------------------------------------------------ revno: 2661.474.20 committer: Ramil Kalimullin <ramil@mysql.com> branch nick: mysql-5.1-bugteam timestamp: Thu 2009-12-10 10:31:52 +0400 message: Manual merge. ------------------------------------------------------------ revno: 1810.3972.7 committer: Ramil Kalimullin <ramil@mysql.com> branch nick: mysql-5.0-bugteam timestamp: Thu 2009-12-10 09:51:08 +0400 message: Auto-merge. ------------------------------------------------------------ revno: 1810.3973.1 committer: Ramil Kalimullin <ramil@mysql.com> branch nick: b49199-5.0-bugteam timestamp: Fri 2009-12-04 21:58:40 +0400 message: Fix for bug#49199: Optimizer handles incorrectly: field='const1' AND field='const2' in some cases Building multiple equality predicates containing a constant which is compared as a datetime (with a field) we should take this fact into account and compare the constant with another possible constatns as datetimes as well. E.g. for the SELECT ... WHERE a='2001-01-01' AND a='2001-01-01 00:00:00' we should compare '2001-01-01' with '2001-01-01 00:00:00' as datetimes but not as strings. ------------------------------------------------------------ revno: 2661.474.19 committer: He Zhenxing <zhenxing.he@sun.com> branch nick: 5.1-bugteam timestamp: Thu 2009-12-10 12:56:10 +0800 message: Auto merge ------------------------------------------------------------ revno: 2661.478.2 committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.1-bugteam-merge timestamp: Wed 2009-12-09 11:03:01 +0000 message: merge mysql-5.1-bugteam (local) --> mysql-5.1-bugteam ------------------------------------------------------------ revno: 2661.479.1 committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.1-bugteam timestamp: Tue 2009-12-08 16:03:19 +0000 message: Post-push fix for BUG#45292. Disabled execution in valgrind to avoid false positive memory leaks due to fault-injection tests (i.e. call to abort()). ------------------------------------------------------------ revno: 2661.478.1 committer: Olav Sandstaa <olav@sun.com> branch nick: bug-XXX-5.1 timestamp: Wed 2009-12-09 10:16:11 +0100 message: Fix for Bug#49506 Valgrind error in make_cond_for_table_from_pred This fix has been proposed by Sergey Petrunya and has been contributed under SCA by sca@askmonty.org. The cause for this valgrind error is that in the function add_cond_and_fix() in sql_select.cc an Item_cond_and object is created. This is marked as fixed but does not have a correct table_map() attribute. Later, in make_join_select(), if engine_condition_pushdown is in use, this table map is used and results in the valgrind error. The fix is to add a call to update_used_tables() in add_cond_and_fix() so that the table map is updated correctly. This patch is tested by multiple existing tests (e.g. the tests innodb_mysql, innodb, fulltext, compress all produces this valgrind warning/error without this fix). ------------------------------------------------------------ revno: 2661.474.18 committer: He Zhenxing <zhenxing.he@sun.com> branch nick: 5.1-bugteam timestamp: Thu 2009-12-10 11:51:42 +0800 message: Merge from 5.0-bugteam ------------------------------------------------------------ revno: 1810.3972.6 committer: He Zhenxing <zhenxing.he@sun.com> branch nick: 5.0-bugteam timestamp: Thu 2009-12-10 11:44:19 +0800 message: Post fix for bug#45520 ------------------------------------------------------------ revno: 2661.474.17 committer: He Zhenxing <zhenxing.he@sun.com> branch nick: 5.1-bugteam timestamp: Wed 2009-12-09 14:39:07 +0800 message: Merge from 5.0-bugteam ------------------------------------------------------------ revno: 1810.3972.5 committer: He Zhenxing <zhenxing.he@sun.com> branch nick: 5.0-bugteam timestamp: Wed 2009-12-09 14:27:46 +0800 message: removed rpl_killed_ddl from disabled list ------------------------------------------------------------ revno: 2661.474.16 committer: He Zhenxing <zhenxing.he@sun.com> branch nick: 5.1-bugteam timestamp: Wed 2009-12-09 14:24:54 +0800 message: Merge Bug#45520 fix from 5.0-bugteam ------------------------------------------------------------ revno: 1810.3972.4 committer: He Zhenxing <zhenxing.he@sun.com> branch nick: 5.0-bugteam timestamp: Wed 2009-12-09 14:13:56 +0800 message: BUG#45520 rpl_killed_ddl fails sporadically in pb2 There are three issues that caused rpl_killed_ddl fails sporadically in pb2: 1) thd->clear_error() was not called before create Query event if operation is executed successfully. 2) DATABASE d2 might do exist because the statement to CREATE or ALTER it was killed 3) because of bug 43353, kill the query that do DROP FUNCTION or DROP PROCEDURE can result in SP not found This patch fixed all above issues by: 1) Called thd->clear_error() if the operation succeeded. 2) Add IF EXISTS to the DROP DATABASE d2 statement 3) Temporarily disabled testing DROP FUNCTION/PROCEDURE IF EXISTS. ------------------------------------------------------------ revno: 2661.474.15 committer: Luis Soares <luis.soares@sun.com> branch nick: mysql-5.1-bugteam timestamp: Mon 2009-12-07 00:28:14 +0000 message: Automerge bzr bundle in bug report into local mysql-5.1-bugteam latest. ------------------------------------------------------------ revno: 2661.477.1 committer: Luis Soares <luis.soares@sun.com> branch nick: mysql-5.1 timestamp: Mon 2009-11-09 17:36:13 +0000 message: BUG#48357: SHOW BINLOG EVENTS: Wrong offset or I/O error In function log_event.cc:Query_log_event::write, there was a cast that was triggering undefined behavior. The offending cast is the following: write_str_with_code_and_len((char **)(&start), catalog, catalog_len, Q_CATALOG_NZ_CODE); This results in calling write_str_with_code_and_len with first argument pointing to a (char **) while "start" is itself a pointer to uchar (uchar *). Inside write_str_with_..., the content of start is then be updated: (*dst)+= len; The instruction above would cause the (*dst) pointer (ie, the "start" argument, from the caller point of view, and which actually points to uchar instead of pointing to char) to be updated so that it would increment catalog_len. However, this seems to break strict-aliasing rules ultimately causing the increment and assignment to behave unexpectedly. We fix this by removing the cast and by making the types match. ------------------------------------------------------------ revno: 2661.474.14 committer: Luis Soares <luis.soares@sun.com> branch nick: mysql-5.1-bugteam-to-push timestamp: Sun 2009-12-06 23:36:07 +0000 message: Automerge bzr bundle from bug report. Removed rpl_cross_version from experimental list. ------------------------------------------------------------ revno: 2661.476.1 committer: Luis Soares <luis.soares@sun.com> branch nick: mysql-5.1-bugteam timestamp: Tue 2009-11-24 20:04:02 +0000 message: BUG#48340: rpl_cross_version: Found warnings/errors in server log file! Valgrind reports a conditional jump that depends on uninitialized data while doing a LOAD DATA and for this test case only. This test case, tests that loading data from a 4.0 or 4.1 instance into a 5.1 instance is working. As such it handles old binary log with a different set of events than currently 5.1 codebase uses. See the following reference for details: http://forge.mysql.com/wiki/MySQL_Internals_Binary_Log#LOAD_DATA_INFILE_Events Problem: The server is handling an Execute_load_log_event, which results in reading a Load_log_event from the binary log and applying it. When applying the Load_log_event, some variable setup is done and then mysql_load is called. Late in mysql_load execution, if not in row mode logging, the event is binlogged write_execute_load_query_log_event. In write_execute_load_query_log_event, thd->lex->local_file is inspected. The problem is that it has not been set before in the execution stack. This causes valgrind to report the warning. Fix: We fix this by initializing thd->lex->local_file to be the same as the value of Load_log_event::local_fname, when lex_start is called inside Load_log_event::do_apply_event. ------------------------------------------------------------ revno: 2661.474.13 committer: Luis Soares <luis.soares@sun.com> branch nick: mysql-5.1-bugteam-to-push timestamp: Sun 2009-12-06 23:14:45 +0000 message: automerge: mysql-5.1-bugteam bug branch --> mysql-5.1-bugteam latest ------------------------------------------------------------ revno: 2661.475.1 committer: Luis Soares <luis.soares@sun.com> branch nick: mysql-5.1-bugteam timestamp: Sun 2009-12-06 23:12:11 +0000 message: BUG#49119: Master crashes when executing 'REVOKE ... ON {PROCEDURE|FUNCTION} FROM ...' The master would hit an assertion when binary log was active. This was due to the fact that the thread's diagnostics area was being cleared before writing to the binlog, independently of mysql_routine_grant returning an error or not. When mysql_routine_grant was to return an error, the return value and the diagnostics area contents would mismatch. Consequently, neither my_ok would be called nor an error would be signaled in the diagnostics area, eventually triggering the assertion in net_end_statement. We fix this by not clearing the diagnostics area at binlogging time. ------------------------------------------------------------ revno: 2661.474.12 committer: Staale Smedseng <staale.smedseng@sun.com> branch nick: 47391-51 timestamp: Sun 2009-12-06 19:01:11 +0100 message: Merge from 5.0 ------------------------------------------------------------ revno: 1810.3972.3 committer: Staale Smedseng <staale.smedseng@sun.com> branch nick: 47391-50 timestamp: Sun 2009-12-06 18:11:37 +0100 message: Bug #47391 no stack trace printed to error log on solaris after a crash This patch adds a Solaris-specific version of print_stacktrace() which uses printstack(2), available on all Solaris versions since Solaris 9. (While Solaris 11 adds support for the glibc functions backtrace_*() as of PSARC/2007/162, printstack() is used for consistency over all Solaris versions.) The symbol names are mangled, so use of c++filt may be required as described in the MySQL documentation. ------------------------------------------------------------ revno: 2661.474.11 committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.1-bugteam timestamp: Sat 2009-12-05 22:09:41 +0000 message: Post-push fix for BUG#45292. ------------------------------------------------------------ revno: 2661.474.10 committer: Davi Arnaut <Davi.Arnaut@Sun.COM> branch nick: 49141-5.1 timestamp: Fri 2009-12-04 13:36:58 -0200 message: Bug#49141: Encode function is significantly slower in 5.1 compared to 5.0 The problem was that the multiple evaluations of a ENCODE or DECODE function within a single statement caused the random generator to be reinitialized at each evaluation, even though the parameters were constants. The solution is to initialize the random generator only once if the password (seed) parameter is constant. This patch borrows code and ideas from Georgi Kodinov's patch. ------------------------------------------------------------ revno: 2661.474.9 committer: Davi Arnaut <Davi.Arnaut@Sun.COM> branch nick: mysql-5.1-bugteam timestamp: Fri 2009-12-04 14:00:20 -0200 message: Bug#41569: mysql_upgrade (ver 5.1) add 3 fields to mysql.proc table but does not set values Post-merge fix: Redirect stderr to a file as to avoid buffering problems due to redirecting stderr to stdout. ------------------------------------------------------------ revno: 2661.474.8 committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.1-bugteam timestamp: Fri 2009-12-04 14:40:42 +0000 message: BUG#45292 orphan binary log created when starting server twice This patch fixes three bugs as follows. First, aborting the server while purging binary logs might generate orphan files due to how the purge operation was implemented: (purge routine - sql/log.cc - MYSQL_BIN_LOG::purge_logs) 1 - register the files to be removed in a temporary buffer. 2 - update the log-bin.index. 3 - flush the log-bin.index. 4 - erase the files whose names where register in the temporary buffer in step 1. Thus a failure while executing step 4 would generate an orphan file. Second, a similar issue might happen while creating a new binary as follows: (create routine - sql/log.cc - MYSQL_BIN_LOG::open) 1 - open the new log-bin. 2 - update the log-bin.index. Thus a failure while executing step 1 would generate an orphan file. To fix these issues, we record the files to be purged or created before really removing or adding them. So if a failure happens such records can be used to automatically remove dangling files. The new steps might be outlined as follows: (purge routine - sql/log.cc - MYSQL_BIN_LOG::purge_logs) 1 - register the files to be removed in the log-bin.~rec~ placed in the data directory. 2 - update the log-bin.index. 3 - flush the log-bin.index. 4 - delete the log-bin.~rec~. (create routine - sql/log.cc - MYSQL_BIN_LOG::open) 1 - register the file to be created in the log-bin.~rec~ placed in the data directory. 2 - open the new log-bin. 3 - update the log-bin.index. 4 - delete the log-bin.~rec~. (recovery routine - sql/log.cc - MYSQL_BIN_LOG::open_index_file) 1 - open the log-bin.index. 2 - open the log-bin.~rec~. 3 - for each file in log-bin.~rec~. 3.1 Check if the file is in the log-bin.index and if so ignore it. 3.2 Otherwise, delete it. The third issue can be described as follows. The purge operation was allowing to remove a file in use thus leading to the loss of data and possible inconsistencies between the master and slave. Roughly, the routine was only taking into account the dump threads and so if a slave was not connect the file might be delete even though it was in use. ------------------------------------------------------------ revno: 2661.474.7 committer: Gleb Shchepa <gshchepa@mysql.com> branch nick: mysql-5.1-bugteam timestamp: Thu 2009-12-03 23:38:09 +0400 message: Bug #38883: thd_security_context is not thread safe, crashes? After-push minor code cleanup for WL 2360: unnecessary external reference to LOCK_thread_count has been removed from ha_innodb.cc. ------------------------------------------------------------ revno: 2661.474.6 committer: lars-erik.bjork@sun.com branch nick: 41569-mysql-5.1-bugteam timestamp: Thu 2009-12-03 17:15:47 +0100 message: This is a patch for bug#41569. "mysql_upgrade (ver 5.1) add 3 fields to mysql.proc table but does not set values". mysql_upgrade (ver 5.1) adds 3 fields (character_set_client, collation_connection and db_collation) to the mysql.proc table, but does not set any values. When we run stored procedures, which were created with mysql 5.0, a warning is logged into the error log. The solution to this is for mysql_upgrade to set default best guess values for these fields. A warning is also written during upgrade, to make the user aware that default values are set. ------------------------------------------------------------ revno: 2661.474.5 committer: Evgeny Potemkin <epotemkin@mysql.com> branch nick: mysql-5.1-bugteam timestamp: Thu 2009-12-03 16:24:50 +0300 message: Auto-merged. ------------------------------------------------------------ revno: 1810.3972.2 committer: Evgeny Potemkin <epotemkin@mysql.com> branch nick: mysql-5.0-bugteam timestamp: Thu 2009-12-03 16:21:53 +0300 message: Auto-merged. ------------------------------------------------------------ revno: 1810.3971.2 committer: Evgeny Potemkin <epotemkin@mysql.com> branch nick: 48508-bug-5.0-bugteam timestamp: Thu 2009-12-03 16:15:20 +0300 message: Bug#48508: Crash on prepared statement re-execution. Test case cleanup. ------------------------------------------------------------ revno: 2661.474.4 committer: Georgi Kodinov <joro@sun.com> branch nick: B48985-5.1-bugteam timestamp: Thu 2009-12-03 14:07:46 +0200 message: Bug #48985: show create table crashes if previous access to the table was killed When checking for an error after removing the special view error handler the code was not taking into account that open_tables() may fail because of the current statement being killed. Added a check for thd->killed. Added a client program to test it. ------------------------------------------------------------ revno: 2661.474.3 committer: Alexander Barkov <bar@mysql.com> branch nick: mysql-5.1.b44131 timestamp: Thu 2009-12-03 13:22:34 +0400 message: Bug#44131 Binary-mode "order by" returns records in incorrect order for UTF-8 strings Problem: Item_char_typecast reported wrong max_length when casting to BINARY, which lead, in particular, in wrong "ORDER BY BINARY(char_column)" results. Fix: making Item_char_typecast report correct max_length. @ mysql-test/r/ctype_utf16.result Fixing old incorrect test result. @ mysql-test/r/ctype_utf32.result Fixing old incorrect test result. @ mysql-test/r/ctype_utf8.result Adding new test @ mysql-test/t/ctype_utf8.test Adding new test @ sql/item_timefunc.cc Making Item_char_typecast report correct max_length when cast is done to BINARY. ------------------------------------------------------------ revno: 2661.474.2 committer: Evgeny Potemkin <epotemkin@mysql.com> branch nick: mysql-5.1-bugteam timestamp: Wed 2009-12-02 16:49:21 +0300 message: Auto-merged. ------------------------------------------------------------ revno: 1810.3972.1 committer: Evgeny Potemkin <epotemkin@mysql.com> branch nick: mysql-5.0-bugteam timestamp: Wed 2009-12-02 16:47:12 +0300 message: Auto-merged fix for the bug#48508. ------------------------------------------------------------ revno: 1810.3971.1 committer: Evgeny Potemkin <epotemkin@mysql.com> branch nick: 48508-bug-5.0-bugteam timestamp: Tue 2009-12-01 21:28:45 +0300 message: Bug#48508: Crash on prepared statement re-execution. Actually there is two different bugs. The first one caused crash on queries with WHERE condition over views containing WHERE condition. A wrong check for prepared statement phase led to items for view fields being allocated in the execution memory and freed at the end of execution. Thus the optimized WHERE condition refers to unallocated memory on the second execution and server crashed. The second one caused by the Item_cond::compile function not saving changes it made to the item tree. Thus on the next execution changes weren't reverted and server crashed on dereferencing of unallocated space. The new helper function called is_stmt_prepare_or_first_stmt_execute is added to the Query_arena class. The find_field_in_view function now uses is_stmt_prepare_or_first_stmt_execute() to check whether newly created view items should be freed at the end of the query execution. The Item_cond::compile function now saves changes it makes to item tree. ------------------------------------------------------------ revno: 2661.474.1 committer: Alexander Barkov <bar@mysql.com> branch nick: mysql-5.1.b48766 timestamp: Wed 2009-12-02 15:17:08 +0400 message: Bug#48766 SHOW CREATE FUNCTION returns extra data in return clause Problem: SHOW CREATE FUNCTION and SELECT DTD_IDENTIFIER FROM I_S.ROUTINES returned wrong values in case of ENUM return data type and UCS2 character set. Fix: the string to collect returned data type was incorrectly set to "binary" character set, therefore UCS2 values where returned with extra '\0' characters. Setting string character set to creation_ctx->get_client_cs() in sp_find_routine(), and to system_charset_info in sp_create_routine fixes the problem. Adding tests: - the original test with Latin letters - an extra test with non-Latin letters ------------------------------------------------------------ revno: 2875.9.20 committer: Vladislav Vaintroub <vvaintroub@mysql.com> branch nick: mysql-trunk-bugfixing timestamp: Fri 2009-12-18 21:39:24 +0100 message: Bug #49811: inconsistent usage of SAFEMALLOC in debug compilation on windows Remove per-project SAFEMALLOCs definitions, as they result in malloc/free mismatches. ------------------------------------------------------------ revno: 2875.9.19 committer: Mikael Ronstrom <mikael@mysql.com> branch nick: mysql-trunk-bugfixing-bug49591 timestamp: Thu 2009-12-17 18:39:10 +0100 message: BUG#49591, Fixed version string in SHOW CREATE TABLE to accomodate for column list partitioning and new function to_seconds ------------------------------------------------------------ revno: 2875.9.18 committer: Jonathan Perkin <jperkin@sun.com> branch nick: mysql-trunk-bugfixing timestamp: Wed 2009-12-16 10:27:56 +0000 message: Fix previous merge: 'kill -0' (check PID exists) was changed to 'kill -9', meaning a '/etc/init.d/mysql stop' would actually cause mysqld_safe to relaunch mysqld rather than shut it down. ------------------------------------------------------------ revno: 2875.9.17 committer: Alexander Nozdrin <alik@sun.com> branch nick: mysql-trunk-bugfixing timestamp: Wed 2009-12-16 12:52:37 +0300 message: Auto-merge from mysql-trunk. ------------------------------------------------------------ revno: 2875.9.16 committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-mysql-trunk-bugfixing timestamp: Wed 2009-12-16 08:45:25 +0100 message: post push patch of bug#49369 updating test by removing select of platform dependend variable. ------------------------------------------------------------ revno: 2875.9.15 committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-mysql-trunk-bugfixing timestamp: Tue 2009-12-15 23:47:04 +0100 message: merge (and including the fix for bug#48939 since that was not included in mysql-trunk-bugfixing). ------------------------------------------------------------ revno: 2875.10.1 committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: b49369-m-t-bt timestamp: Thu 2009-12-03 13:31:56 +0100 message: Bug#49369: No testcase for key caches on partitions The original test case was lost when merging WL#4571. Added the testcase. ------------------------------------------------------------ revno: 2875.9.14 committer: Alexander Nozdrin <alik@sun.com> branch nick: mysql-trunk-bugfixing timestamp: Tue 2009-12-15 23:40:20 +0300 message: Backporing patch for Bug#48351 (Inconsistent library names for semisync plugin) from mysql-next-mr-bugfixing to mysql-trunk-bugfixing. Original revision: ------------------------------------------------------------ revision-id: zhenxing.he@sun.com-20091127084945-wng7gakygduv3q8k committer: He Zhenxing <zhenxing.he@sun.com> branch nick: 5.1-rep-semisync timestamp: Fri 2009-11-27 16:49:45 +0800 message: Bug#48351 Inconsistent library names for semisync plugin The semisync plugin library names on Unix like systems were prefixed with 'lib', which did not follow the conventions. Fix the problem by removing the 'lib' prefix on Unix systems. ------------------------------------------------------------ ------------------------------------------------------------ revno: 2661.473.1 committer: He Zhenxing <zhenxing.he@sun.com> branch nick: 5.1-rep-semisync timestamp: Fri 2009-11-27 16:49:45 +0800 message: Bug#48351 Inconsistent library names for semisync plugin The semisync plugin library names on Unix like systems were prefixed with 'lib', which did not follow the conventions. Fix the problem by removing the 'lib' prefix on Unix systems. ------------------------------------------------------------ revno: 2875.9.13 committer: Alexander Nozdrin <alik@sun.com> branch nick: mysql-trunk-bugfixing timestamp: Tue 2009-12-15 23:23:01 +0300 message: Backporting a patch for Bug#49170 (Inconsistent placement of semisync plugin prevents it from getting tested) from mysql-next-mr-bugfixing to mysql-trunk-bugfixing. Original revision: ------------------------------------------------------------ revision-id: zhenxing.he@sun.com-20091204014339-2m06r42vajhm9vke committer: He Zhenxing <zhenxing.he@sun.com> branch nick: 5.1-rep-semisync timestamp: Fri 2009-12-04 09:43:39 +0800 message: Bug#49170 Inconsistent placement of semisync plugin prevents it from getting tested Add $basedir/lib/plugin to the search paths for semisync plugins. ------------------------------------------------------------ ------------------------------------------------------------ revno: 2875.9.12 committer: Alexander Nozdrin <alik@sun.com> branch nick: mysql-trunk-bugfixing timestamp: Tue 2009-12-15 23:20:53 +0300 message: Backporting patch for Bug#47756 from mysql-next-mr-bugfixing into mysql-trunk-bugfixing. NOTE: the "utf8_phone_ci" collation does not exist in mysql-trunk yet, so another collation with 2-byte collation ID is used: "utf8_test_ci". This patch will be null-merged to mysql-next-mr-bugfixing. Original revision: ------------------------------------------------------------ revision-id: bar@mysql.com-20091207121153-hs3bqbmr0719ws21 committer: Alexander Barkov <bar@mysql.com> branch nick: mysql-next-mr.b47756 timestamp: Mon 2009-12-07 16:11:53 +0400 message: Bug#47756 Setting 2byte collation ID with 'set names' crashes the server The problem is not actually related to 2byte collation IDs. The same crash happens if you change the collation ID in mysql-test/str_data/Index.xml to a value smaller than 256. Crash happened in SQL parser, because the "ident_map" and "state_map" arrays were not initialized in loadable utf8 collations. Fix: adding proper initialization of the "ident_map" and "state_map" members for loadable utf8 collations. ------------------------------------------------------------ ------------------------------------------------------------ revno: 2875.9.11 committer: Alexander Nozdrin <alik@sun.com> branch nick: mysql-trunk-bugfixing timestamp: Fri 2009-12-11 09:20:33 +0300 message: Auto-merge from mysql-trunk. ------------------------------------------------------------ revno: 2875.9.10 committer: Alexander Nozdrin <alik@sun.com> branch nick: mysql-trunk-bugfixing timestamp: Fri 2009-12-11 09:00:57 +0300 message: Auto-merge (empty) from mysql-trunk. ------------------------------------------------------------ revno: 2925 committer: Joerg Bruehe <joerg@mysql.com> branch nick: trunk-build timestamp: Wed 2009-12-16 14:11:20 +0100 message: Automerge the build fixes of 5.5.0-m2 back into the tree. ------------------------------------------------------------ revno: 2921.2.11 tags: mysql-5.5.0 committer: MySQL Build Team <build@mysql.com> branch nick: mysql-5.5.0-m2-release timestamp: Mon 2009-12-07 19:00:02 +0100 message: The version is renamed: This is no tree that will progress through "beta" and "rc" to "GA", rather it is a series of "milestones", so the version is 5.5.0-m2 |