------------------------------------------------------------
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
