Hi Daniel, Here is the best I have for the release notes for 5.1.39: 1. My manually extracted "relevant" information from the bzr history. 2. Raw bzr dump of changes (short). 3. Raw bzr dump of changes (long). Hope this helps. - Kristian. ----------------------------------------------------------------------- Changes: - Includes MySQL 5.1.39 (check MySQL release notes for details of changes since MySQL 5.1.38) - Includes XtraDB 8 (check XtraDB release notes for details of changes since XtraDB 6) - RPMs for Centos 5 now available. - Includes FederatedX as replacement for old Federated storage engine. - Test suite speedups. - Binary tarballs now build on Ubuntu Hardy, so now depends on glibc 2.7 rather than 2.9 and so should work on more systems. - Some (still not all) compiler warnings eliminated. Bug fixes: - MBug#443014: Too many 'skipped' messages in mysql-test-run ----------------------------------------------------------------------- You have 144 extra revision(s): 2768: knielsen@knielsen... 2009-11-14 XtraDB 8 after-merge fix: Fix windows ... 2767: knielsen@knielsen... 2009-11-14 XtraDB 8 after-merge fixes: fix forgot... 2766: knielsen@knielsen... 2009-11-13 XtraDB 8 after-merge fix: Add missing ... 2765: knielsen@knielsen... 2009-11-13 [merge] Merge XtraDB 8. 2763.1.2: knielsen@knielsen... 2009-11-10 Fix double declaration of Makefi... 2763.1.1: knielsen@knielsen... 2009-11-10 Apply Monty's fix for warning ab... 2764: knielsen@knielsen... 2009-11-13 [merge] Merge XtraDB 8 into MariaDB. 0.6.5: Aleksandr Kuzminsky 2009-09-30 Sync with rev. 107 0.6.4: Aleksandr Kuzminsky 2009-09-23 Sync with rev.105 0.6.3: Aleksandr Kuzminsky 2009-09-07 sync with rev.96 2763: knielsen@knielsen... 2009-11-07 Bump revision number for MariaDB 5.1.3... 2762: knielsen@knielsen... 2009-11-07 Result file update for new FederatedX 2761: knielsen@knielsen... 2009-11-06 [merge] Merge 5.1-release branch into ... 2737.1.59: knielsen@knielsen... 2009-11-05 Fix running test suite from ins... 2737.1.58: Arjen Lentz 2009-10-31 libevent fixup required for Debian 4 (Etch) 2760: knielsen@knielsen... 2009-11-06 [merge] Merge Mysql 5.1.39 merge into ... 2743.1.5: Michael Widenius 2009-11-02 Fixed problem with schema tables and... 2743.1.4: knielsen@knielsen... 2009-10-16 When running with --skip-safemal... 2743.1.3: knielsen@knielsen... 2009-10-16 After-merge fixes for MySQL 5.1.... 2743.1.2: knielsen@knielsen... 2009-10-15 [merge] Merge with latest MariaD... 2743.1.1: knielsen@knielsen... 2009-10-15 [merge] Merge MySQL 5.1.39 into ... 2502.733.86: Jonathan Perkin 2009-09-04 Install mysqld.lib 2502.733.85: Jonathan Perkin 2009-09-03 [merge] Merge from mysql-5.1.38-... 2502.733.84: Georgi Kodinov 2009-09-02 [merge] null merge of 5.0 fixes b... 1810.3943.19: Georgi Kodinov 2009-09-02 Backported the --parallel=str ... 1810.3943.18: Georgi Kodinov 2009-09-02 [merge] merge 1810.3948.2: Georgi Kodinov 2009-09-02 [merge] merge 1810.3948.1: Georgi Kodinov 2009-09-02 moved version to 5.0-main 2502.733.83: Georgi Kodinov 2009-09-02 fixed a valgrind warning in parti... 2502.733.82: Georgi Kodinov 2009-09-02 [merge] automerge 2502.774.2: Davi Arnaut 2009-09-02 [merge] Manual merge. 1810.3943.17: Davi Arnaut 2009-09-02 Post-merge fix. Observe C decla... 1810.3943.16: Tatiana A. Nurnberg 2009-08-31 [merge] auto-merge 2502.774.1: Davi Arnaut 2009-09-02 Increase thread stack size on HP-UX... 2502.733.81: Georgi Kodinov 2009-09-02 fixed a valgrind warning in parti... 2502.733.80: Georgi Kodinov 2009-09-02 Fixed win32 compilation warnings 2502.733.79: Georgi Kodinov 2009-09-02 fixed compilation warnings 2502.733.78: Mattias Jonsson 2009-09-01 [merge] merge to update with lat... 2502.773.2: Georgi Kodinov 2009-09-01 Fixed a problem in how BUILD/che... 2502.773.1: Davi Arnaut 2009-09-01 Bug#45611: Minor code cleanup 2502.733.77: Mattias Jonsson 2009-09-01 post push fix for bug#20577 and ... 2502.733.76: Mattias Jonsson 2009-09-01 Post fix patch for bug#20577 and... 2502.733.75: Tatiana A. Nurnberg 2009-08-31 [merge] auto-merge 2502.772.4: Georgi Kodinov 2009-08-31 [merge] automerge 1810.3947.4: Georgi Kodinov 2009-08-31 [merge] merge 5.0-main -> 5.0... 2502.772.3: Georgi Kodinov 2009-08-31 [merge] automerge 5.1-main -> 5.... 2502.772.2: Georgi Kodinov 2009-08-31 [merge] automerge 1810.3947.3: Georgi Kodinov 2009-08-27 Bug #46749: Segfault in add_k... 2502.772.1: Anurag Shekhar 2009-08-31 [merge] merging bugfix from 5.0 1810.3947.2: Anurag Shekhar 2009-08-31 [merge] merging with changes ... 1810.3947.1: Anurag Shekhar 2009-08-24 Bug #44723 Larger read_buffer... 2502.733.74: Tatiana A. Nurnberg 2009-08-31 [merge] manual merge 1810.3943.15: Tatiana A. Nurnberg 2009-08-31 Bug#35132: MySQLadmin --w... 2502.733.73: Dao-Gang.Qu@sun.com 2009-08-31 Bug #44331 Restore of datab... 2502.733.72: Staale Smedseng 2009-08-30 [merge] Merge from 5.1-bugteam 2502.770.3: Alexey Kopytov 2009-08-30 [merge] Automerge. 2502.771.1: Alexey Kopytov 2009-08-30 Bug #46607: Assertion failed: ... 2502.770.2: Dao-Gang.Qu@sun.com 2009-08-29 Bug #44331 Restore of data... 2502.770.1: Davi Arnaut 2009-08-28 Reduce test case runtime. 2502.733.71: Staale Smedseng 2009-08-28 [merge] Merge from 5.0 for 43414 1810.3943.14: Staale Smedseng 2009-08-28 Bug #43414 Parenthesis (and o... 2502.733.70: Davi Arnaut 2009-08-28 Fix for a few assorted compiler warn... 2502.733.69: Mattias Jonsson 2009-08-28 [merge] merge 2502.767.3: Mattias Jonsson 2009-08-28 [merge] Manual merge between bu... 2502.769.1: Mattias Jonsson 2009-08-26 Bug#46362: Endpoint should be... 2502.767.2: Mattias Jonsson 2009-08-26 [merge] merge 2502.768.1: Mattias Jonsson 2009-08-07 Bug#32430: 'show innodb statu... 2502.767.1: Mattias Jonsson 2009-08-26 [merge] merge 2502.766.1: Mattias Jonsson 2009-08-26 Bug#20577: Partitions: use of... 2502.733.68: Alfranio Correia 2009-08-28 [merge] merge mysql-5.0-bugteam... 1810.3943.13: Alfranio Correia 2009-08-28 [merge] auto-merge mysql-5.0... 1810.3789.10: Alfranio Correia 2009-08-27 BUG#46861 Auto-closing of ... 2502.733.67: Alfranio Correia 2009-08-27 BUG#46864 Incorrect update of I... 2502.733.66: Sergey Glukhov 2009-08-27 [merge] 5.0-bugteam->5.1-bugteam ... 1810.3943.12: Sergey Glukhov 2009-08-27 Bug#46184 Crash, SELECT ... FR... 2502.733.65: Alfranio Correia 2009-08-27 Post-fix for BUG#28976. 2502.733.64: Georgi Kodinov 2009-08-27 [merge] merged 5.0-bugteam -> 5.1... 1810.3943.11: Georgi Kodinov 2009-08-24 Bug #37044: Read overflow in o... 1810.3943.10: Georgi Kodinov 2009-08-19 Bug #46807: subselect test fai... 2502.733.63: Alfranio Correia 2009-08-27 BUG#28976 Mixing trans and non-... 2502.733.62: Davi Arnaut 2009-08-24 Bug#45261: Crash, stored procedure +... 2502.733.61: Alfranio Correia 2009-08-24 [merge] auto-merge mysql-5.1-bu... 2502.765.1: Alfranio Correia 2009-08-19 BUG#45694 Deadlock in replicat... 2502.733.60: Alfranio Correia 2009-08-24 [merge] auto-merge mysql-5.1-bu... 2502.764.1: Alfranio Correia 2009-08-13 BUG#46130 Slave does not corre... 2502.733.59: Mattias Jonsson 2009-08-21 [merge] merge 2502.763.1: Mattias Jonsson 2009-08-21 Bug#46639: 1030 (HY000): Got er... 2502.733.58: Georgi Kodinov 2009-08-21 [merge] reverted the fix for bug ... 1810.3943.9: Georgi Kodinov 2009-08-21 [merge] automerge 1810.3946.1: Martin Hansson 2009-08-21 [merge] Merge. 1810.3943.8: Georgi Kodinov 2009-08-21 Revert of the fix for bug #46019. 2502.733.57: Martin Hansson 2009-08-21 [merge] Merge. 2502.762.1: Martin Hansson 2009-08-20 [merge] Bug#46616: Merge 1810.3945.1: Martin Hansson 2009-08-20 Bug#46616: Assertion `!table-... 2502.733.56: Ramil Kalimullin 2009-08-21 Fix for bug #46456 [Ver->Prg]: ... 2502.733.55: Georgi Kodinov 2009-08-20 [merge] merge of bug #46019 to 5.... 1810.3943.7: Georgi Kodinov 2009-08-19 Bug #46019: ERROR 1356 When sel... 2502.733.54: Georgi Kodinov 2009-07-09 Bug #45962: memory leak after 'so... 2502.733.53: Georgi Kodinov 2009-08-19 [merge] null merge of the backpor... 1810.3943.6: Georgi Kodinov 2009-08-19 backport of Chad's fix for bug ... 2502.733.52: Georgi Kodinov 2009-08-17 [merge] automere 1810.3943.5: Georgi Kodinov 2009-08-17 [merge] automerge 2502.733.51: Georgi Kodinov 2009-08-17 [merge] automerge 2502.733.50: Ramil Kalimullin 2009-08-14 [merge] Automerge 2502.761.1: Davi Arnaut 2009-08-13 [merge] Merge from mysql-5.0-bugteam. 1810.3943.4: Davi Arnaut 2009-08-13 Bug#46013: rpl_extraColmaster_my... 2502.733.49: Ramil Kalimullin 2009-08-14 Fix for bug #46614: Assertion i... 2502.733.48: Li-Bing.Song@sun.com 2009-08-13 BUG#45574 CREATE IF NOT EXI... 2502.733.47: Mattias Jonsson 2009-08-12 [merge] merge 2502.760.2: Konstantin Osipov 2009-08-12 A follow up patch for the fol... 2502.760.1: Konstantin Osipov 2009-08-12 A follow up patch for Bug#458... 2502.733.46: Mattias Jonsson 2009-08-12 [merge] manual merge 2502.759.1: Mattias Jonsson 2009-08-06 Bug#46478: timestamp field inco... 2502.733.45: Mattias Jonsson 2009-08-12 [merge] merge 2502.758.1: Mattias Jonsson 2009-01-08 Bug#39893: Crash if select on a... 2502.733.44: Li-Bing.Song@sun.com 2009-08-12 [merge] Manual Merge 1810.3943.3: Li-Bing.Song@sun.com 2009-08-12 BUG#45516 SQL thread does... 2502.733.43: Davi Arnaut 2009-08-11 [merge] Merge from mysql-5.0-bugteam. 2759: sanja@askmonty.org 2009-11-03 Add federatedx files for build 2758: sanja@askmonty.org 2009-11-03 Make federated compiling under windows 2757: sanja@askmonty.org 2009-11-02 Fixed federatedx building under windows 2756: Hakan Kuecuekyilmaz 2009-11-01 [merge] Merge. 2754.1.2: Hakan Kuecuekyilmaz 2009-11-01 [merge] Merge. 2754.1.1: Hakan Kuecuekyilmaz 2009-11-01 BUILD/compile-dist && make dist w... 2755: sanja@askmonty.org 2009-10-31 Compilation under windows x64 made possi... 2754: Michael Widenius 2009-10-30 [merge] Merge with 5.1-release 2737.1.57: Sergey Petrunya 2009-10-30 Dummy change to push the release tag. 2753: Michael Widenius 2009-10-30 [merge] Merge of FederatedX code 2751.1.2: Michael Widenius 2009-10-30 Added ignore for symlinked build file 2751.1.1: Michael Widenius 2009-10-30 Added federatedx storage engine 2752: Sergey Petrunya 2009-10-29 MWL#17: Table elimination 2751: Michael Widenius 2009-10-29 Compile by default MySQL clients with libm... 2750: Michael Widenius 2009-10-28 Added missing 'source' command. 2749: Michael Widenius 2009-10-28 Speed up of test suite: 2748: Michael Widenius 2009-10-26 [merge] Automatic merge with maria-merge 2747: Michael Widenius 2009-10-26 Fixed compiler warning message 2746: Michael Widenius 2009-10-14 [merge] Automatic merge with 5.1-merge 2745: Michael Widenius 2009-10-13 Removed not used declarations 2744: Michael Widenius 2009-10-13 Force restart before maria_showlog_error t... 2743: knielsen@knielsen... 2009-10-06 [merge] Merge a bunch of small fixes f... 2742: Michael Widenius 2009-10-06 [merge] Merge with bug fix 2740.1.2: Michael Widenius 2009-10-06 [merge] Merge with trunk 2740.1.1: Michael Widenius 2009-10-06 Don't call _ma_decrement_open_count(... 2741: knielsen@knielsen... 2009-10-05 MBug#443014: Too many 'skipped' messag... ----------------------------------------------------------------------- You have 144 extra revision(s): ------------------------------------------------------------ revno: 2768 committer: knielsen@knielsen-hq.org branch nick: work-5.1 timestamp: Sat 2009-11-14 10:53:18 +0100 message: XtraDB 8 after-merge fix: Fix windows build. ------------------------------------------------------------ revno: 2767 committer: knielsen@knielsen-hq.org branch nick: work-5.1 timestamp: Sat 2009-11-14 02:15:03 +0100 message: XtraDB 8 after-merge fixes: fix forgotten manual merge of patch file. ------------------------------------------------------------ revno: 2766 committer: knielsen@knielsen-hq.org branch nick: work-5.1 timestamp: Fri 2009-11-13 23:53:04 +0100 message: XtraDB 8 after-merge fix: Add missing header to `make dist`. ------------------------------------------------------------ revno: 2765 [merge] committer: knielsen@knielsen-hq.org branch nick: work-5.1 timestamp: Fri 2009-11-13 22:27:39 +0100 message: Merge XtraDB 8. ------------------------------------------------------------ revno: 2763.1.2 committer: knielsen@knielsen-hq.org branch nick: work-5.1-release timestamp: Tue 2009-11-10 14:55:48 +0100 message: Fix double declaration of Makefile variable for FederatedX. This eliminates a warning from Automake about the double declaration. ------------------------------------------------------------ revno: 2763.1.1 committer: knielsen@knielsen-hq.org branch nick: work-5.1-release timestamp: Tue 2009-11-10 09:35:39 +0100 message: Apply Monty's fix for warning about wrong FEDERATED typecode. ------------------------------------------------------------ revno: 2764 [merge] committer: knielsen@knielsen-hq.org branch nick: work-5.1 timestamp: Fri 2009-11-13 22:26:08 +0100 message: Merge XtraDB 8 into MariaDB. ------------------------------------------------------------ revno: 0.6.5 committer: Aleksandr Kuzminsky <aleksandr.kuzminsky@percona.com> branch nick: release-8 timestamp: Wed 2009-09-30 18:33:51 +0000 message: Sync with rev. 107 ------------------------------------------------------------ revno: 0.6.4 committer: Aleksandr Kuzminsky <aleksandr.kuzminsky@percona.com> branch nick: release-8 timestamp: Wed 2009-09-23 00:06:02 +0000 message: Sync with rev.105 ------------------------------------------------------------ revno: 0.6.3 committer: Aleksandr Kuzminsky <aleksandr.kuzminsky@percona.com> branch nick: percona-xtradb timestamp: Mon 2009-09-07 10:22:53 +0000 message: sync with rev.96 ------------------------------------------------------------ revno: 2763 committer: knielsen@knielsen-hq.org branch nick: work-5.1-release timestamp: Sat 2009-11-07 16:56:51 +0100 message: Bump revision number for MariaDB 5.1.39 release. ------------------------------------------------------------ revno: 2762 committer: knielsen@knielsen-hq.org branch nick: tmp timestamp: Sat 2009-11-07 07:29:10 +0100 message: Result file update for new FederatedX ------------------------------------------------------------ revno: 2761 [merge] committer: knielsen@knielsen-hq.org branch nick: tmp timestamp: Fri 2009-11-06 18:24:38 +0100 message: Merge 5.1-release branch into MariaDB trunk. ------------------------------------------------------------ revno: 2737.1.59 committer: knielsen@knielsen-hq.org branch nick: work-5.1-release timestamp: Thu 2009-11-05 14:40:01 +0100 message: Fix running test suite from installed package. Some files are in different locations in this case. ------------------------------------------------------------ revno: 2737.1.58 committer: Arjen Lentz <arjen@openquery.com> branch nick: mariadb-openquery-fixes timestamp: Sat 2009-10-31 15:29:16 +1000 message: libevent fixup required for Debian 4 (Etch) Also missing copyright for copied macros. Fix by Antony Curtis. ------------------------------------------------------------ revno: 2760 [merge] committer: knielsen@knielsen-hq.org branch nick: tmp timestamp: Fri 2009-11-06 18:22:32 +0100 message: Merge Mysql 5.1.39 merge into MariaDB trunk ------------------------------------------------------------ revno: 2743.1.5 committer: Michael Widenius <monty@askmonty.org> branch nick: mariadb-bug timestamp: Mon 2009-11-02 11:30:21 +0200 message: Fixed problem with schema tables and DECIMAL ------------------------------------------------------------ revno: 2743.1.4 committer: knielsen@knielsen-hq.org branch nick: work-5.1 timestamp: Fri 2009-10-16 17:01:36 +0200 message: When running with --skip-safemalloc, still do some basic, but cheap, overrun checks. This greatly helps with eg. slow hosts in Buildbot. ------------------------------------------------------------ revno: 2743.1.3 committer: knielsen@knielsen-hq.org branch nick: work-5.1 timestamp: Fri 2009-10-16 14:45:42 +0200 message: After-merge fixes for MySQL 5.1.39 merge. Some pbxt test suite files needed updating due to similar changes after bugfixes in MySQL 5.1.39. ------------------------------------------------------------ revno: 2743.1.2 [merge] committer: knielsen@knielsen-hq.org branch nick: work-5.1 timestamp: Thu 2009-10-15 23:52:31 +0200 message: Merge with latest MariaDB 5.1 trunk. ------------------------------------------------------------ revno: 2743.1.1 [merge] committer: knielsen@knielsen-hq.org branch nick: work-5.1 timestamp: Thu 2009-10-15 23:38:29 +0200 message: Merge MySQL 5.1.39 into MariaDB 5.1. ------------------------------------------------------------ revno: 2502.733.86 committer: Jonathan Perkin <jperkin@sun.com> branch nick: mysql-5.1.39-release timestamp: Fri 2009-09-04 17:45:07 +0200 message: Install mysqld.lib ------------------------------------------------------------ revno: 2502.733.85 [merge] committer: Jonathan Perkin <jperkin@sun.com> branch nick: mysql-5.1 timestamp: Thu 2009-09-03 01:48:06 +0200 message: Merge from mysql-5.1.38-release ------------------------------------------------------------ revno: 2502.733.84 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: merge-vg-5.1-bugteam timestamp: Wed 2009-09-02 18:45:33 +0300 message: null merge of 5.0 fixes backported from 5.1 ------------------------------------------------------------ revno: 1810.3943.19 committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.0-bugteam timestamp: Wed 2009-09-02 16:36:52 +0300 message: Backported the --parallel=str option from mtr2 for backward compatibility with the newer pb2 testing environments ------------------------------------------------------------ revno: 1810.3943.18 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.0-bugteam timestamp: Wed 2009-09-02 16:07:52 +0300 message: merge ------------------------------------------------------------ revno: 1810.3948.2 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.0-bugteam timestamp: Wed 2009-09-02 15:33:18 +0300 message: merge ------------------------------------------------------------ revno: 1810.3948.1 committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.0-bugteam timestamp: Wed 2009-09-02 13:23:37 +0300 message: moved version to 5.0-main ------------------------------------------------------------ revno: 2502.733.83 committer: Georgi Kodinov <joro@sun.com> branch nick: merge-vg-5.1-bugteam timestamp: Wed 2009-09-02 18:42:08 +0300 message: fixed a valgrind warning in partition_pruning ------------------------------------------------------------ revno: 2502.733.82 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: merge-vg-5.1-bugteam timestamp: Wed 2009-09-02 15:22:32 +0300 message: automerge ------------------------------------------------------------ revno: 2502.774.2 [merge] committer: Davi Arnaut <Davi.Arnaut@Sun.COM> branch nick: mysql-5.1-bugteam timestamp: Wed 2009-09-02 09:12:18 -0300 message: Manual merge. ------------------------------------------------------------ revno: 1810.3943.17 committer: Davi Arnaut <Davi.Arnaut@Sun.COM> branch nick: mysql-5.0-bugteam timestamp: Wed 2009-09-02 09:02:22 -0300 message: Post-merge fix. Observe C declaration placement rules. ------------------------------------------------------------ revno: 1810.3943.16 [merge] committer: Tatiana A. Nurnberg <azundris@mysql.com> branch nick: 50-35132m timestamp: Mon 2009-08-31 12:56:01 -0700 message: auto-merge ------------------------------------------------------------ revno: 2502.774.1 committer: Davi Arnaut <Davi.Arnaut@Sun.COM> branch nick: mysql-5.1-bugteam timestamp: Wed 2009-09-02 08:45:48 -0300 message: Increase thread stack size on HP-UX when built with debug. ------------------------------------------------------------ revno: 2502.733.81 committer: Georgi Kodinov <joro@sun.com> branch nick: merge-vg-5.1-bugteam timestamp: Wed 2009-09-02 15:20:47 +0300 message: fixed a valgrind warning in partitioning code ------------------------------------------------------------ revno: 2502.733.80 committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.1-bugteam timestamp: Wed 2009-09-02 13:22:47 +0300 message: Fixed win32 compilation warnings ------------------------------------------------------------ revno: 2502.733.79 committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.1-bugteam timestamp: Wed 2009-09-02 13:09:01 +0300 message: fixed compilation warnings ------------------------------------------------------------ revno: 2502.733.78 [merge] committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-51-bugteam timestamp: Tue 2009-09-01 15:54:59 +0200 message: merge to update with latest mysql-5.1-bugteam ------------------------------------------------------------ revno: 2502.773.2 committer: Georgi Kodinov <joro@sun.com> branch nick: test64-5.1-bugteam timestamp: Tue 2009-09-01 16:39:13 +0300 message: Fixed a problem in how BUILD/check_cpu handles Core 2 Duo processors. This fixes the regression introduced in 5.1 that prevents 64 bit builds on Intel while still keeping the core2 hack operational so the cluster can build. ------------------------------------------------------------ revno: 2502.773.1 committer: Davi Arnaut <Davi.Arnaut@Sun.COM> branch nick: mysql-5.1-bugteam timestamp: Tue 2009-09-01 09:32:26 -0300 message: Bug#45611: Minor code cleanup Remove a self assignment. Rework a few constructs to avoid a potential overflow. Based upon patch contributed by Michal Hrusecky ------------------------------------------------------------ revno: 2502.733.77 committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-51-bugteam timestamp: Tue 2009-09-01 14:53:27 +0200 message: post push fix for bug#20577 and bug#46362, disabling warnings ------------------------------------------------------------ revno: 2502.733.76 committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-51-bugteam timestamp: Tue 2009-09-01 13:04:56 +0200 message: Post fix patch for bug#20577 and bug#46362. On 64-bits machines the calculation gets the wrong types and results in very large numbers. Fixed by explicitly cast month to (int) ------------------------------------------------------------ revno: 2502.733.75 [merge] committer: Tatiana A. Nurnberg <azundris@mysql.com> branch nick: 51-35132m timestamp: Mon 2009-08-31 12:54:22 -0700 message: auto-merge ------------------------------------------------------------ revno: 2502.772.4 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.1-bugteam timestamp: Mon 2009-08-31 17:11:54 +0300 message: automerge ------------------------------------------------------------ revno: 1810.3947.4 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.0-bugteam timestamp: Mon 2009-08-31 17:08:10 +0300 message: merge 5.0-main -> 5.0-bugteam ------------------------------------------------------------ revno: 2502.772.3 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.1-bugteam timestamp: Mon 2009-08-31 17:09:09 +0300 message: automerge 5.1-main -> 5.1-bugteam ------------------------------------------------------------ revno: 2502.772.2 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: B46749-5.1-bugteam timestamp: Mon 2009-08-31 16:40:35 +0300 message: automerge ------------------------------------------------------------ revno: 1810.3947.3 committer: Georgi Kodinov <joro@sun.com> branch nick: B46749-5.0-bugteam timestamp: Thu 2009-08-27 14:40:42 +0300 message: Bug #46749: Segfault in add_key_fields() with outer subquery level field references This error requires a combination of factors : 1. An "impossible where" in the outermost SELECT 2. An aggregate in the outermost SELECT 3. A correlated subquery with a WHERE clause that includes an outer field reference as a top level WHERE sargable predicate When JOIN::optimize detects an "impossible WHERE" it will bail out without doing the rest of the work and initializations. It will not call make_join_statistics() as well. And make_join_statistics fills in various structures for each table referenced. When processing the result of the "impossible WHERE" the query must send a single row of data if there are aggregate functions in it. In this case the server marks all the aggregates as having received no rows and calls the relevant Item::val_xxx() method on the SELECT list. However if this SELECT list happens to contain a correlated subquery this subquery is evaluated in a normal evaluation mode. And if this correlated subquery has a reference to a field from the outermost "impossible where" SELECT the add_key_fields will mistakenly consider the outer field reference as a "local" field reference when looking for sargable predicates. But since the SELECT where the outer field reference refers to is not completely initialized due to the "impossible WHERE" in this level we'll get a NULL pointer reference. Fixed by making a better condition for discovering if a field is "local" to the SELECT level being processed. It's not enough to look for OUTER_REF_TABLE_BIT in this case since for outer references to constant tables the Item_field::used_tables() will return 0 regardless of whether the field reference is from the local SELECT or not. ------------------------------------------------------------ revno: 2502.772.1 [merge] committer: Anurag Shekhar <anurag.shekhar@sun.com> branch nick: mysql-5.1-bugteam timestamp: Mon 2009-08-31 13:26:09 +0530 message: merging bugfix from 5.0 ------------------------------------------------------------ revno: 1810.3947.2 [merge] committer: Anurag Shekhar <anurag.shekhar@sun.com> branch nick: mysql-5.0-bugteam-44723 timestamp: Mon 2009-08-31 13:02:31 +0530 message: merging with changes in bugteam branch. ------------------------------------------------------------ revno: 1810.3947.1 committer: Anurag Shekhar <anurag.shekhar@sun.com> branch nick: mysql-5.0-bugteam-44723 timestamp: Mon 2009-08-24 13:15:51 +0530 message: Bug #44723 Larger read_buffer_size values can cause performance decrease for INSERTs Bulk inserts (multiple row, CREATE ... SELECT, INSERT ... SELECT) into MyISAM tables were performed inefficiently. This was mainly affecting use cases where read_buffer_size was considerably large (>256K) and low number of rows was inserted (e.g. 30-100). The problem was that during I/O cache initialization (this happens before each bulk insert) allocated I/O buffer was unnecessarily initialized to '\0'. This was happening because of mess in flag values. MyISAM informs I/O cache to wait for free space (if out of disk space) by passing MY_WAIT_IF_FULL flag. Since MY_WAIT_IF_FULL and MY_ZEROFILL have the same values, memory allocator was initializing memory to '\0'. The performance gain provided with this patch may only be visible with non-debug binaries, since safemalloc always initializes allocated memory to 0xA5A5... ------------------------------------------------------------ revno: 2502.733.74 [merge] committer: Tatiana A. Nurnberg <azundris@mysql.com> branch nick: 51-35132m timestamp: Mon 2009-08-31 12:40:33 -0700 message: manual merge ------------------------------------------------------------ revno: 1810.3943.15 committer: Tatiana A. Nurnberg <azundris@mysql.com> branch nick: 50-35132m timestamp: Mon 2009-08-31 10:01:13 -0700 message: Bug#35132: MySQLadmin --wait ping always crashes on Windows systems Failing to connect would release parts of the MYSQL struct. We would then proceed to try again to connect without re- initializing the struct. We prevent the unwanted freeing of data we'll still need now. ------------------------------------------------------------ revno: 2502.733.73 committer: <Dao-Gang.Qu@sun.com> branch nick: mysql-5.1-bugteam timestamp: Mon 2009-08-31 10:26:01 +0800 message: Bug #44331 Restore of database with events produces warning in replication Update the test case for BUG#44331 to fix the push build failure. ------------------------------------------------------------ revno: 2502.733.72 [merge] committer: Staale Smedseng <staale.smedseng@sun.com> branch nick: 43414-51 timestamp: Sun 2009-08-30 19:01:48 +0200 message: Merge from 5.1-bugteam ------------------------------------------------------------ revno: 2502.770.3 [merge] committer: Alexey Kopytov <Alexey.Kopytov@Sun.com> branch nick: mysql-5.1-bugteam timestamp: Sun 2009-08-30 11:38:49 +0400 message: Automerge. ------------------------------------------------------------ revno: 2502.771.1 committer: Alexey Kopytov <Alexey.Kopytov@Sun.com> branch nick: my51-bug46607 timestamp: Sun 2009-08-30 11:03:37 +0400 message: Bug #46607: Assertion failed: (cond_type == Item::FUNC_ITEM) results in server crash check_group_min_max_predicates() assumed the input condition item to be one of COND_ITEM, SUBSELECT_ITEM, or FUNC_ITEM. Since a condition of the form "field" is also a valid condition equivalent to "field <> 0", using such a condition in a query where the loose index scan was chosen resulted in a debug assertion failure. Fixed by handling conditions of the FIELD_ITEM type in check_group_min_max_predicates(). ------------------------------------------------------------ revno: 2502.770.2 committer: <Dao-Gang.Qu@sun.com> branch nick: mysql-5.1-bugteam timestamp: Sat 2009-08-29 16:52:22 +0800 message: Bug #44331 Restore of database with events produces warning in replication If an EVENT is created without the DEFINER clause set explicitly or with it set to CURRENT_USER, the master and slaves become inconsistent. This issue stems from the fact that in both cases, the DEFINER is set to the CURRENT_USER of the current thread. On the master, the CURRENT_USER is the mysqld's user, while on the slave, the CURRENT_USER is empty for the SQL Thread which is responsible for executing the statement. To fix the problem, we do what follows. If the definer is not set explicitly, a DEFINER clause is added when writing the query into binlog; if 'CURRENT_USER' is used as the DEFINER, it is replaced with the value of the current user before writing to binlog. ------------------------------------------------------------ revno: 2502.770.1 committer: Davi Arnaut <Davi.Arnaut@Sun.COM> branch nick: mysql-5.1-bugteam timestamp: Fri 2009-08-28 18:49:16 -0300 message: Reduce test case runtime. ------------------------------------------------------------ revno: 2502.733.71 [merge] committer: Staale Smedseng <staale.smedseng@sun.com> branch nick: 43414-51 timestamp: Fri 2009-08-28 18:21:54 +0200 message: Merge from 5.0 for 43414 ------------------------------------------------------------ revno: 1810.3943.14 committer: Staale Smedseng <staale.smedseng@sun.com> branch nick: 43414-50 timestamp: Fri 2009-08-28 17:51:31 +0200 message: Bug #43414 Parenthesis (and other) warnings compiling MySQL with gcc 4.3.2 This patch fixes a number of GCC warnings about variables used before initialized. A new macro UNINIT_VAR() is introduced for use in the variable declaration, and LINT_INIT() usage will be gradually deprecated. (A workaround is used for g++, pending a patch for a g++ bug.) GCC warnings for unused results (attribute warn_unused_result) for a number of system calls (present at least in later Ubuntus, where the usual void cast trick doesn't work) are also fixed. ------------------------------------------------------------ revno: 2502.733.70 committer: Davi Arnaut <Davi.Arnaut@Sun.COM> branch nick: mysql-5.1-bugteam timestamp: Fri 2009-08-28 12:06:59 -0300 message: Fix for a few assorted compiler warnings. ------------------------------------------------------------ revno: 2502.733.69 [merge] committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-51-bugteam_2 timestamp: Fri 2009-08-28 13:54:17 +0200 message: merge ------------------------------------------------------------ revno: 2502.767.3 [merge] committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-51-bugteam timestamp: Fri 2009-08-28 12:55:59 +0200 message: Manual merge between bug#46362 and bug#20577. ------------------------------------------------------------ revno: 2502.769.1 committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: b46362-51-bugteam timestamp: Wed 2009-08-26 12:51:23 +0200 message: Bug#46362: Endpoint should be set to false for TO_DAYS(DATE) There were a problem since pruning uses the field for comparison (while evaluate_join_record uses longlong), resulting in pruning failures when comparing DATE to DATETIME. Fix was to always comparing DATE vs DATETIME as DATETIME, by adding ' 00:00:00' to the DATE string. And adding optimization for comparing with 23:59:59, so that DATETIME_col > '2001-02-03 23:59:59' -> TO_DAYS(DATETIME_col) > TO_DAYS('2001-02-03 23:59:59') instead of '>='. ------------------------------------------------------------ revno: 2502.767.2 [merge] committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-51-bugteam timestamp: Wed 2009-08-26 14:45:50 +0200 message: merge ------------------------------------------------------------ revno: 2502.768.1 committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: test-51-bugteam_innodb_plugin timestamp: Fri 2009-08-07 15:08:32 +0200 message: Bug#32430: 'show innodb status' causes errors Invalid (old?) table or database name in logs Post push patch. Bug was that a non partitioned table file was not converted to system_charset, (due to table_name_len was not set). Also missing DBUG_RETURN. And Innodb adds quotes after calling the function, so I added one more mode where explain_filename does not add quotes. But it still appends the [sub]partition name as a comment. Also caught a minor quoting bug, the character '`' was not quoted in the identifier. (so 'a`b' was quoted as `a`b` and not `a``b`, this is mulitbyte characters aware.) ------------------------------------------------------------ revno: 2502.767.1 [merge] committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-51-bugteam timestamp: Wed 2009-08-26 14:40:18 +0200 message: merge ------------------------------------------------------------ revno: 2502.766.1 committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: b20577-51-bugteam timestamp: Wed 2009-08-26 12:59:49 +0200 message: Bug#20577: Partitions: use of to_days() function leads to selection failures Problem was that the partition containing NULL values was pruned away, since '2001-01-01' < '2001-02-00' but TO_DAYS('2001-02-00') is NULL. Added the NULL partition for RANGE/LIST partitioning on TO_DAYS() function to be scanned too. Also fixed a bug that added ALLOW_INVALID_DATES to sql_mode (SELECT * FROM t WHERE date_col < '1999-99-99' on a RANGE/LIST partitioned table would add it). ------------------------------------------------------------ revno: 2502.733.68 [merge] committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.1-bugteam timestamp: Fri 2009-08-28 10:45:57 +0100 message: merge mysql-5.0-bugteam --> mysql-5.1-bugteam ------------------------------------------------------------ revno: 1810.3943.13 [merge] committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.0-bugteam timestamp: Fri 2009-08-28 10:29:04 +0100 message: auto-merge mysql-5.0-bugteam (local) --> mysql-5.0-bugteam ------------------------------------------------------------ revno: 1810.3789.10 committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: b46861-5.0.72sp timestamp: Thu 2009-08-27 17:28:09 +0100 message: BUG#46861 Auto-closing of temporary tables broken by replicate-rewrite-db When a connection is dropped any remaining temporary table is also automatically dropped and the SQL statement of this operation is written to the binary log in order to drop such tables on the slave and keep the slave in sync. Specifically, the current code base creates the following type of statement: DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `db`.`table`; Unfortunately, appending the database to the table name in this manner circumvents the replicate-rewrite-db option (and any options that check the current database). To solve the issue, we started writing the statement to the binary as follows: use `db`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `table`; ------------------------------------------------------------ revno: 2502.733.67 committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.1-bugteam timestamp: Thu 2009-08-27 13:46:29 +0100 message: BUG#46864 Incorrect update of InnoDB table on slave when using trigger with myisam table Slave does not correctly handle "expected errors" leading to inconsistencies between the mater and slave. Specifically, when a statement changes both transactional and non-transactional tables, the transactional changes are automatically rolled back on the master but the slave ignores the error and does not roll them back thus leading to inconsistencies. To fix the problem, we automatically roll back a statement that fails on the slave but note that the transaction is not rolled back unless a "rollback" command is in the relay log file. ------------------------------------------------------------ revno: 2502.733.66 [merge] committer: Sergey Glukhov <Sergey.Glukhov@sun.com> branch nick: mysql-5.1-bugteam timestamp: Thu 2009-08-27 15:59:25 +0500 message: 5.0-bugteam->5.1-bugteam merge ------------------------------------------------------------ revno: 1810.3943.12 committer: Sergey Glukhov <Sergey.Glukhov@sun.com> branch nick: mysql-5.0-bugteam timestamp: Thu 2009-08-27 15:22:19 +0500 message: Bug#46184 Crash, SELECT ... FROM derived table procedure analyze The crash happens because select_union object is used as result set for queries which have derived tables. select_union use temporary table as data storage and if fields count exceeds 10(count of values for procedure ANALYSE()) then we get a crash on fill_record() function. ------------------------------------------------------------ revno: 2502.733.65 committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.1-bugteam timestamp: Thu 2009-08-27 10:32:27 +0100 message: Post-fix for BUG#28976. Updated main.mysqlbinlog_row_trans's result file as TRUNCATE statements are wrapped in BEGIN...COMMIT. ------------------------------------------------------------ revno: 2502.733.64 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: B37044-5.1-bugteam timestamp: Thu 2009-08-27 10:46:35 +0300 message: merged 5.0-bugteam -> 5.1-bugteam ------------------------------------------------------------ revno: 1810.3943.11 committer: Georgi Kodinov <joro@sun.com> branch nick: B37044-5.0-bugteam timestamp: Mon 2009-08-24 15:28:03 +0300 message: Bug #37044: Read overflow in opt_range.cc found during "make test" The code was using a special global buffer for the value of IS NULL ranges. This was not always long enough to be copied by a regular memcpy. As a result read buffer overflows may occur. Fixed by setting the null byte to 1 and setting the rest of the field disk image to NULL with a bzero (instead of relying on the buffer and memcpy()). ------------------------------------------------------------ revno: 1810.3943.10 committer: Georgi Kodinov <joro@sun.com> branch nick: B46807-5.0-bugteam timestamp: Wed 2009-08-19 17:53:43 +0300 message: Bug #46807: subselect test fails on PB-2 with a crash The check for stack overflow was independent of the size of the structure stored in the heap. Fixed by adding sizeof(PARAM) to the requested free heap size. ------------------------------------------------------------ revno: 2502.733.63 committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.1-bugteam timestamp: Thu 2009-08-27 00:13:03 +0100 message: BUG#28976 Mixing trans and non-trans tables in one transaction results in incorrect binlog Mixing transactional (T) and non-transactional (N) tables on behalf of a transaction may lead to inconsistencies among masters and slaves in STATEMENT mode. The problem stems from the fact that although modifications done to non-transactional tables on behalf of a transaction become immediately visible to other connections they do not immediately get to the binary log and therefore consistency is broken. Although there may be issues in mixing T and M tables in STATEMENT mode, there are safe combinations that clients find useful. In this bug, we fix the following issue. Mixing N and T tables in multi-level (e.g. a statement that fires a trigger) or multi-table table statements (e.g. update t1, t2...) were not handled correctly. In such cases, it was not possible to distinguish when a T table was updated if the sequence of changes was N and T. In a nutshell, just the flag "modified_non_trans_table" was not enough to reflect that both a N and T tables were changed. To circumvent this issue, we check if an engine is registered in the handler's list and changed something which means that a T table was modified. Check WL 2687 for a full-fledged patch that will make the use of either the MIXED or ROW modes completely safe. ------------------------------------------------------------ revno: 2502.733.62 committer: Davi Arnaut <Davi.Arnaut@Sun.COM> branch nick: 45261-5.1 timestamp: Mon 2009-08-24 16:47:08 -0300 message: Bug#45261: Crash, stored procedure + decimal The problem was that creating a DECIMAL column from a decimal value could lead to a failed assertion as decimal values can have a higher precision than those attached to a table. The assert could be triggered by creating a table from a decimal with a large (> 30) scale. Also, there was a problem in calculating the number of digits in the integral and fractional parts if both exceeded the maximum number of digits permitted by the new decimal type. The solution is to ensure that truncation procedure is executed when deducing a DECIMAL column from a decimal value of higher precision. If the integer part is equal to or bigger than the maximum precision for the DECIMAL type (65), the integer part is truncated to fit and the fractional becomes zero. Otherwise, the fractional part is truncated to fit into the space left after the integer part is copied. This patch borrows code and ideas from Martin Hansson's patch. ------------------------------------------------------------ revno: 2502.733.61 [merge] committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.1-bugteam-push timestamp: Mon 2009-08-24 11:37:44 +0100 message: auto-merge mysql-5.1-bugteam (local) --> mysql-5.1-bugteam ------------------------------------------------------------ revno: 2502.765.1 committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.1-bugteam timestamp: Wed 2009-08-19 16:38:18 +0100 message: BUG#45694 Deadlock in replicated statement is not retried If the SQL Thread fails to execute an event due to a temporary error (e.g. ER_LOCK_DEADLOCK) and the option "--slave_transaction_retries" is set the SQL Thread should not be aborted and the transaction should be restarted from the beginning and re-executed. Unfortunately, a wrong interpretation of the THD::is_fatal_error was preventing this behavior. In a nutshell, "this variable is set to TRUE if an execution of a compound statement cannot continue. In particular, it is used to disable access to the CONTINUE or EXIT handlers of stored routines. So even temporary errors may have this variable set. To fix the bug, we have done what follows: DBUG_ENTER("has_temporary_error"); - if (thd->is_fatal_error) - DBUG_RETURN(0); - DBUG_EXECUTE_IF("all_errors_are_temporary_errors", if (thd->main_da.is_error()) { ------------------------------------------------------------ revno: 2502.733.60 [merge] committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.1-bugteam-push timestamp: Mon 2009-08-24 10:24:52 +0100 message: auto-merge mysql-5.1-bugteam (local) --> mysql-5.1-bugteam ------------------------------------------------------------ revno: 2502.764.1 committer: Alfranio Correia <alfranio.correia@sun.com> branch nick: mysql-5.1-bugteam timestamp: Thu 2009-08-13 17:21:01 +0100 message: BUG#46130 Slave does not correctly handle "expected errors" In STATEMENT based replication, a statement that failed on the master but that updated non-transactional tables is written to binary log with the error code appended to it. On the slave, the statement is executed and the same error is expected. However, when an "expected error" did not happen on the slave and was either ignored or was related to a concurrency issue on the master, the slave did not rollback the effects of the statement and as such inconsistencies might happen. To fix the problem, we automatically rollback a statement that should have failed on a slave but succeded and whose expected failure is either ignored or stems from a concurrency issue on the master. ------------------------------------------------------------ revno: 2502.733.59 [merge] committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-51-bugteam timestamp: Fri 2009-08-21 18:00:38 +0200 message: merge ------------------------------------------------------------ revno: 2502.763.1 committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: b46639-51-bugteam timestamp: Fri 2009-08-21 17:38:29 +0200 message: Bug#46639: 1030 (HY000): Got error 124 from storage engine on INSERT ... SELECT ... Problem was that when bulk insert is used on an empty table/partition, it disables the indexes for better performance, but in this specific case it also tries to read from that partition using an index, which is not possible since it has been disabled. Solution was to allow index reads on disabled indexes if there are no records. Also reverted the patch for bug#38005, since that was a workaround in the partitioning engine instead of a fix in myisam. ------------------------------------------------------------ revno: 2502.733.58 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: B46019-5.1-bugteam timestamp: Fri 2009-08-21 17:41:48 +0300 message: reverted the fix for bug #46019 from 5.1-bugteam ------------------------------------------------------------ revno: 1810.3943.9 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: B46019-5.0-bugteam timestamp: Fri 2009-08-21 17:12:03 +0300 message: automerge ------------------------------------------------------------ revno: 1810.3946.1 [merge] committer: Martin Hansson <martin.hansson@sun.com> branch nick: 5.0bt timestamp: Fri 2009-08-21 14:31:40 +0200 message: Merge. ------------------------------------------------------------ revno: 1810.3943.8 committer: Georgi Kodinov <joro@sun.com> branch nick: B46019-5.0-bugteam timestamp: Fri 2009-08-21 17:10:55 +0300 message: Revert of the fix for bug #46019. ------------------------------------------------------------ revno: 2502.733.57 [merge] committer: Martin Hansson <martin.hansson@sun.com> branch nick: 5.1bt timestamp: Fri 2009-08-21 12:13:03 +0200 message: Merge. ------------------------------------------------------------ revno: 2502.762.1 [merge] committer: Martin Hansson <martin.hansson@sun.com> branch nick: 5.1bt-gca timestamp: Thu 2009-08-20 14:30:59 +0200 message: Bug#46616: Merge ------------------------------------------------------------ revno: 1810.3945.1 committer: Martin Hansson <martin.hansson@sun.com> branch nick: 5.0bt-gca timestamp: Thu 2009-08-20 13:56:29 +0200 message: Bug#46616: Assertion `!table->auto_increment_field_not_null' on view manipulations The bespoke flag was not properly reset after last call to fill_record. Fixed by resetting in caller mysql_update. ------------------------------------------------------------ revno: 2502.733.56 committer: Ramil Kalimullin <ramil@mysql.com> branch nick: mysql-5.1-bugteam timestamp: Fri 2009-08-21 10:55:35 +0500 message: Fix for bug #46456 [Ver->Prg]: HANDLER OPEN + TRUNCATE + DROP (temporary) TABLE, crash Problem: if one has an open "HANDLER t1", further "TRUNCATE t1" doesn't close the handler and leaves handler table hash in an inconsistent state, that may lead to a server crash. Fix: TRUNCATE should implicitly close all open handlers. Doc. request: the fact should be described in the manual accordingly. ------------------------------------------------------------ revno: 2502.733.55 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: B46019-5.1-bugteam timestamp: Thu 2009-08-20 17:11:22 +0300 message: merge of bug #46019 to 5.1-bugteam ------------------------------------------------------------ revno: 1810.3943.7 committer: Georgi Kodinov <joro@sun.com> branch nick: B46019-5.0-bugteam timestamp: Wed 2009-08-19 15:14:57 +0300 message: Bug #46019: ERROR 1356 When selecting from within another view that has Group By Table access rights checking function check_grant() assumed that no view is opened when it's called. This is not true with nested views where the inner view needs materialization. In this case the view is already materialized when check_grant() is called for it. This caused check_grant() to not look for table level grants on the materialized view table. Fixed by checking if a view is already materialized and if it is check table level grants using the original table name (not the ones of the materialized temp table). ------------------------------------------------------------ revno: 2502.733.54 committer: Georgi Kodinov <joro@sun.com> branch nick: B45962-5.1-bugteam timestamp: Thu 2009-07-09 15:05:30 +0300 message: Bug #45962: memory leak after 'sort aborted' errors When the function exits with an error it was not freeing the local Unique class instance. Fixed my making sure all the places where the function returns from are freeing the Unique instance ------------------------------------------------------------ revno: 2502.733.53 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: B39326-5.1-bugteam timestamp: Wed 2009-08-19 18:16:30 +0300 message: null merge of the backport of Chad's fix for bug #39326 to 5.1-bugteam ------------------------------------------------------------ revno: 1810.3943.6 committer: Georgi Kodinov <joro@sun.com> branch nick: B39326-5.0-bugteam timestamp: Wed 2009-08-19 10:59:17 +0300 message: backport of Chad's fix for bug #39326 to 5.0-bugteam ------------------------------------------------------------ revno: 2502.733.52 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.1-bugteam timestamp: Mon 2009-08-17 17:21:08 +0300 message: automere ------------------------------------------------------------ revno: 1810.3943.5 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.0-bugteam timestamp: Mon 2009-08-17 17:13:08 +0300 message: automerge ------------------------------------------------------------ revno: 2502.733.51 [merge] committer: Georgi Kodinov <joro@sun.com> branch nick: merge-5.1-bugteam timestamp: Mon 2009-08-17 17:14:51 +0300 message: automerge ------------------------------------------------------------ revno: 2502.733.50 [merge] committer: Ramil Kalimullin <ramil@mysql.com> branch nick: mysql-5.1-bugteam timestamp: Fri 2009-08-14 14:13:16 +0500 message: Automerge ------------------------------------------------------------ revno: 2502.761.1 [merge] committer: Davi Arnaut <Davi.Arnaut@Sun.COM> branch nick: mysql-5.1-bugteam timestamp: Thu 2009-08-13 17:45:01 -0300 message: Merge from mysql-5.0-bugteam. ------------------------------------------------------------ revno: 1810.3943.4 committer: Davi Arnaut <Davi.Arnaut@Sun.COM> branch nick: 45238-5.0 timestamp: Thu 2009-08-13 17:07:20 -0300 message: Bug#46013: rpl_extraColmaster_myisam fails on pb2 Bug#45243: crash on win in sql thread clear_tables_to_lock() -> free() Bug#45242: crash on win in mysql_close() -> free() Bug#45238: rpl_slave_skip, rpl_change_master failed (lost connection) for STOP SLAVE Bug#46030: rpl_truncate_3innodb causes server crash on windows Bug#46014: rpl_stm_reset_slave crashes the server sporadically in pb2 When killing a user session on the server, it's necessary to interrupt (notify) the thread associated with the session that the connection is being killed so that the thread is woken up if waiting for I/O. On a few platforms (Mac, Windows and HP-UX) where the SIGNAL_WITH_VIO_CLOSE flag is defined, this interruption procedure is to asynchronously close the underlying socket of the connection. In order to enable this schema, each connection serving thread registers its VIO (I/O interface) so that other threads can access it and close the connection. But only the owner thread of the VIO might delete it as to guarantee that other threads won't see freed memory (the thread unregisters the VIO before deleting it). A side note: closing the socket introduces a harmless race that might cause a thread attempt to read from a closed socket, but this is deemed acceptable. The problem is that this infrastructure was meant to only be used by server threads, but the slave I/O thread was registering the VIO of a mysql handle (a client API structure that represents a connection to another server instance) as a active connection of the thread. But under some circumstances such as network failures, the client API might destroy the VIO associated with a handle at will, yet the VIO wouldn't be properly unregistered. This could lead to accesses to freed data if a thread attempted to kill a slave I/O thread whose connection was already broken. There was a attempt to work around this by checking whether the socket was being interrupted, but this hack didn't work as intended due to the aforementioned race -- attempting to read from the socket would yield a "bad file descriptor" error. The solution is to add a hook to the client API that is called from the client code before the VIO of a handle is deleted. This hook allows the slave I/O thread to detach the active vio so it does not point to freed memory. ------------------------------------------------------------ revno: 2502.733.49 committer: Ramil Kalimullin <ramil@mysql.com> branch nick: mysql-5.1-bugteam timestamp: Fri 2009-08-14 00:49:28 +0500 message: Fix for bug #46614: Assertion in show_create_trigger() on SHOW CREATE TRIGGER + MERGE table Problem: SHOW CREATE TRIGGER erroneously relies on fact that we have the only underlying table for a trigger (wrong for merge tables). Fix: remove erroneous assert(). ------------------------------------------------------------ revno: 2502.733.48 committer: <Li-Bing.Song@sun.com> branch nick: mysql-5.1-bugteam timestamp: Thu 2009-08-13 10:48:57 +0800 message: BUG#45574 CREATE IF NOT EXISTS is not binlogged if the object exists There is an inconsistency with DROP DATABASE|TABLE|EVENT IF EXISTS and CREATE DATABASE|TABLE|EVENT IF NOT EXISTS. DROP IF EXISTS statements are binlogged even if either the DB, TABLE or EVENT does not exist. In contrast, Only the CREATE EVENT IF NOT EXISTS is binlogged when the EVENT exists. This patch fixes the following cases for all the replication formats: CREATE DATABASE IF NOT EXISTS. CREATE TABLE IF NOT EXISTS, CREATE TABLE IF NOT EXISTS ... LIKE, CREAET TABLE IF NOT EXISTS ... SELECT. ------------------------------------------------------------ revno: 2502.733.47 [merge] committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-51-bugteam timestamp: Wed 2009-08-12 18:53:33 +0200 message: merge ------------------------------------------------------------ revno: 2502.760.2 committer: Konstantin Osipov <kostja@sun.com> branch nick: 5.1-bugteam timestamp: Wed 2009-08-12 17:11:06 +0400 message: A follow up patch for the follow up patch for Bug#45829 "CREATE TABLE TRANSACTIONAL PAGE_CHECKSUM ROW_FORMAT=PAGE accepted, does nothing". Put back stubs for members of structures that are shared between sql/ and pluggable storage engines. to not break ABI unnecessarily. To be NULL-merged into 5.4, where we do break the ABI already. ------------------------------------------------------------ revno: 2502.760.1 committer: Konstantin Osipov <kostja@sun.com> branch nick: 5.1-bugteam timestamp: Wed 2009-08-12 14:57:41 +0400 message: A follow up patch for Bug#45829 "CREATE TABLE TRANSACTIONAL PAGE_CHECKSUM ROW_FORMAT=PAGE accepted, does nothing" Remove unused code that would lead to warnings when compiling sql_yacc.yy. ------------------------------------------------------------ revno: 2502.733.46 [merge] committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-51-bugteam timestamp: Wed 2009-08-12 12:03:05 +0200 message: manual merge ------------------------------------------------------------ revno: 2502.759.1 committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: b46478-51-bugteam timestamp: Thu 2009-08-06 14:28:39 +0200 message: Bug#46478: timestamp field incorrectly defaulted when partition is reoganized. Problem was that table->timestamp_field_type was not changed before copying rows between partitions. fixed by setting it to TIMESTAMP_NO_AUTO_SET as the first thing in fast_alter_partition_table, so that all if-branches is covered. ------------------------------------------------------------ revno: 2502.733.45 [merge] committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: topush-51-bugteam timestamp: Wed 2009-08-12 11:46:08 +0200 message: merge ------------------------------------------------------------ revno: 2502.758.1 committer: Mattias Jonsson <mattias.jonsson@sun.com> branch nick: b39893-51-bugteam timestamp: Thu 2009-01-08 15:16:44 +0100 message: Bug#39893: Crash if select on a partitioned table, when partitioning is disabled Problem was that it tried to run partitioning function calls when opening a partitioned table, when it was explicitly disabled. Solution is to check if the partitioning plugin is ready to use before using any partitioning specific calls. ------------------------------------------------------------ revno: 2502.733.44 [merge] committer: <Li-Bing.Song@sun.com> branch nick: mysql-5.1-bugteam timestamp: Wed 2009-08-12 13:31:56 +0800 message: Manual Merge ------------------------------------------------------------ revno: 1810.3943.3 committer: <Li-Bing.Song@sun.com> branch nick: mysql-5.0-bugteam timestamp: Wed 2009-08-12 11:54:05 +0800 message: BUG#45516 SQL thread does not use database charset properly Replication SQL thread does not set database default charset to thd->variables.collation_database properly, when executing LOAD DATA binlog. This bug can be repeated by using "LOAD DATA" command in STATEMENT mode. This patch adds code to find the default character set of the current database then assign it to thd->db_charset when slave server begins to execute a relay log. The test of this bug is added into rpl_loaddata_charset.test ------------------------------------------------------------ revno: 2502.733.43 [merge] committer: Davi Arnaut <Davi.Arnaut@Sun.COM> branch nick: mysql-5.1-bugteam timestamp: Tue 2009-08-11 13:29:45 -0300 message: Merge from mysql-5.0-bugteam. ------------------------------------------------------------ revno: 2759 committer: sanja@askmonty.org branch nick: work-maria-5.1-federatedx timestamp: Tue 2009-11-03 16:39:54 +0200 message: Add federatedx files for build ------------------------------------------------------------ revno: 2758 committer: sanja@askmonty.org branch nick: work-maria-5.1-federatedx timestamp: Tue 2009-11-03 13:08:09 +0200 message: Make federated compiling under windows ------------------------------------------------------------ revno: 2757 committer: sanja@askmonty.org branch nick: work-maria-5.1-win64 timestamp: Mon 2009-11-02 21:17:58 +0200 message: Fixed federatedx building under windows ------------------------------------------------------------ revno: 2756 [merge] committer: Hakan Kuecuekyilmaz <hakan@askmonty.org> branch nick: maria-local-master timestamp: Sun 2009-11-01 18:41:16 +0100 message: Merge. ------------------------------------------------------------ revno: 2754.1.2 [merge] committer: Hakan Kuecuekyilmaz <hakan@askmonty.org> branch nick: maria timestamp: Sun 2009-11-01 18:37:37 +0100 message: Merge. ------------------------------------------------------------ revno: 2754.1.1 committer: Hakan Kuecuekyilmaz <hakan@askmonty.org> branch nick: maria timestamp: Sun 2009-11-01 16:09:55 +0100 message: BUILD/compile-dist && make dist was not working due to typos. Fixed by renaming a file and editing the typo in Makefile.am ------------------------------------------------------------ revno: 2755 committer: sanja@askmonty.org branch nick: work-maria-5.1-win64 timestamp: Sat 2009-10-31 21:22:50 +0200 message: Compilation under windows x64 made possible. ------------------------------------------------------------ revno: 2754 [merge] committer: Michael Widenius <monty@askmonty.org> branch nick: maria-5.1 timestamp: Fri 2009-10-30 22:28:11 +0200 message: Merge with 5.1-release ------------------------------------------------------------ revno: 2737.1.57 committer: Sergey Petrunya <psergey@askmonty.org> branch nick: maria-5.1-build1 timestamp: Fri 2009-10-30 13:50:48 +0300 message: Dummy change to push the release tag. ------------------------------------------------------------ revno: 2753 [merge] committer: Michael Widenius <monty@askmonty.org> branch nick: maria-5.1 timestamp: Fri 2009-10-30 22:16:08 +0200 message: Merge of FederatedX code ------------------------------------------------------------ revno: 2751.1.2 committer: Michael Widenius <monty@askmonty.org> branch nick: mysql-maria timestamp: Fri 2009-10-30 20:51:46 +0200 message: Added ignore for symlinked build file ------------------------------------------------------------ revno: 2751.1.1 committer: Michael Widenius <monty@askmonty.org> branch nick: mysql-maria timestamp: Fri 2009-10-30 20:50:56 +0200 message: Added federatedx storage engine Fixed compiler warnings ------------------------------------------------------------ revno: 2752 committer: Sergey Petrunya <psergey@askmonty.org> branch nick: maria-5.1 timestamp: Thu 2009-10-29 20:50:33 +0300 message: MWL#17: Table elimination - add debug tests (were accidentally not pushed with the bulk of WL) ------------------------------------------------------------ revno: 2751 committer: Michael Widenius <monty@askmonty.org> branch nick: mysql-maria timestamp: Thu 2009-10-29 02:04:56 +0200 message: Compile by default MySQL clients with libmysqldclient.a (not .so) This makes them suitable for tar archices right away and also are easier to copy Don't disable federated storage engine by default. Don't allow one to disable the Maria storage engine if it's used for temp tables ------------------------------------------------------------ revno: 2750 committer: Michael Widenius <monty@askmonty.org> branch nick: mysql-maria timestamp: Wed 2009-10-28 10:08:54 +0200 message: Added missing 'source' command. ------------------------------------------------------------ revno: 2749 committer: Michael Widenius <monty@askmonty.org> branch nick: mysql-maria timestamp: Wed 2009-10-28 09:52:34 +0200 message: Speed up of test suite: - Added --disable_query_log ; begin ; .... commit; --enable_query_log around all while loops that does insert ------------------------------------------------------------ revno: 2748 [merge] committer: Michael Widenius <monty@askmonty.org> branch nick: mysql-maria timestamp: Mon 2009-10-26 13:38:17 +0200 message: Automatic merge with maria-merge ------------------------------------------------------------ revno: 2747 committer: Michael Widenius <monty@askmonty.org> branch nick: mysql-maria timestamp: Mon 2009-10-26 13:35:42 +0200 message: Fixed compiler warning message - Added checking of return value for system(), freopen(), fgets() and chown() - Ensure that calls that require a format strings gets a format string - Other trivial things Updated test suite results (especially for pbxt and embedded server) Removed warning for "Invalid (old?) table or database name 'mysqld.1'" from pbxt tests Speed up some pbxt tests by inserting begin ; commit; around "while loops with inserts" Added mysqld startup option '--debug-flush' Create maria_recovery.trace in data directory instead of current directory ------------------------------------------------------------ revno: 2746 [merge] committer: Michael Widenius <monty@askmonty.org> branch nick: mysql-maria timestamp: Wed 2009-10-14 11:09:56 +0300 message: Automatic merge with 5.1-merge ------------------------------------------------------------ revno: 2745 committer: Michael Widenius <monty@askmonty.org> branch nick: mysql-maria timestamp: Tue 2009-10-13 19:57:36 +0300 message: Removed not used declarations ------------------------------------------------------------ revno: 2744 committer: Michael Widenius <monty@askmonty.org> branch nick: mysql-maria timestamp: Tue 2009-10-13 15:47:17 +0300 message: Force restart before maria_showlog_error to get rid of status from previous connections This fixes a race condition in the test system ------------------------------------------------------------ revno: 2743 [merge] committer: knielsen@knielsen-hq.org branch nick: mariadb-5.1 timestamp: Tue 2009-10-06 20:37:55 +0200 message: Merge a bunch of small fixes from release tree into main lp:maria. ------------------------------------------------------------ revno: 2742 [merge] committer: Michael Widenius <monty@askmonty.org> branch nick: maria-skr timestamp: Tue 2009-10-06 09:20:31 +0300 message: Merge with bug fix ------------------------------------------------------------ revno: 2740.1.2 [merge] committer: Michael Widenius <monty@askmonty.org> branch nick: mysql-maria timestamp: Tue 2009-10-06 09:15:12 +0300 message: Merge with trunk ------------------------------------------------------------ revno: 2740.1.1 committer: Michael Widenius <monty@askmonty.org> branch nick: mysql-maria timestamp: Tue 2009-10-06 09:13:56 +0300 message: Don't call _ma_decrement_open_count() for ma_extra(HA_EXTRA_PREPARE_FOR_DROP). Don't call _mi_decrement_open_count() for mi_extra(HA_EXTRA_PREPARE_FOR_DROP). This ensures that if we empty the key cache and a drop table fails later, the index will be automaticly rebuilt ------------------------------------------------------------ revno: 2741 committer: knielsen@knielsen-hq.org branch nick: work-5.1 timestamp: Mon 2009-10-05 14:26:57 +0200 message: MBug#443014: Too many 'skipped' messages in mysql-test-run Remove mysql-test-run.pl unnecessary and confusing 'skipped' messages. - In mysql-test-run.pl, we auto-generate combinations of replication tests. But this sometimes generates combinations that are meaningless, like running a test that requires row-based replication with statement-based. These superfluous combinationes should not be reported as skipped, they should just be deleted. - Remove ndb suites from default suites, as we do not support NDB in MariaDB. Keep skip messages resulting from running mysql-test-run.pl in special ways, eg. --mysqld=--binlog-format=statement. -----------------------------------------------------------------------