Home | Back
------------------------------------------------------------
revno: 4040
committer: Dmitry Lenev <Dmitry.Lenev@oracle.com>
branch nick: mysql-5.5.29-release
timestamp: Mon 2012-12-10 10:06:37 +0400
message:
  Bug #15954896 "SP, MULTI-TABLE DELETE AND LONG ALIAS".
  
  Using too long table aliases in stored routines might
  have caused server crashes.
  
  Code in sp_head::merge_table_list() which is responsible
  for collecting information about tables used in stored
  routine was not aware of the fact that table alias might
  have arbitrary length. I.e. it assumed that table alias
  can't be longer than NAME_LEN bytes and allocated buffer
  for a key identifying table accordingly.
  
  This patch fixes the issue by ensuring that we use
  dynamically allocated buffer for table key when table
  alias is too long. By default stack based buffer is used
  in which NAME_LEN bytes are reserved for table alias.
------------------------------------------------------------
revno: 4039
committer: Harin Vadodaria <harin.vadodaria@oracle.com>
branch nick: 5529_bug15912213
timestamp: Fri 2012-12-07 19:10:20 +0530
message:
  Bug#15912213: BUFFER OVERFLOW IN ACL_GET()
  
  Description: Fixing test failure.
------------------------------------------------------------
revno: 4038
committer: Harin Vadodaria <harin.vadodaria@oracle.com>
branch nick: 5529_bug15912213
timestamp: Thu 2012-12-06 17:02:09 +0530
message:
  Bug#15912213: BUFFER OVERFLOW IN ACL_GET()
        
  Description: A very large database name causes buffer
               overflow in functions acl_get() and
               check_grant_db() in sql_acl.cc. It happens
               due to an unguarded string copy operation.
               This puts required sanity checks before
               copying db string to destination buffer.
------------------------------------------------------------
revno: 4037
committer: Gleb Shchepa <gleb.shchepa@oracle.com>
branch nick: mysql-5.5.29-release
timestamp: Wed 2012-12-05 20:47:21 +0400
message:
  Bug #15948123: SERVER WORKS INCORRECT WITH LONG TABLE ALIASES
  
  After-push cleanup: removal of unneeded assertions.
------------------------------------------------------------
revno: 4036
committer: Gleb Shchepa <gleb.shchepa@oracle.com>
branch nick: mysql-5.5.29-release
timestamp: Wed 2012-12-05 17:24:45 +0400
message:
  Bug #15948123: SERVER WORKS INCORRECT WITH LONG TABLE ALIASES
  
  Code in MDL subsystem assumes that identifiers of objects can't
  be longer than NAME_LEN characters. This assumption was broken
  when one tried to construct MDL_key based on table alias, which
  can have arbitrary length. Since MDL_key's (and MDL locks) are
  not really used for table aliases this patch changes code to
  not initialize MDL_key object for table list element representing
  aliases.
------------------------------------------------------------
revno: 4035
committer: Joerg Bruehe <joerg.bruehe@oracle.com>
branch nick: clone-5.5
timestamp: Thu 2012-11-08 19:09:52 +0100
message:
  Building RPMs for ULN:
  
  The patch "mysql-chain-certs.patch" needs to be adapted
  to code changes in "vio/viosslfactories.c" which were
  done in MySQL 5.5.
------------------------------------------------------------
revno: 4034
committer: Joerg Bruehe <joerg.bruehe@oracle.com>
branch nick: clone-5.5
timestamp: Thu 2012-11-08 19:06:44 +0100
message:
  Placement change:
  
  Top level "SPECIFIC-ULN/" was inappropriate,
  put the files to create RPMs for ULN into
  "packaging/rpm-uln/".
------------------------------------------------------------
revno: 4033 [merge]
tags: clone-5.5.29-build
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: 5.5-merge
timestamp: Thu 2012-11-01 17:33:55 +0100
message:
  merge 5.1 => 5.5
    ------------------------------------------------------------
    revno: 2661.830.14
    tags: clone-5.1.67-build
    committer: Tor Didriksen <tor.didriksen@oracle.com>
    branch nick: 5.1
    timestamp: Thu 2012-11-01 17:23:06 +0100
    message:
      Bug#14840488 VALGRIND ERRORS IN MYSQL_CLIENT_TEST
      
      Add missing DBUG_RETURNs, otherwise the debug-stack gets messed up,
      and _db_enter_ and _db_exit_ will access data outside the current stack frame.
------------------------------------------------------------
revno: 4032
committer: Venkata Sidagam <venkata.sidagam@oracle.com>
branch nick: 5.5
timestamp: Wed 2012-10-31 18:32:53 +0530
message:
  BUG#13556441: CHECK AND REPAIR TABLE SHOULD BE MORE ROBUST [4]
  
  Problem description:
  mysql server crashes when we run repair table on currupted table.
  
  Analysis:
  The problem with this bug seem to be key_reflength out of bounds
  (186 according to debugger). We read this value from meta-data
  segment of .MYI file while doing mi_open().
  
  If you look into _mi_kpointer() you can see that the upper limit
  for key_reflength is 7.
  
  Solution:
  In mi_open() there is a line like:
    if (share->base.keystart > 65535 || share->base.rec_reflength > 8)
  we should verify key_reflength here as well.
------------------------------------------------------------
revno: 4031 [merge]
committer: Ashish Agarwal<ashish.y.agarwal@oracle.com>
branch nick: mysql-5.5
timestamp: Wed 2012-10-31 12:45:57 +0530
message:
  BUG#14485479: Merge into mysql-5.5 branch
    ------------------------------------------------------------
    revno: 4030.1.1
    committer: Ashish Agarwal<ashish.y.agarwal@oracle.com>
    branch nick: bug14485479
    timestamp: Wed 2012-10-31 12:40:48 +0530
    message:
      BUG#14485479: INSTALL AUDIT PLUGIN HANGS IF WE TRY TO
                    DISABLE AND ENABLED DURING DDL OPERATION
      
      PROBLEM: Same thread trying to acquire the same mutex
               second time leads to hang/server crash.
               While [un]installing audit_log plugin
               a thread acquires the LOCK_plugin mutex
               and after successful initialization tries
               to write in mysql.plugin table. It holds
               this mutex for a long time. If some how
               plugin table is corrupted then a write to
               plugin table will throw an error, thread try
               to log this error in the audit_log plugin,
               doing so it tries to acquire the mutex
               again and results is server hang/crash.
      
      SOLUTION: Releasing the LOCK_plugin mutex before
                writing in mysql.plugin table. We dont
                need to hold this mutex as thread already
                acquired a TL_WRITE lock on mysql.plugin
                table.
------------------------------------------------------------
revno: 4030 [merge]
committer: Anirudh Mangipudi <anirudh.mangipudi@oracle.com>
branch nick: 5.5
timestamp: Tue 2012-10-30 19:40:42 +0530
message:
  BUG#11754894: MYISAMCHK ERROR HAS INCORRECT REFERENCE
                TO MYISAM_SORT_BUFFER_SIZE
  Null Merge from 5.1 to 5.5
    ------------------------------------------------------------
    revno: 2661.830.13
    committer: Anirudh Mangipudi <anirudh.mangipudi@oracle.com>
    branch nick: 5.1
    timestamp: Tue 2012-10-30 18:49:15 +0530
    message:
      BUG#11754894: MYISAMCHK ERROR HAS INCORRECT REFERENCE
                    TO 'MYISAM_SORT_BUFFER_SIZE'
      Problem: 'myisam_sort_buffer_size' is a parameter used by
      mysqld program only whereas 'sort_buffer_size' is used by
      mysqld and myisamchk programs. But the error message printed
      when myisamchk program is run with insufficient buffer size
      is myisam_sort_buffer_size is too small which may mislead to the
      server parameter myisam_sort_buffer_size.
      SOLUTION: A parameter 'myisam_sort_buffer_size' is added as an
      alias for 'sort_buffer_size' and the 'sort_buffer_size' parameter
      is marked as deprecated. So myisamchk also has both the parameters
      with the same role.
------------------------------------------------------------
revno: 4029 [merge]
committer: Anirudh Mangipudi <anirudh.mangipudi@oracle.com>
branch nick: 5.5
timestamp: Tue 2012-10-30 19:00:12 +0530
message:
  BUG#11754894: MYISAMCHK ERROR HAS INCORRECT REFERENCE
                TO 'MYISAM_SORT_BUFFER_SIZE'
  Merging from 5.1 to 5.5
    ------------------------------------------------------------
    revno: 2661.833.1
    committer: Anirudh Mangipudi <anirudh.mangipudi@oracle.com>
    branch nick: 5.1
    timestamp: Tue 2012-10-30 16:53:55 +0530
    message:
      BUG#11754894: MYISAMCHK ERROR HAS INCORRECT REFERENCE
                    TO 'MYISAM_SORT_BUFFER_SIZE'
      Problem: 'myisam_sort_buffer_size' is a parameter used by
      mysqld program only whereas 'sort_buffer_size' is used by
      mysqld and myisamchk programs. But the error message printed
      when myisamchk program is run with insufficient buffer size
      is myisam_sort_buffer_size is too small which may mislead to the
      server parameter myisam_sort_buffer_size.
      SOLUTION: A parameter 'myisam_sort_buffer_size' is added as an
      alias for 'sort_buffer_size' and the 'sort_buffer_size' parameter
      is marked as deprecated. So myisamchk also has both the parameters
      with the same role.
------------------------------------------------------------
revno: 4028 [merge]
committer: Shivji Kumar Jha <shivji.jha@oracle.com>
branch nick: mysql-5.5_b14659685
timestamp: Tue 2012-10-30 10:41:25 +0530
message:
  BUG#14659685: main.mysqlbinlog_row_myisam.test main.mysqlbinlog_row_innodb.test are skipped
  
  merge from 5.1 into 5.5
    ------------------------------------------------------------
    revno: 2661.830.12
    committer: Shivji Kumar Jha <shivji.jha@oracle.com>
    branch nick: mysql-5.1_b14659685
    timestamp: Tue 2012-10-30 10:40:07 +0530
    message:
      BUG#14659685 - main.mysqlbinlog_row_myisam and
                     main.mysqlbinlog_row_innodb are skipped by mtr
      
      === Problem ===
      
      The following tests are wrongly placed in main suite and as a
      result these are not run with proper binlog format combinations.
      Some are always skipped by mtr.
      1) mysqlbinlog_row_myisam
      2) mysqlbinlog_row_innodb
      3) mysqlbinlog_row.test
      4) mysqlbinlog_row_trans.test
      5) mysqlbinlog-cp932
      6) mysqlbinlog2
      7) mysqlbinlog_base64
      
      === Background ===
      
      mtr runs the tests placed in main suite with binlog format=stmt.
      Those that need to be tested against binlog format=row or mixed
      or more than one binlog format and require only one mysql server
      are placed in binlog suite. mtr runs tests in binlog suite with
      all three binlog formats(stmt,row and mixed).
      
      === Fix ===
      
      
      1) Moved the test listed in problem section above to binlog suite.
      2) Added prefix "binlog_" to the name of each test case moved.
         Renamed the coresponding result files and option files accordingly.
------------------------------------------------------------
revno: 4027
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: 5.5
timestamp: Mon 2012-10-29 16:20:57 +0100
message:
  Bug#14737559 BZR JOIN PLUGIN TREES INTO INTERNAL/PLUGIN
  
  Some more path fixes.
------------------------------------------------------------
revno: 4026 [merge]
committer: Marc Alff <marc.alff@oracle.com>
branch nick: mysql-5.5-push
timestamp: Mon 2012-10-29 15:07:49 +0100
message:
  Merge mysql-5.1 --> mysql-5.5
    ------------------------------------------------------------
    revno: 2661.830.11
    committer: Marc Alff <marc.alff@oracle.com>
    branch nick: mysql-5.1-cleanup
    timestamp: Mon 2012-10-29 14:52:17 +0100
    message:
      Test cleanup.
      
      Make sure the test output is stable, to avoid spurious failures.
------------------------------------------------------------
revno: 4025
committer: Annamalai Gurusami <annamalai.gurusami@oracle.com>
branch nick: mysql-5.5
timestamp: Mon 2012-10-29 15:50:04 +0530
message:
  Fixing the pb2 failure.  The output of show session
  status like 'Handler_read_%' does not give consistent
  results.  This command is not essential to verify
  the fix.  So removing this command from test script.
------------------------------------------------------------
revno: 4024 [merge]
committer: Alexander Nozdrin <alexander.nozdrin@oracle.com>
branch nick: 5.5
timestamp: Mon 2012-10-29 13:06:43 +0400
message:
  Merge from 5.1.
    ------------------------------------------------------------
    revno: 2661.830.10
    committer: Alexander Nozdrin <alexander.nozdrin@oracle.com>
    branch nick: 5.1
    timestamp: Mon 2012-10-29 12:47:01 +0400
    message:
      Fix sp_notembedded.test.
------------------------------------------------------------
revno: 4023
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: 5.5-plugins-review
timestamp: Wed 2012-10-24 17:06:43 +0200
message:
  Bug#14737559 BZR JOIN PLUGIN TREES INTO INTERNAL/PLUGIN
  
  Part three:
  Fix some search paths.
------------------------------------------------------------
revno: 4022 [merge]
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: 5.5-plugins-review
timestamp: Tue 2012-10-23 17:25:22 +0200
message:
  local merge
    ------------------------------------------------------------
    revno: 4020.1.13
    committer: Tor Didriksen <tor.didriksen@oracle.com>
    branch nick: 5.5
    timestamp: Tue 2012-10-23 13:41:34 +0200
    message:
      Use MESSAGE(STATUS ...) as we don't want any popup from the build system.
    ------------------------------------------------------------
    revno: 4020.1.12 [merge]
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.5
    timestamp: Mon 2012-10-22 22:13:26 +0300
    message:
      Merge mysql-5.1 to mysql-5.5.
        ------------------------------------------------------------
        revno: 2661.830.9
        committer: Marko M?kel? <marko.makela@oracle.com>
        branch nick: mysql-5.1
        timestamp: Mon 2012-10-22 22:10:33 +0300
        message:
          Backport from 5.6: Bug#14769820 ASSERT FLEN == LEN
          IN ALTER TABLE ... ADD UNIQUE KEY
          
          A bogus debug assertion failure occurred when reporting a duplicate
          key on a column prefix of a CHAR column.
          
          This is a regression from Bug#14729221 IN-PLACE ALTER TABLE REPORTS ''
          INSTEAD OF REAL DUPLICATE VALUE FOR PREFIX KEYS. The assertion is only
          present when UNIV_DEBUG is defined (which it is in debug builds
          starting from MySQL 5.5). It is a case of overasserting.
          
          Fix approved by Inaam Rana on IM.
    ------------------------------------------------------------
    revno: 4020.1.11 [merge]
    committer: Nuno Carvalho <nuno.carvalho@oracle.com>
    branch nick: mysql-5.5
    timestamp: Sun 2012-10-21 20:34:41 +0100
    message:
      BUG#14629727: USER_VAR_EVENT IS MISSING RANGE CHECKS
      
      Merge from mysql-5.1 into mysql-5.5.
        ------------------------------------------------------------
        revno: 2661.830.8
        committer: Nuno Carvalho <nuno.carvalho@oracle.com>
        branch nick: mysql-5.1
        timestamp: Sun 2012-10-21 20:28:19 +0100
        message:
          BUG#14629727: USER_VAR_EVENT IS MISSING RANGE CHECKS
          
          Moved explicit instantiation of available_buffer and valid_buffer_range
          template functions to sql/log_event.cc.
    ------------------------------------------------------------
    revno: 4020.1.10 [merge]
    committer: Nuno Carvalho <nuno.carvalho@oracle.com>
    branch nick: mysql-5.5
    timestamp: Sun 2012-10-21 15:40:04 +0100
    message:
      BUG#14629727: USER_VAR_EVENT IS MISSING RANGE CHECKS
      
      Null merge from mysql-5.1 into mysql-5.5.
        ------------------------------------------------------------
        revno: 2661.830.7 [merge]
        committer: Nuno Carvalho <nuno.carvalho@oracle.com>
        branch nick: mysql-5.1
        timestamp: Sun 2012-10-21 15:34:38 +0100
        message:
          BUG#14629727: USER_VAR_EVENT IS MISSING RANGE CHECKS
          
          Merge bundle on mysql-5.1.
    ------------------------------------------------------------
    revno: 4020.1.9 [merge]
    committer: Nuno Carvalho <nuno.carvalho@oracle.com>
    branch nick: mysql-5.5
    timestamp: Sun 2012-10-21 15:35:39 +0100
    message:
      BUG#14629727: USER_VAR_EVENT IS MISSING RANGE CHECKS
      
      Merge bundle on mysql-5.5.
        ------------------------------------------------------------
        revno: 4012.1.1 [merge]
        committer: Nuno Carvalho <nuno.carvalho@oracle.com>
        branch nick: mysql-5.5
        timestamp: Fri 2012-10-12 08:36:09 +0100
        message:
          BUG#14629727: USER_VAR_EVENT IS MISSING RANGE CHECKS
          
          Merge from mysql-5.1 into mysql-5.5.
            ------------------------------------------------------------
            revno: 2661.832.1
            committer: Nuno Carvalho <nuno.carvalho@oracle.com>
            branch nick: mysql-5.1
            timestamp: Fri 2012-10-12 08:32:10 +0100
            message:
              BUG#14629727: USER_VAR_EVENT IS MISSING RANGE CHECKS
              
              This bug had two problems:
               P1) Reads out of bounds;
               P2) Writes out of bounds.
              
              PROBLEM P1
              ----------
              User_var_log_event unmarshalling from binlog was not performing range
              checks when using name_len and val_len variables to walk on event
              buffer.
              
              Added range checks to User_var_log_event unmarshalling to prevent
              unmarshalling errors.
              
              PROBLEM P2
              ----------
              User_var_log_event value was allocated on thread stack, what caused
              stack frame errors when User_var_log_event value was bigger than thread
              stack size.
              
              Currently value is allocated on heap memory.
              
              @ internal/mysql-test/extra/rpl_tests/rpl_corrupted_binlog_event.inc
                 Dump a binary log content trough mysqlbinlog and replay it on slave.
              @ internal/mysql-test/std_data/rpl_corrupted_binlog_event/binlog.001118
                 Binlog with corrupted User_var_log_event.
              @ internal/mysql-test/std_data/rpl_corrupted_binlog_event/binlog.010160
                 Binlog with corrupted User_var_log_event.
              @ internal/mysql-test/std_data/rpl_corrupted_binlog_event/binlog.010644
                 Binlog with corrupted User_var_log_event.
              @ internal/mysql-test/std_data/rpl_corrupted_binlog_event/binlog.016516
                 Binlog with corrupted User_var_log_event.
              @ internal/mysql-test/std_data/rpl_corrupted_binlog_event/slave-relay-bin_linux.index
                 Relay log index to replay corrupted binlog on slave on Linux.
              @ internal/mysql-test/std_data/rpl_corrupted_binlog_event/slave-relay-bin_win.index
                 Relay log index to replay corrupted binlog on slave on Windows.
              @ internal/mysql-test/suite/i_binlog/r/binlog_big_user_variable.result
                 binlog_big_user_variable test case results.
              @ internal/mysql-test/suite/i_binlog/t/binlog_big_user_variable-master.opt
                 binlog_big_user_variable master server options.
              @ internal/mysql-test/suite/i_binlog/t/binlog_big_user_variable.test
                 Test case to verify that a big User_var_log_event can be print
                 safely.
              @ internal/mysql-test/suite/i_rpl/r/rpl_corrupted_binlog_event.result
                 rpl_corrupted_binlog_event test case results.
              @ internal/mysql-test/suite/i_rpl/t/rpl_corrupted_binlog_event.test
                 Execute rpl_corrupted_binlog_event.inc for all binary logs.
              @ sql/log_event.cc
                 Added range checks to User_var_log_event unmarshalling.
                 Changed allocation of memory on User_var_log_event::print() to
                 heap-based.
              @ sql/log_event.h
                 Added event_len argument to User_var_log_event constructor and
                 override Log_event::is_valid() method.
              @ sql/mysql_priv.h
                 Added template functions available_buffer() and
                 valid_buffer_range().
    ------------------------------------------------------------
    revno: 4020.1.8
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: merge-5.5
    timestamp: Fri 2012-10-19 20:31:22 +0200
    message:
      Fix formatting in 'INFO_BIN' on Windows - backport.
    ------------------------------------------------------------
    revno: 4020.1.7 [merge]
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: merge-5.5
    timestamp: Fri 2012-10-19 20:11:44 +0200
    message:
      Upmerge a backport - empty
        ------------------------------------------------------------
        revno: 2661.830.6 [merge]
        committer: Joerg Bruehe <joerg.bruehe@oracle.com>
        branch nick: merge-5.1
        timestamp: Fri 2012-10-19 20:09:29 +0200
        message:
          Automerge into main 5.1
            ------------------------------------------------------------
            revno: 2661.831.1
            committer: Joerg Bruehe <joerg.bruehe@oracle.com>
            branch nick: bug12794345-5.1
            timestamp: Tue 2012-09-11 20:56:22 +0200
            message:
              Backport this change from MySQL 5.5 to 5.1:
              
                Bug #14181049: MYSQL_INSTALL_DB.PL CREATES EMPTY SYSTEM TABLES FOR MYSQL
              
                The script is different from what's used on unixes.
                It was not playing the table insertion script (mysql_system_tables_data.sql),
                although it was checking for the presence of this script.
                Fixed by re-enabling the lookup for this file and replaying it at bootstrap
                time. Note that on the Unixes "SELECT @@hostname" does return a fully qualified
                name, whereas on Windows it returns only a hostname.
                So by default we're filtering records in the mysql.user table until we ensure
                this is fixed.
              
              The change was coded in 5.5 by Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    ------------------------------------------------------------
    revno: 4020.1.6
    committer: Annamalai Gurusami <annamalai.gurusami@oracle.com>
    branch nick: mysql-5.5
    timestamp: Fri 2012-10-19 16:43:48 +0530
    message:
      Bug #14226171  EXCESSIVE ROW LOCKING WITH UPDATE IN 5.5.25
      
      When a DML statement is issued, and if the index merge
      access method is chosen, then many rows from the
      storage engine will be locked because of the way the
      algorithm works.  Many rows will be locked, but they
      will not be part of the final result set.
      
      To reduce the excessive locking, the locks of unmatched
      rows are released by this patch.  This patch will
      affect only transactions with isolation level
      equal to or less stricter than READ COMMITTED. This is
      because of the behaviour of ha_innobase::unlock_row().
      
      rb://1296 approved by jorgen and olav.
    ------------------------------------------------------------
    revno: 4020.1.5 [merge]
    committer: Neeraj Bisht <neeraj.x.bisht@oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-10-18 23:54:18 +0530
    message:
      Bug#13726751 - 8 BYTE MEMORY LEAK IN DO_SAVE_BLOB
      
      Problem:-
      When we execute a query which has subquery with GROUP BY, ORDER BY and have a
      BLOB column,results a memory leak.
      
      Analysis:-
      In case of subquery, which have GROUP BY on BLOB and a ORDER BY on other field
      and BLOB is not a key. We allocate a tmp buffer to copy_field to take care of
      BLOB value.This copy_field value can have copies of its in two join(objects),
      so while freeing this copy_field we have to take care that it is
      not deleted twice.
      The double deletion of tmp_table_param.copy_field is handled by two patches.
      
      One by Kostja :
      revid:sp1r-konstantin@mysql.com-20050627101056-55153
      Fix the broken test suite in -debug build.
      
      and other by Oleksandr
      revid:sp1r-bell@sanja.is.com.ua-20060118114857-19905
      Excluded posibility of tmp_table_param.copy_field double deletion (BUG#14851).
      
      both of this patches are commited in different branch and while
      merging they both get placed,but there is no need for Kostja patch as Oleksandr
      patch handle this.
        ------------------------------------------------------------
        revno: 2661.830.5
        committer: Neeraj Bisht <neeraj.x.bisht@oracle.com>
        branch nick: mysql-5.1
        timestamp: Thu 2012-10-18 23:45:15 +0530
        message:
          Bug#13726751 - 8 BYTE MEMORY LEAK IN DO_SAVE_BLOB
          
          Problem:-
          When we execute a query which has subquery with GROUP BY, ORDER BY and have a
          BLOB column,results a memory leak.
          
          Analysis:-
          In case of subquery, which have GROUP BY on BLOB and a ORDER BY on other field
          and BLOB is not a key. We allocate a tmp buffer to copy_field to take care of
          BLOB value.This copy_field value can have copies of its in two join(objects),
          so while freeing this copy_field we have to take care that it is
          not deleted twice.
          The double deletion of tmp_table_param.copy_field is handled by two patches.
          
          One by Kostja :
          revid:sp1r-konstantin@mysql.com-20050627101056-55153
          Fix the broken test suite in -debug build.
          
          and other by Oleksandr
          revid:sp1r-bell@sanja.is.com.ua-20060118114857-19905
          Excluded posibility of tmp_table_param.copy_field double deletion (BUG#14851).
          
          both of this patches are commited in different branch and while
          merging they both get placed,but there is no need for Kostja patch as Oleksandr
          patch handle this.
    ------------------------------------------------------------
    revno: 4020.1.4 [merge]
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-10-18 17:14:57 +0300
    message:
      Merge mysql-5.1 to mysql-5.5.
        ------------------------------------------------------------
        revno: 2661.830.4
        committer: Marko M?kel? <marko.makela@oracle.com>
        branch nick: mysql-5.1
        timestamp: Thu 2012-10-18 17:03:06 +0300
        message:
          Bug#14758405: ALTER TABLE: ADDING SERIAL NULL DATATYPE: ASSERTION:
          LEN <= SIZEOF(ULONGLONG)
          
          This bug was caught in the WL#6255 ALTER TABLE...ADD COLUMN in MySQL
          5.6, but there is a bug in all InnoDB versions that support
          auto-increment columns.
          
          row_search_autoinc_read_column(): When reading the maximum value of
          the auto-increment column, and the column only contains NULL values,
          return 0. This corresponds to the case when the table is empty in
          row_search_max_autoinc().
          
          rb:1415 approved by Sunny Bains
    ------------------------------------------------------------
    revno: 4020.1.3 [merge]
    committer: Krunal Bauskar krunal.bauskar@oracle.com
    branch nick: mysql-5.5
    timestamp: Wed 2012-10-17 14:57:57 +0530
    message:
      merge from mysql-5.1 -> mysql-5.5
        ------------------------------------------------------------
        revno: 2661.830.3
        committer: Krunal Bauskar krunal.bauskar@oracle.com
        branch nick: mysql-5.1
        timestamp: Wed 2012-10-17 14:30:32 +0530
        message:
          bug#14765606: ensure select is active before killing it else kill signal is ignored
    ------------------------------------------------------------
    revno: 4020.1.2
    committer: Krunal Bauskar krunal.bauskar@oracle.com
    branch nick: mysql-5.5
    timestamp: Wed 2012-10-17 14:48:19 +0530
    message:
      removing .... will re-add using merge. for some reason initial mysql-5.1 version is not connected to mysql-5.5
    ------------------------------------------------------------
    revno: 4020.1.1 [merge]
    committer: Tatjana Azundris Nuernberg <tatjana.nuernberg@oracle.com>
    branch nick: 55-11764559
    timestamp: Wed 2012-10-17 09:16:07 +0100
    message:
      NULL merge
        ------------------------------------------------------------
        revno: 2661.830.2 [merge]
        committer: Tatjana Azundris Nuernberg <tatjana.nuernberg@oracle.com>
        branch nick: 51-11764559
        timestamp: Wed 2012-10-17 09:14:44 +0100
        message:
          Bug#11764559: UMASK IS IGNORED BY ERROR LOG
          
          mysqld_safe script did not heed MySQL specific environment variable
          $UMASK, leading to divergent behavior between mysqld and mysqld_safe.
          
          Patch adds an approximation of mysqld's behavior to mysqld_safe,
          within the bounds dictated by attempt to have mysqld_safe run on
          even the most basic of shells (proper '70s sh, not just bash
          with a fancy symlink).
          
          Patch also adds approximation of said behavior to mysqld_multi
          (in perl).
          
          (backport)
------------------------------------------------------------
revno: 4021 [merge]
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: 5.5-plugins-review
timestamp: Wed 2012-10-17 10:22:27 +0200
message:
  Bug#14737559 BZR JOIN PLUGIN TREES INTO INTERNAL/PLUGIN
  
  Part two:
  Join the bzr trees.
    ------------------------------------------------------------
    revno: 0.15.52
    committer: horst.hunger@oracle.com
    branch nick: audit_log_2
    timestamp: Mon 2012-08-27 16:46:45 +0200
    message:
      Inserted sleeps for waiting for audit_log writer to be ready before listing audit_log files.
    ------------------------------------------------------------
    revno: 0.15.51
    committer: Ramil Kalimullin <ramil.kalimullin@oracle.com>
    branch nick: audit_log
    timestamp: Wed 2012-08-22 16:17:37 +0400
    message:
      BUG#14396377: LOG IS WRITTEN EVEN THOUGH --AUDIT_LOG_POLICY=0 DURING SERVER STARTUP OR INSTALL
      
      Don't log "Audit"/"NoAudit" if policy is not "ALL".
      Note: the change doesn't affect "<?xml...>", "<AUDIT>" and </AUDIT> writing.
    ------------------------------------------------------------
    revno: 0.15.50
    committer: horst.hunger@oracle.com
    branch nick: audit_log_2
    timestamp: Wed 2012-08-22 11:11:48 +0200
    message:
      Tests for file rotation made experimental as FILE_LIST produces differences in result.
    ------------------------------------------------------------
    revno: 0.15.49
    committer: Ramil Kalimullin <ramil.kalimullin@oracle.com>
    branch nick: audit_log
    timestamp: Thu 2012-08-09 15:37:40 +0400
    message:
      Set alog->ctrl to NULL (later used as a proof of initialization)
      at the end of the alog_close().
    ------------------------------------------------------------
    revno: 0.15.48
    committer: Ramil Kalimullin <ramil.kalimullin@oracle.com>
    branch nick: audit_log
    timestamp: Thu 2012-08-09 00:53:10 +0400
    message:
      Bug#14388598 - MYSQLD IS HANGING IF WE PASS --AUDIT_LOG_FILE= BLANK
      
      Set alog->ctrl to NULL (later used as a proof of initialization)
      in case of any alog initialization error.
    ------------------------------------------------------------
    revno: 0.15.47
    committer: Ramil Kalimullin <ramil.kalimullin@oracle.com>
    branch nick: audit_log
    timestamp: Wed 2012-08-08 20:13:38 +0400
    message:
      Bug#14467307 - MYSQL_INSTALL_DB AND MYSQLD IS CRASHING IF WE PASS AUDIT_LOG_BUFFER_SIZE=-1
      
      Check if plugin was initialised in the audit_log_deinit() before any action.
    ------------------------------------------------------------
    revno: 0.15.46
    committer: horst.hunger@oracle.com
    branch nick: audit_log_2
    timestamp: Wed 2012-07-25 09:09:13 +0200
    message:
      Shall solve that less than 3 log files are shown.
    ------------------------------------------------------------
    revno: 0.15.45
    committer: horst.hunger@oracle.com
    branch nick: audit_log_2
    timestamp: Tue 2012-07-24 08:55:55 +0200
    message:
      To compare the file handling on each platform.
    ------------------------------------------------------------
    revno: 0.15.44
    committer: horst.hunger@oracle.com
    branch nick: audit_log_2
    timestamp: Mon 2012-07-23 09:38:40 +0200
    message:
      Only test failing in trunk due to diffes in results are made experimental.
    ------------------------------------------------------------
    revno: 0.15.43
    committer: horst.hunger@oracle.com
    branch nick: audit_log_2
    timestamp: Mon 2012-07-23 09:06:50 +0200
    message:
      Hope that diff in result on one platform in 5.5-commercial is now solved.
    ------------------------------------------------------------
    revno: 0.15.42
    committer: horst.hunger@oracle.com
    branch nick: audit_log_2
    timestamp: Fri 2012-07-20 11:28:25 +0200
    message:
      Checkes are more waek to get deterministic results.
    ------------------------------------------------------------
    revno: 0.15.41
    committer: horst.hunger@oracle.com
    branch nick: audit_log_2
    timestamp: Thu 2012-07-19 11:34:03 +0200
    message:
      Due to differences btween 5.5 and trunk. Results are actually for 5.5.
    ------------------------------------------------------------
    revno: 0.15.40
    committer: horst.hunger@oracle.com
    branch nick: audit_log_2
    timestamp: Thu 2012-07-19 08:24:07 +0200
    message:
      Forgotten inc file.
    ------------------------------------------------------------
    revno: 0.15.39
    committer: horst.hunger@oracle.com
    branch nick: audit_log_2
    timestamp: Wed 2012-07-18 13:55:03 +0200
    message:
      Some adjustments to have deterministic test results.
    ------------------------------------------------------------
    revno: 0.15.38
    committer: horst.hunger@oracle.com
    branch nick: audit_log_2
    timestamp: Tue 2012-07-17 12:58:51 +0200
    message:
      Some changes to get deterministic results.
    ------------------------------------------------------------
    revno: 0.15.37
    committer: Ramil Kalimullin <ramil.kalimullin@oracle.com>
    branch nick: audit_log
    timestamp: Thu 2012-06-28 11:32:39 +0400
    message:
      Check alog->ctrl at the very beginning of alog_close()
      as it might be NULL (if plugin initialization failed).
    ------------------------------------------------------------
    revno: 0.15.36
    committer: horst.hunger@oracle.com
    branch nick: audit_log
    timestamp: Fri 2012-06-22 12:31:12 +0200
    message:
      More test for 6229.
    ------------------------------------------------------------
    revno: 0.15.35
    committer: horst.hunger@oracle.com
    branch nick: audit_log
    timestamp: Thu 2012-06-21 15:19:58 +0200
    message:
      Tests for 6229.
    ------------------------------------------------------------
    revno: 0.15.34
    committer: horst.hunger@oracle.com
    branch nick: audit_log
    timestamp: Wed 2012-06-20 10:46:52 +0200
    message:
      To run audit_log daily.
    ------------------------------------------------------------
    revno: 0.15.33
    committer: Ramil Kalimullin <ramil.kalimullin@oracle.com>
    branch nick: audit_log
    timestamp: Wed 2012-06-20 09:25:05 +0400
    message:
      Fix for BUG#14215880 - CREASH WHEN REMOVING AN AUDIT LOG ROTATION FILE.
      
      MYF(MY_WME) usage in the plugin functions may cause an infinite recursion.
      Removed.
    ------------------------------------------------------------
    revno: 0.15.32
    committer: Ramil Kalimullin <ramil.kalimullin@oracle.com>
    branch nick: audit_log
    timestamp: Tue 2012-06-19 11:23:47 +0400
    message:
      Fix for BUG#14180819 - XML STRUCTURE WRONG IN AUDIT LOG AFTER SET FLUSH.
      
      Don't flush audit log if the log file exists.
    ------------------------------------------------------------
    revno: 0.15.31
    committer: horst.hunger@oracle.com
    branch nick: audit_log
    timestamp: Mon 2012-06-11 16:56:44 +0200
    message:
      wl6229: test for flush.
    ------------------------------------------------------------
    revno: 0.15.30
    committer: horst.hunger@oracle.com
    branch nick: audit_log
    timestamp: Fri 2012-06-08 09:41:31 +0200
    message:
      wl#6229: Policy tests.
    ------------------------------------------------------------
    revno: 0.15.29
    committer: horst.hunger@oracle.com
    branch nick: audit_log
    timestamp: Mon 2012-06-04 14:56:04 +0200
    message:
      wl#6229: Changed directory structure for tests to run in PB2 with mtr.
    ------------------------------------------------------------
    revno: 0.15.28
    committer: Ramil Kalimullin <ramil.kalimullin@oracle.com>
    branch nick: audit_log
    timestamp: Sat 2012-04-28 14:05:03 +0400
    message:
      WL#6229
    ------------------------------------------------------------
    revno: 0.15.27
    committer: Tor Didriksen <tor.didriksen@oracle.com>
    branch nick: audit_log
    timestamp: Thu 2012-02-16 13:20:36 +0100
    message:
      Add st_mysql_plugin::flags to declaration of plugin
    ------------------------------------------------------------
    revno: 0.15.26
    committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
    branch nick: audit_log
    timestamp: Tue 2011-06-28 14:57:02 +0400
    message:
      Removed unnecessary bzero().
    ------------------------------------------------------------
    revno: 0.15.25
    committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
    branch nick: audit_log
    timestamp: Thu 2011-06-09 12:28:29 +0400
    message:
      Adjusted a plugin according to recent API changes.
    ------------------------------------------------------------
    revno: 0.15.24
    committer: Horst.Hunger <horst.hunger@sun.com>
    branch nick: audit_log
    timestamp: Mon 2011-04-18 11:11:02 +0200
    message:
      MTR tests for QA sign off of WL#5396 including modified plugin.defs.
    ------------------------------------------------------------
    revno: 0.15.23
    committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
    branch nick: audit_log
    timestamp: Fri 2011-03-18 09:28:21 +0300
    message:
      WL#5395 - Audit log plugin
      
      Porting to Windows.
    ------------------------------------------------------------
    revno: 0.15.22
    committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
    branch nick: audit_log
    timestamp: Fri 2011-03-11 11:30:42 +0300
    message:
      WL#5395 - Audit log plugin
      
      Work in progress.
    ------------------------------------------------------------
    revno: 0.15.21
    committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
    branch nick: audit_log
    timestamp: Sat 2011-03-05 12:34:24 +0300
    message:
      WL#5395 - Audit log plugin
      
      Fixed compiler warning.
    ------------------------------------------------------------
    revno: 0.15.20
    committer: Ramil Kalimullin <ramil@mysql.com>
    branch nick: audit_log
    timestamp: Fri 2011-03-04 17:30:59 +0300
    message:
      Comment added.
    ------------------------------------------------------------
    revno: 0.15.19
    committer: Ramil Kalimullin <ramil@mysql.com>
    branch nick: audit_log
    timestamp: Wed 2011-03-02 16:15:05 +0300
    message:
      Post-review changes.
    ------------------------------------------------------------
    revno: 0.15.18
    committer: Ramil Kalimullin <ramil@mysql.com>
    branch nick: audit_log
    timestamp: Wed 2011-03-02 15:19:02 +0300
    message:
      Post-review changes.
    ------------------------------------------------------------
    revno: 0.15.17
    committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
    branch nick: audit_log
    timestamp: Wed 2011-03-02 15:06:16 +0300
    message:
      WL#5395 - Audit log plugin
      
      Fixed assertion failure during INSTALL PLUGIN.
    ------------------------------------------------------------
    revno: 0.15.16
    committer: Ramil Kalimullin <ramil@mysql.com>
    branch nick: audit_log
    timestamp: Tue 2011-03-01 11:45:26 +0300
    message:
      Post-review changes.
    ------------------------------------------------------------
    revno: 0.15.15
    committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
    branch nick: audit_log
    timestamp: Tue 2011-02-22 11:41:54 +0300
    message:
      WL#5395 - Audit log plugin
      
      Use STRING_WITH_LEN() for constant strings where
      appropriate.
    ------------------------------------------------------------
    revno: 0.15.14
    committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
    branch nick: audit_log
    timestamp: Tue 2011-02-22 11:17:48 +0300
    message:
      WL#5395 - Audit log plugin
      
      Various code improvements suggested during last review.
    ------------------------------------------------------------
    revno: 0.15.13
    committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
    branch nick: audit_log
    timestamp: Mon 2011-02-14 09:16:15 +0300
    message:
      WL#5395 - Audit log plugin
      
      Added copyright header.
    ------------------------------------------------------------
    revno: 0.15.12 [merge]
    committer: Ramil Kalimullin <ramil@mysql.com>
    branch nick: audit_log
    timestamp: Wed 2011-02-09 14:56:33 +0300
    message:
      Automerge.
        ------------------------------------------------------------
        revno: 0.16.4
        committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
        branch nick: audit_log
        timestamp: Wed 2011-02-09 11:36:47 +0300
        message:
          WL#5395 - Audit log plugin
          
          Use STRING_WITH_LEN() for some constant strings.
          Adjusted buffer size for Quit event.
          Adjusted buffer size for NoAudit event.
          Change strmov() to memcpy() where applicable.
        ------------------------------------------------------------
        revno: 0.16.3
        committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
        branch nick: audit_log
        timestamp: Wed 2011-02-09 10:18:15 +0300
        message:
          WL#5395 - Audit log plugin
          
          Added a function to store string attributes.
          Removed xmlout_com_change_user() as it does 99.9%
          same job as xmlout_com_connect().
        ------------------------------------------------------------
        revno: 0.16.2
        committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
        branch nick: audit_log
        timestamp: Tue 2011-02-08 14:28:28 +0300
        message:
          WL#5395 - Audit log plugin
          
          Move common code hunks to separate functions.
        ------------------------------------------------------------
        revno: 0.16.1
        committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
        branch nick: audit_log
        timestamp: Tue 2011-02-08 10:31:05 +0300
        message:
          WL#5396 - Asynchronous log writer
          
          mao.* were renamed to alog.*
    ------------------------------------------------------------
    revno: 0.15.11
    committer: Ramil Kalimullin <ramil@mysql.com>
    branch nick: audit_log
    timestamp: Wed 2011-02-09 09:14:04 +0300
    message:
      alog_close() changed to take into account ALOG_STRATEGY_SEMYSYNC and
      ALOG_STRATEGY_SYNC strategies.
    ------------------------------------------------------------
    revno: 0.15.10
    committer: Ramil Kalimullin <ramil@mysql.com>
    branch nick: audit_log
    timestamp: Sat 2011-02-05 18:36:20 +0300
    message:
      Backup.
    ------------------------------------------------------------
    revno: 0.15.9
    committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
    branch nick: audit_log
    timestamp: Wed 2010-12-29 13:14:15 +0300
    message:
      WL#5395 - Audit log plugin
      
      Work in progress.
    ------------------------------------------------------------
    revno: 0.15.8
    committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
    branch nick: audit_log
    timestamp: Wed 2010-12-29 10:45:24 +0300
    message:
      WL#5395 - Audit log plugin
      
      Work in progress.
    ------------------------------------------------------------
    revno: 0.15.7
    committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
    branch nick: audit_log
    timestamp: Tue 2010-12-28 15:05:34 +0300
    message:
      WL#5395 - Audit log plugin
    ------------------------------------------------------------
    revno: 0.15.6
    committer: Sergey Vojtovich <sergey.vojtovich@oracle.com>
    branch nick: audit_log
    timestamp: Mon 2010-12-27 15:35:22 +0300
    message:
      WL#5395 - Audit log plugin
      
      Work in progress.
    ------------------------------------------------------------
    revno: 0.15.5
    committer: Sergey Vojtovich <svoj@sun.com>
    branch nick: audit_log
    timestamp: Mon 2010-09-06 14:13:19 +0400
    message:
      WL#5395 - Audit log plugin
      
      Use upper case for XML element names.
    ------------------------------------------------------------
    revno: 0.15.4
    committer: Sergey Vojtovich <svoj@sun.com>
    branch nick: audit_log
    timestamp: Mon 2010-08-09 12:35:28 +0400
    message:
      WL#5395 - Audit log plugin
      
      Added XML logger, removed binary logger.
    ------------------------------------------------------------
    revno: 0.15.3
    committer: Sergey Vojtovich <svoj@sun.com>
    branch nick: audit_log
    timestamp: Wed 2010-06-23 14:58:02 +0400
    message:
      WL#5395 - Audit log plugin
      
      Make plugin variables read-only, but visible.
    ------------------------------------------------------------
    revno: 0.15.2
    committer: Ramil Kalimullin <ramil@mysql.com>
    branch nick: audit_log
    timestamp: Wed 2010-06-09 12:36:13 +0400
    message:
      Test commit.
      
      Zero mao structure used.
    ------------------------------------------------------------
    revno: 0.15.1
    committer: Sergey Vojtovich <svoj@sun.com>
    branch nick: audit_log
    timestamp: Tue 2010-06-08 16:38:23 +0400
    message:
      WL#5395 - Audit log plugin
      WL#5396 - Asynchronous log writer
      
      Import audit log plugin prototype.
    ------------------------------------------------------------
    revno: 0.13.27
    committer: Tor Didriksen <tor.didriksen@oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Thu 2012-02-16 13:18:53 +0100
    message:
      Add st_mysql_plugin::flags to declaration of plugin
    ------------------------------------------------------------
    revno: 0.13.26
    committer: Bjorn Munch <bjorn.munch@oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Tue 2012-01-31 12:09:06 +0100
    message:
      Added dummy mtr test to avoid cmake install problem
    ------------------------------------------------------------
    revno: 0.13.25
    committer: horst.hunger@oracle.com
    branch nick: pam-com
    timestamp: Thu 2012-01-26 16:16:29 +0100
    message:
      I removed that mtr test as it produces an error and is replaced by another (better) test.
    ------------------------------------------------------------
    revno: 0.13.24
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Thu 2011-09-08 17:06:02 +0300
    message:
      Bug #12576161: MAKE THE PAM PLUGIN WORK ON SUNOS
      
      Made the plugin to compile under SunOS :
      
      - Added a cmake check for the prototype of the pam functions
      to account for a lacking const qualifiers in different pam versions.
      - Used the correct header files to allow getpwnam and getgrnam
      to compile.
    ------------------------------------------------------------
    revno: 0.13.23
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Thu 2011-09-08 12:23:38 +0300
    message:
      Removed an obsolete file
    ------------------------------------------------------------
    revno: 0.13.22
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Wed 2011-09-28 18:40:54 +0200
    message:
      Building RPMs failed in the 5.5.17 release because test files were installed
      in wrong places - try to fix that, like it is done in another plugin.
    ------------------------------------------------------------
    revno: 0.13.21
    committer: horst.hunger@oracle.com
    branch nick: pam-authentication-plugin
    timestamp: Thu 2011-09-01 15:13:04 +0200
    message:
      Adding collections for PB to tests for WL#5366.
    ------------------------------------------------------------
    revno: 0.13.20
    committer: horst.hunger@oracle.com
    branch nick: pam-authentication-plugin
    timestamp: Tue 2011-08-30 16:06:01 +0200
    message:
      Mtr test for WL#5366.
    ------------------------------------------------------------
    revno: 0.13.19
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Fri 2011-08-26 10:46:23 +0300
    message:
      Fixed a cmake compatibility problem : older cmake's don't like nested parenthesis.
    ------------------------------------------------------------
    revno: 0.13.18
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Wed 2011-08-24 13:16:08 +0300
    message:
      Bug #12910750: PAM_AUTHENTICATION.SO LIBRARY NOT BUILT ON OS X 10.5
      
      Fixed the pam plugin to compile successfully on MacOSX 10.5 by checking for
      the non-standard location of the PAM files in this OS version.
    ------------------------------------------------------------
    revno: 0.13.17
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Thu 2011-08-18 15:52:28 +0300
    message:
      Added debug logging configurable @ runtime. If there's a environment variable named AUTHENTICATION_PAM_LOG (no mattrer the value) the pam plugin will print additional debugging information.
      Updated the commit list.
    ------------------------------------------------------------
    revno: 0.13.16
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Fri 2011-07-22 17:57:44 +0300
    message:
      Added a compile time check if running on Linux and Windows (as it fails compiling on SunOS atm).
    ------------------------------------------------------------
    revno: 0.13.15
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Fri 2011-05-20 12:38:44 +0300
    message:
      Fixed the cmake files so that they won't stop the build on platforms
      that don't have PAM.
    ------------------------------------------------------------
    revno: 0.13.14
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Tue 2011-03-22 11:41:28 +0200
    message:
      re-shuffle the build system to fit the expected commerical tree setup.
    ------------------------------------------------------------
    revno: 0.13.13
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Fri 2011-01-21 18:20:03 +0200
    message:
      Bug #59657: Move the client authentication_pam plugin into the server repository
      
      The pam_plugin part of the diff : remove the client plugin from pam and make it
      use the one supplied by the server.
    ------------------------------------------------------------
    revno: 0.13.12
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Thu 2011-01-20 12:13:54 +0200
    message:
      Fixed the notes on building and pam library.
    ------------------------------------------------------------
    revno: 0.13.11
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Wed 2011-01-19 13:41:57 +0200
    message:
      Implemented the copy.sh script to allow integration with mysql build tree.
    ------------------------------------------------------------
    revno: 0.13.10
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Wed 2011-01-19 13:39:45 +0200
    message:
      Fixed unused arguments warnings
    ------------------------------------------------------------
    revno: 0.13.9
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Wed 2011-01-19 13:39:08 +0200
    message:
      Fixed a missing header file reference
    ------------------------------------------------------------
    revno: 0.13.8
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Thu 2011-01-13 15:02:28 +0200
    message:
      Fixed ISO C90 warnings.
    ------------------------------------------------------------
    revno: 0.13.7
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Thu 2011-01-13 14:42:19 +0200
    message:
      Added more detailed error messages on missing library or header.
      Updated the build instruction.
    ------------------------------------------------------------
    revno: 0.13.6 [merge]
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Fri 2011-01-07 15:06:20 +0200
    message:
      Bug #59335 : PAM plugin doesn't build with server source trees built
        out of source
      
      * Added a -DWITH_MYSQL_BUILDDIR option to cmake to support out-of-source
        compilation.
      * Fixed a portability problem of using malloc.h by reverting to stdlib.h
        ------------------------------------------------------------
        revno: 0.14.2
        committer: jan@mysql.com
        branch nick: pam-authentication-plugin
        timestamp: Thu 2011-01-06 15:40:44 +0100
        message:
          fixed build on MacOS X due to missing malloc.h
          
            * use stdlib.h instead of malloc.h to get malloc() defined
        ------------------------------------------------------------
        revno: 0.14.1
        committer: jan@mysql.com
        branch nick: pam-authentication-plugin
        timestamp: Thu 2011-01-06 15:38:52 +0100
        message:
          support out-of-tree builds
          
           * added -DWITH_MYSQL_BUILDDIR which defaults to -DWITH_MYSQL
           * search for my_config.h in the builddir and my_global.h in the srcdir
    ------------------------------------------------------------
    revno: 0.13.5
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: B58253-pam
    timestamp: Tue 2010-11-30 17:43:52 +0200
    message:
      Bug #58253: A <nl> in the authentication_string (PAM) leads to not
      recognized groups.
      
      Added <NL> (\n) <CR> (\r) and <TAB> (\t) as alternatives to space (0x20).
      Added unit test to check the handling.
    ------------------------------------------------------------
    revno: 0.13.4
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: B58337-pam
    timestamp: Thu 2010-11-25 16:45:53 +0200
    message:
      Bug #58337: A forgotten string delimiter in auth_str leads to failing logins.
      
      Added a unit test to check how the parser handles non-terminated string.
    ------------------------------------------------------------
    revno: 0.13.3
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Thu 2010-11-25 17:59:04 +0200
    message:
      Bug #58336: Two following commas in authentication_string lead to rejected login.
      
      Added the comma (,) and the equal sign (=) as symbols not allowed in unquoted identifiers.
      Added a regression test.
    ------------------------------------------------------------
    revno: 0.13.2
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Thu 2010-11-25 16:00:48 +0200
    message:
      WL#5366: Made the debug macros to depend on how you compile
    ------------------------------------------------------------
    revno: 0.13.1
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: pam-authentication-plugin
    timestamp: Thu 2010-11-25 15:37:06 +0200
    message:
      * Move of the WL#5366 code to a new repository.
      * Created additional C files to allow for unit testing
      * Added unit testing framework using googletest
      * created a unit test for bug #58336.
    ------------------------------------------------------------
    revno: 0.10.42
    committer: Tor Didriksen <tor.didriksen@oracle.com>
    branch nick: thread_pool
    timestamp: Tue 2012-08-28 16:13:34 +0200
    message:
      Bug#14549809 LINKING PROBLEM IN 5.5.28 BUILDS WITH THREADPOOL PLUGIN
      
      The use of Thread_iterator did not work on windows (linking problems).
      Solution: Change the interface between the thread_pool and the server
      to only use simple free functions.
      
      This patch is for 5.5 only (mimicks similar solution in 5.6)
    ------------------------------------------------------------
    revno: 0.10.41
    committer: Thayumanavar <thayumanavar.x.sachithanantha@oracle.com>
    branch nick: thread_pool
    timestamp: Wed 2012-07-25 14:45:43 +0530
    message:
      Bug#13699303 - THREAD POOL PLUGIN IGNORES TIMEOUT.
      PROBLEM:
      mysql provides a feature where in a session which is
      idle for a period specified by the wait_timeout variable
      (whose value is in seconds), the session is closed.
      This feature is not there when we use thread pool.
      FIX:
      This patch implements the wait_timeout feature with the
      thread pool plugin.With each connection that is associated
      with the threadpool,we maintain the absolute idle timeout
      value at which the connection is to be closed.This value is
      updated after execution of every command. There is a global
      timeout context structure associated with the thread pool
      in which we maintain the minimum absolute value of idle
      timeout of all connections.In the stall timer thread, we
      iterate over the global thread list and identify the THDS
      that are associated with the thread pool and look for
      connections whose idle timeout has expired and kill that
      connection if that connection is not processing any command
      or returning any result.
    ------------------------------------------------------------
    revno: 0.10.40
    committer: Anitha Gopi <agopi@vitro82>
    branch nick: mysql-5.5-thread_pool
    timestamp: Mon 2012-03-19 12:40:57 +0100
    message:
      Run the thread-pool tests in the daily batch
    ------------------------------------------------------------
    revno: 0.10.39
    committer: Jon Olav Hauglid <jon.hauglid@oracle.com>
    branch nick: thread_pool
    timestamp: Wed 2011-12-21 17:04:24 +0100
    message:
      Bug#12822005 TYPO IN ERROR MESSAGE: 'POSSIBLE TO HAVE
                   UNDETECTED DEADLOCKISSUES'
      
      This patch fixes a simple typo in a thread pool
      error message: "deadlockissues" => "deadlock issues".
      
      It also updates the corresponding test case.
    ------------------------------------------------------------
    revno: 0.10.38 [merge]
    committer: Daniel Fischer <daniel.fischer@oracle.com>
    branch nick: mysql-5.5-thread_pool
    timestamp: Wed 2011-09-21 12:28:44 +0200
    message:
      merge from 5.5.16 version of this plugin
        ------------------------------------------------------------
        revno: 0.12.1 [merge]
        committer: Daniel Fischer <daniel.fischer@oracle.com>
        branch nick: mysql-5.5-thread_pool-5.5.16-release
        timestamp: Fri 2011-08-19 08:26:21 +0200
        message:
          merge into 5.5.16
            ------------------------------------------------------------
            revno: 0.11.1
            committer: Tor Didriksen <tor.didriksen@oracle.com>
            branch nick: thread_pool
            timestamp: Thu 2011-08-18 16:41:24 +0200
            message:
              BUG#12818561 - RELEASE-LIKE PACKAGE CONTAINS AN EXTRA 'PLUGIN' FOLDER
              
              Install test and result files in <base>/mysql_test/suite/thread_pool
    ------------------------------------------------------------
    revno: 0.10.37
    committer: Mats Kindahl <mats.kindahl@oracle.com>
    branch nick: thread_pool
    timestamp: Mon 2011-08-15 17:27:30 +0200
    message:
      WL#5974: Mark thread pool not dynamically loadable or unloadable
      
      This patch add flags to the thread pool that marks the thread pool
      as not possible to install or uninstall dynamically.
      
      This patch is dependent on the support implemented in WL#5973.
    ------------------------------------------------------------
    revno: 0.10.36
    committer: Davi Arnaut <davi.arnaut@oracle.com>
    branch nick: thread_pool
    timestamp: Thu 2011-07-28 12:42:04 -0300
    message:
      Bug#12781128: Segmentation fault on killing a connection which performs lock table
      
      The problem was due to the thread-specific session data (current_thd)
      not being set prior to calling the cleanup routine of a session. This
      could lead to a crash as cleanup code within the server that relies
      upon current_thd could end up getting a reference to an already dead
      session.
    ------------------------------------------------------------
    revno: 0.10.35
    committer: Davi Arnaut <davi.arnaut@oracle.com>
    branch nick: mysql-5.5-thread_pool
    timestamp: Tue 2011-07-26 22:10:35 -0300
    message:
      Fix valgrind problem with thread_pool_kill_coverage
    ------------------------------------------------------------
    revno: 0.10.34
    committer: Davi Arnaut <davi.arnaut@oracle.com>
    branch nick: mysql-5.5-thread_pool
    timestamp: Tue 2011-07-26 21:39:15 -0300
    message:
      Remove variable that is set but unused.
    ------------------------------------------------------------
    revno: 0.10.33
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Mon 2011-06-20 10:38:51 +0200
    message:
      Fix valgrind problem with thread_pool_kill_coverage
    ------------------------------------------------------------
    revno: 0.10.32
    committer: Matthias Leich <matthias.leich@oracle.com>
    branch nick: thread_pool
    timestamp: Tue 2011-06-14 12:54:59 +0200
    message:
      thread_pool_func4 failed once in PB on Windows in the check if the thread_pool priorizarion system
      is sufficient fair. This isn't so much surprising because the timespan per test run of 5s is
      rather short. The intention behind this short time was to limit the total runtime (example from one box: 82s)
      and resource consumption (extreme CPU load) of this test.
      In order to avoid such failures in PB in future we try now with 10s.
    ------------------------------------------------------------
    revno: 0.10.31
    committer: Matthias Leich <matthias.leich@oracle.com>
    branch nick: thread_pool
    timestamp: Sat 2011-06-11 16:25:46 +0200
    message:
      Correct PB failure on mysql-5.5-thread_pool_basket where ../plugin/thread_pool/tests/collections/default.experimental
      was not found.
      Please note that this fix is good for PB but imperfect for "build and test within a source tree.
    ------------------------------------------------------------
    revno: 0.10.30
    committer: Matthias Leich <matthias.leich@oracle.com>
    branch nick: thread_pool
    timestamp: Fri 2011-06-10 22:17:15 +0200
    message:
      1. Take care that the right default.experimental is taken in default.push
      2. Correct some comment
    ------------------------------------------------------------
    revno: 0.10.29
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Fri 2011-06-10 11:28:10 +0200
    message:
      Ensure multiple KILL's doesn't corrupt internal KILL state
    ------------------------------------------------------------
    revno: 0.10.28
    committer: Tor Didriksen <tor.didriksen@oracle.com>
    branch nick: thread_pool
    timestamp: Fri 2011-06-10 09:19:21 +0200
    message:
      cosmetics
    ------------------------------------------------------------
    revno: 0.10.27
    committer: Matthias Leich <matthias.leich@oracle.com>
    branch nick: thread_pool
    timestamp: Thu 2011-06-09 16:53:08 +0200
    message:
      1. thread_pool_func4 failed once in PB on WIN
         - declare the test to be experimental for WIN
         - Make the test more fault tolerant regarding existence of output files.
           If there is a real failure it will pop up anyway. So this change does
           not harm the goal of the test.
      2. Add the test thread_pool_kill_coverage
    ------------------------------------------------------------
    revno: 0.10.26
    committer: Matthias Leich <matthias.leich@oracle.com>
    branch nick: thread_pool
    timestamp: Mon 2011-06-06 13:27:46 +0200
    message:
        This test failed once on PB on WIN.
        The modifications should make the test more robust.
    ------------------------------------------------------------
    revno: 0.10.25
    committer: Matthias Leich <matthias.leich@oracle.com>
    branch nick: thread_pool
    timestamp: Fri 2011-06-03 20:55:37 +0200
    message:
      1. Fix PB2 errors on WIN
      2. Some unification and beautification of tests
    ------------------------------------------------------------
    revno: 0.10.24
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Thu 2011-06-02 21:47:44 +0200
    message:
      Changed error reports to use sql_print_error instead of fprintf
    ------------------------------------------------------------
    revno: 0.10.23
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: thread_pool
    timestamp: Wed 2011-06-01 21:01:12 +0200
    message:
      Changed maximum value to be 32-bit to ensure tests don't generate warnings on 32-bit OS's
    ------------------------------------------------------------
    revno: 0.10.22
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: thread_pool
    timestamp: Wed 2011-06-01 20:47:39 +0200
    message:
      Updated test case thread_pool_func4
    ------------------------------------------------------------
    revno: 0.10.21
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: thread_pool
    timestamp: Wed 2011-06-01 20:42:53 +0200
    message:
      Updated test case with new max value
    ------------------------------------------------------------
    revno: 0.10.20
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Wed 2011-06-01 20:40:46 +0200
    message:
      Changed max value for prio_kickup_timer
    ------------------------------------------------------------
    revno: 0.10.19
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Wed 2011-06-01 14:17:35 +0200
    message:
      Hand-merged QA changes from old tree
    ------------------------------------------------------------
    revno: 0.10.18
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Wed 2011-06-01 13:37:32 +0200
    message:
      Fixed such that also MAX_UINT32 is disallowed value to ensure that we don't accept numbers that are converted by MySQL Server
    ------------------------------------------------------------
    revno: 0.10.17
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Wed 2011-06-01 11:34:53 +0200
    message:
      Changes to make PB2 work properly with new tree structure
    ------------------------------------------------------------
    revno: 0.10.16
    committer: Mikael Ronstrom <mikael.ronstrom@oracle.com>
    branch nick: mysql-5.5-thread_pool
    timestamp: Mon 2011-05-30 16:28:59 +0200
    message:
      Fixed default.push and default.release
    ------------------------------------------------------------
    revno: 0.10.15
    committer: Mikael Ronstrom <mikael.ronstrom@oracle.com>
    branch nick: mysql-5.5-thread_pool
    timestamp: Mon 2011-05-30 16:21:34 +0200
    message:
      Fixed error in plugin.defs, added control files for PB2
    ------------------------------------------------------------
    revno: 0.10.14
    committer: Mikael Ronstrom <mikael.ronstrom@oracle.com>
    branch nick: mysql-5.5-thread_pool
    timestamp: Mon 2011-05-30 15:44:29 +0200
    message:
      Added thread_pool built from pushbuild
    ------------------------------------------------------------
    revno: 0.10.13
    committer: Mikael Ronstrom <mikael.ronstrom@oracle.com>
    branch nick: mysql-5.5-thread_pool
    timestamp: Mon 2011-05-30 14:46:30 +0200
    message:
      More safe handling of DEBUG_SYNC
    ------------------------------------------------------------
    revno: 0.10.12
    committer: Mikael Ronstrom <mikael.ronstrom@oracle.com>
    branch nick: mysql-5.5-thread_pool
    timestamp: Mon 2011-05-30 11:59:46 +0200
    message:
      Fixed problem found by code inspection
    ------------------------------------------------------------
    revno: 0.10.11
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Thu 2011-05-26 16:15:16 +0200
    message:
      Fixed an error in the CMake file
    ------------------------------------------------------------
    revno: 0.10.10
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Thu 2011-05-26 13:31:36 +0200
    message:
      More fixes of test search paths
    ------------------------------------------------------------
    revno: 0.10.9
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Thu 2011-05-26 13:22:01 +0200
    message:
      Updated lots of hard coded paths to using tests located in plugin/thread_pool/tests/mtr instead of mysql-test/suite/thread_pool
    ------------------------------------------------------------
    revno: 0.10.8
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Thu 2011-05-26 10:39:44 +0200
    message:
      Updated to use Item instead of COND
    ------------------------------------------------------------
    revno: 0.10.7
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Thu 2011-05-26 10:00:22 +0200
    message:
      Updated test cases
    ------------------------------------------------------------
    revno: 0.10.6
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Wed 2011-05-25 15:22:18 +0200
    message:
      Proper naming of tests directory
    ------------------------------------------------------------
    revno: 0.10.5
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Wed 2011-05-25 15:17:28 +0200
    message:
      Moved test files around to suite mtr
    ------------------------------------------------------------
    revno: 0.10.4
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Wed 2011-05-25 15:08:27 +0200
    message:
      Yet one more fix of header placement
    ------------------------------------------------------------
    revno: 0.10.3
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Wed 2011-05-25 15:05:38 +0200
    message:
      Fixed place of thread_pool_config.h
    ------------------------------------------------------------
    revno: 0.10.2
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Wed 2011-05-25 15:02:22 +0200
    message:
      Moved back header files to src directory
    ------------------------------------------------------------
    revno: 0.10.1
    committer: Mikael Ronstr?m <mikael@dator9>
    branch nick: mysql-5.5-thread_pool
    timestamp: Wed 2011-05-25 14:19:41 +0200
    message:
      Initial load of thread_pool tree
    ------------------------------------------------------------
    revno: 0.7.38
    committer: horst.hunger@oracle.com
    branch nick: windows-authentication-plugin
    timestamp: Wed 2012-10-17 08:57:21 +0200
    message:
      Patch for failing cmake.
    ------------------------------------------------------------
    revno: 0.7.37
    committer: horst.hunger@oracle.com
    branch nick: windows-authentication-plugin
    timestamp: Tue 2012-10-16 16:02:27 +0200
    message:
      To make the plugin in PB2.
    ------------------------------------------------------------
    revno: 0.7.36
    committer: horst.hunger@oracle.com
    branch nick: windows-authentication-plugin
    timestamp: Fri 2012-09-21 10:54:09 +0200
    message:
      Added a test (basic) for checking user notation without domain. Prepared for running in daily and weekly commercial.
    ------------------------------------------------------------
    revno: 0.7.35
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: windows-authentication-plugin
    timestamp: Thu 2011-11-17 11:43:55 +0100
    message:
      Bug#13101974 SLAVE CAN'T CONNECT AS REPLICATION USER USING WINDOWS AUTH PLUGIN
      
      Adding a test case which checks that a replication slave can connect to a master using a winauth account.
    ------------------------------------------------------------
    revno: 0.7.34
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: windows-authentication-plugin
    timestamp: Wed 2011-09-28 17:51:26 +0200
    message:
      Change branch configurations so that commit emails are also sent to
      bzrmon@clustra.no.oracle.com. This is in hope that it will trigger automatic bug
      updates.
    ------------------------------------------------------------
    revno: 0.7.33
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: windows-authentication-plugin
    timestamp: Wed 2011-09-28 17:50:00 +0200
    message:
      Bug#12982926  CLIENT CAN OVERRIDE ZERO-LENGTH-ALLOCATE BUFFER
      
      With this fix, instead of crashing, server plugin will report error and refuse
      connection if client plugin reports insufficient number of blocks for storing its
      first reply.
    ------------------------------------------------------------
    revno: 0.7.32 [merge]
    committer: Daniel Fischer <daniel.fischer@oracle.com>
    branch nick: windows-authentication-plugin
    timestamp: Wed 2011-09-21 12:28:26 +0200
    message:
      merge from 5.5.16 version of this plugin
        ------------------------------------------------------------
        revno: 0.9.1
        committer: Daniel Fischer <daniel.fischer@oracle.com>
        branch nick: windows-authentication-plugin-5.5.16-release
        timestamp: Thu 2011-09-08 10:11:39 +0200
        message:
          install tests into suite directory instead of prefix
    ------------------------------------------------------------
    revno: 0.7.31
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: windows-authentication-plugin
    timestamp: Wed 2011-09-07 22:19:07 +0200
    message:
      Bug#12917594 WINDOWS AUTHENTICATION DENIES ACCESS FOR A VALID USER UPON A
      RACE CONDITION
      
      The problem was too frequent calls to Windows function LookupAccountName() which happened upon each connection if the user map string contained invalid account.
      
      Now the calls will happen no more often than once per MINIMUM_MAP_UPDATE_TIME, set to 500ms.
      
      This patch also removes static buffer used in the parser which prevent its concurrent usage.
    ------------------------------------------------------------
    revno: 0.7.30
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: windows-authentication-plugin
    timestamp: Wed 2011-09-07 22:16:05 +0200
    message:
      Bug#12873214 WINDOWS AUTHENTICATION PLUGIN PRODUCES EXCESSIVE RECORDS IN SERVER ERROR LOG
      
      Test updates.
    ------------------------------------------------------------
    revno: 0.7.29 [merge]
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: winauth
    timestamp: Wed 2011-09-07 18:25:26 +0200
    message:
      merge for bug#12873214
        ------------------------------------------------------------
        revno: 0.8.1
        committer: Rafal Somla <rafal.somla@oracle.com>
        branch nick: bug12873214
        timestamp: Fri 2011-09-02 18:58:54 +0200
        message:
          Bug#12873214 WINDOWS AUTHENTICATION PLUGIN PRODUCES EXCESSIVE RECORDS IN SERVER ERROR LOG
          
          Added new server-plugin variable authentication_windows_log_level
          which controls level of logging done by the plugin. Its values are as
          follows, with default value equal to 2:
          
            0 - no logging
            1 - log only error messages
            2 - additionaly log warnings
            3 - additionaly log info notes
            4 - also log debug messages
          
          The logging function error_log_vprint() is modified to respect that
          setting.
    ------------------------------------------------------------
    revno: 0.7.28
    committer: horst.hunger@oracle.com
    branch nick: windows-authentication-plugin
    timestamp: Thu 2011-09-01 15:18:03 +0200
    message:
      Add collections for PB to tests for WL#5367.
    ------------------------------------------------------------
    revno: 0.7.27
    committer: horst.hunger@oracle.com
    branch nick: windows-authentication-plugin
    timestamp: Thu 2011-09-01 11:46:05 +0200
    message:
      Test automation in cemmercial baskets for WL#5367.
    ------------------------------------------------------------
    revno: 0.7.26
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: windows-authentication-plugin
    timestamp: Fri 2011-05-20 12:40:29 +0300
    message:
      Added a check to skip the windows authentication plugin on non-windows platform.
    ------------------------------------------------------------
    revno: 0.7.25
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: windows-authentication-plugin
    timestamp: Thu 2011-04-28 22:54:05 +0200
    message:
      BUG#11879051: FIRST REPLY LENGTH LIMIT (255) CAN BE VIOLATED
      
      Implements change in the handshake protocol. First reply from client can
      now come in two parts. If the first packet sent by client has 255 bytes
      or more then server reads another packets and appends it to the first one.
      
      Code is also adopted to changes in the generic packet processing loop
      (Handshake::packet_processing_loop). Now physical reading and writing
      of packets is implemented in Handshake_server class. It detects the new
      protocol path and glues the two packets together transparently to the
      rest of the code.
      
      Added optional support for dbug library in the plugin. Plugin status variable
      Authentication_windows_uses_dbug_library can be used by tests to detect
      if extended debug facilities are present in the code. This is used in new
      test first-packet which uses special code for testing split of first client reply.
    ------------------------------------------------------------
    revno: 0.7.24
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: authentication-windows
    timestamp: Thu 2011-04-28 12:51:58 +0200
    message:
      Bug#11766631 (59780) - Move the client authentication_windows plugin
      into the server repository
      
      Remove client-side plugin sources from the repository as now they live
      in the main MySQL source tree.
      
      Also remove the unit tests framework which was not used and the code
      coverage support to simplify configuration.
      
      The build configuration is simplified, because now plugin is built as part
      of MySQL server build.
    ------------------------------------------------------------
    revno: 0.7.23
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: trunk
    timestamp: Fri 2011-02-04 16:56:27 +0100
    message:
      BUG#58722 - Windows authentication plugin caused a crash.
      
      The crash happened in authentication string parser which could not handle
      non-ascii characters embedded in the utf8 encoded string.
      
      This is fixed by converting the authentication string to the C++ internal
      wide-char representation and adjasting parser to work with wide-char
      strings.
    ------------------------------------------------------------
    revno: 0.7.22
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: repo
    timestamp: Mon 2010-11-29 23:52:50 +0100
    message:
      Adapt to changes in client-side plugin API. Now this tree must
      be compiled with revision 3086 of the API.
      (revid:georgi.kodinov@oracle.com-20101004125441-3d7spqw14xljakpg)
    ------------------------------------------------------------
    revno: 0.7.21
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: try
    timestamp: Sat 2010-11-27 14:52:02 +0100
    message:
      Final minor post-review layout changes.
    ------------------------------------------------------------
    revno: 0.7.20
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: try
    timestamp: Tue 2010-11-23 17:21:49 +0100
    message:
      Move the common packet processing loop for client and server into
      Handshake::packet_processing_loop() method.
    ------------------------------------------------------------
    revno: 0.7.19
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: try
    timestamp: Thu 2010-11-18 22:53:34 +0100
    message:
      Simplify code handling value of AUTHENTICATION_WIN_LOG environment variable by using case-insensitive string comparison function.
    ------------------------------------------------------------
    revno: 0.7.18
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: windows-authentication-plugin
    timestamp: Thu 2010-11-18 22:40:42 +0100
    message:
      Fixing typos and code layout violations:
      -- space after comma
      -- assignments layout
      -- max line width 80 chars
    ------------------------------------------------------------
    revno: 0.7.17
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: windows-authentication-plugin
    timestamp: Thu 2010-11-18 15:45:58 +0100
    message:
      Fix spacing:
      - remove any DOS line endings,
      - remove white space at end of lines.
    ------------------------------------------------------------
    revno: 0.7.16
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: try
    timestamp: Thu 2010-11-18 14:41:51 +0100
    message:
      Post 2nd review changes:
      -- use do {} while(0) for no-op
      -- remove ERROR_SEND
      -- rname get_last_win_error() to get_last_error_message()
      -- fix typo in Security_buffer: description of buf member.
      -- group class member declarations in single place
      -- allign static members in UPN and elsewhere
      -- use init(void*, size_t) instead of init_buf()
      -- use m_prefix for all class members.
      -- comment that the *vio pointer can not be null
      -- remove m_side from Handshake class.
      -- delete objects in case of error in win_auth_plugin_init().
      -- set pointers to NULL after deleting in plugin de-init function.
      -- replace implicit Security_buffer -> Blob conversion with as_blob() operator.
      -- comment that m_error==0 means "no errors"
      -- put externs at the top of source file and comment where they are defined.
    ------------------------------------------------------------
    revno: 0.7.15
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: repo
    timestamp: Fri 2010-10-29 14:12:34 +0200
    message:
      1. Move tests to a separate cmake (sub-)project. See tests/README.
      2. Add unit test framework. See tests/unit/CMakeLists.txt.
      3. Add support for getting test code coverage data with TestCocoon tool.
          See README.coverage for details.
    ------------------------------------------------------------
    revno: 0.7.14
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: windows-authentication-plugin
    timestamp: Fri 2010-10-29 12:26:56 +0200
    message:
      Changes suggested in the review.
    ------------------------------------------------------------
    revno: 0.7.13
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: try
    timestamp: Sat 2010-10-16 19:31:27 +0200
    message:
      Implementing few more review suggestions.
      
      - Add conversion from Security_buffer to Blob,
      - Simplify Scanner implementation (remove next_char() method).
    ------------------------------------------------------------
    revno: 0.7.12
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: try
    timestamp: Sat 2010-10-16 14:04:53 +0200
    message:
      Split code for handling server- and client-side handshake into separate
      compilation units, handshake_server.cc and handshake_client.cc, and
      use in each plugin only the relevant code.
    ------------------------------------------------------------
    revno: 0.7.11
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: try
    timestamp: Sat 2010-10-16 12:31:10 +0200
    message:
      Make get_last_win_error() thread-safe.
    ------------------------------------------------------------
    revno: 0.7.10
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: try
    timestamp: Fri 2010-10-15 14:17:56 +0200
    message:
      Improving documentation:
      - add parameter descriptions in function documentation,
      - document class members.
    ------------------------------------------------------------
    revno: 0.7.9
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: try
    timestamp: Fri 2010-10-15 12:24:40 +0200
    message:
      Remove challenge/reply concept from the description of
      authentication handshake. Look at it more symmetrically
      as an exchange of packets between client and server.
      
      This affects documentation and some method/variable names.
      
      Also limit handshake length on server side to protect against
      malcious clients. Print error if limit is reached.
    ------------------------------------------------------------
    revno: 0.7.8
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: try
    timestamp: Fri 2010-10-15 10:08:23 +0200
    message:
      Code changes suggestet in review:
      - rename class Buf -> Security_buffer
      - rename members
           Handshake_client::m_target -> m_service_name
           Handshake_client::m_target_buf -> m_service_name_buf
      - make UPN conversion function static members of UPN class,
      - make SSP name configurable (via SSP_NAME macro).
    ------------------------------------------------------------
    revno: 0.7.7
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: try
    timestamp: Fri 2010-10-15 09:44:06 +0200
    message:
      Fixing code layout:
      - add space after first argument of DBUG_PRINT and ERROR_LOG macros,
      - alignment of { and } in inlined class methods,
      - alignment of { and } in switch statements.
    ------------------------------------------------------------
    revno: 0.7.6
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: try
    timestamp: Thu 2010-10-14 14:28:05 +0200
    message:
      Post review changes (first part)
    ------------------------------------------------------------
    revno: 0.7.5
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: repo
    timestamp: Thu 2010-10-14 07:57:58 +0200
    message:
      Chenge plugin name to 'authentication_windows'.
    ------------------------------------------------------------
    revno: 0.7.4
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: repo
    timestamp: Wed 2010-10-13 14:09:09 +0200
    message:
      Fixed error in map string parser.
      
      Before: When parsing single mapping, parser did not move
      to the following token in some cases (when SID error was
      encountered).
      
      After: When parse_mapping() exits, scanner is at the next
      token after the mapping which has been parsed.
      
      Also minor fix in Scanner::last_token_str() which did not
      handle WORD token.
    ------------------------------------------------------------
    revno: 0.7.3
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: repo
    timestamp: Tue 2010-10-12 15:08:56 +0200
    message:
      Added simple configuration for installer and packaging.
    ------------------------------------------------------------
    revno: 0.7.2
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: try
    timestamp: Tue 2010-10-12 12:10:57 +0200
    message:
      - add check that MySQL source tree used in build is configure.
      - remove unused variable from UPN constructor.
    ------------------------------------------------------------
    revno: 0.7.1
    committer: Rafal Somla <rafal.somla@oracle.com>
    branch nick: repo
    timestamp: Tue 2010-10-12 11:50:30 +0200
    message:
      WL#5367 - Windows authentication plugin
            
      Implements Windows native authentication using pluggable
      authentication infrastructure of WL#1054. This repository
      contains server-side plugin (authentication_win) and the
      corresponding client-side plugin (authentication_win_client).
      
      See BUILD-CMAKE for instructions how to build and test
      these plugins. The plugins should be installed iin a plugin
      directory pointed to by --plugin-dir option of mysqld server
      and mysql client.
            
      An SQL user which uses windows authentication should be
      created with:
            
         CREATE USER <sql_user_name>
              IDENTIFIED WITH 'authentication_win'
              AS '<user_map>';
            
      where <user_map> is a list of '<win_user_or_group> = <sql_user>'
      mappings. The 'authentication_win' plugin must be loaded into
      server before doing that. A Windows user can login into
      MySQL server using command:
            
        mysql --plugin-dir=<plugin_directory> --user=<sql_user_name> ...
            
      If his Windows name or group appears in the user map of
      <sql_user_name> then he will be authenticated as the
      corresponding <sql_user> without a need to provide a password.
------------------------------------------------------------
revno: 4020 [merge]
committer: Yasufumi Kinoshita <yasufumi.kinoshita@oracle.com>
branch nick: mysql-5.5_test
timestamp: Wed 2012-10-17 16:16:45 +0900
message:
  Bug #13702112 : WAIT_FOR_READ IS STUCK IN THE 90S
  
  rb://1334
  approved by: Inaam Rana
    ------------------------------------------------------------
    revno: 2661.830.1
    committer: Yasufumi Kinoshita <yasufumi.kinoshita@oracle.com>
    branch nick: mysql-5.1_test
    timestamp: Wed 2012-10-17 15:28:31 +0900
    message:
      Bug #13702112 : WAIT_FOR_READ IS STUCK IN THE 90S
      
      rb://1334
      approved by: Inaam Rana
------------------------------------------------------------
revno: 4019 [merge]
committer: Tatjana Azundris Nuernberg <tatjana.nuernberg@oracle.com>
branch nick: 55-11764559b
timestamp: Wed 2012-10-17 07:36:40 +0100
message:
  Bug#11764559: UMASK IS IGNORED BY ERROR LOG
  
  mysqld_safe script did not heed MySQL specific environment variable
  $UMASK, leading to divergent behavior between mysqld and mysqld_safe.
  
  Patch adds an approximation of mysqld's behavior to mysqld_safe,
  within the bounds dictated by attempt to have mysqld_safe run on
  even the most basic of shells (proper '70s sh, not just bash
  with a fancy symlink).
  
  Patch also adds approximation of said behavior to mysqld_multi
  (in perl).
  
  (backport)
  
  manual merge
    ------------------------------------------------------------
    revno: 2661.810.115
    committer: Tatjana Azundris Nuernberg <tatjana.nuernberg@oracle.com>
    branch nick: 51-11764559
    timestamp: Wed 2012-10-17 07:22:06 +0100
    message:
      Bug#11764559: UMASK IS IGNORED BY ERROR LOG
      
      mysqld_safe script did not heed MySQL specific environment variable
      $UMASK, leading to divergent behavior between mysqld and mysqld_safe.
      
      Patch adds an approximation of mysqld's behavior to mysqld_safe,
      within the bounds dictated by attempt to have mysqld_safe run on
      even the most basic of shells (proper '70s sh, not just bash
      with a fancy symlink).
      
      Patch also adds approximation of said behavior to mysqld_multi
      (in perl).
------------------------------------------------------------
revno: 4018 [merge]
committer: Neeraj Bisht <neeraj.x.bisht@oracle.com>
branch nick: mysql-5.5
timestamp: Tue 2012-10-16 23:26:35 +0530
message:
  Bug#11745891 - LAST_INSERT(ID) DOES NOT SUPPORT BIGINT UNSIGNED
  
  Problem:-
  using last_insert_id() on an auto_incremented bigint unsigned does
  not work for values which are greater than max-bigint-signed.
  
  Analysis:-
  last_insert_id() returns the first auto_incremented value for a column
  and an auto_incremented value can have only positive values.
  
  In our code, when we are initializing a last_insert_id object, we are
  taking it as a signed BIGINT, So when the auto_incremented value reaches
  greater than max signed bigint, last_insert_id gives negative result.
  
  Solution:
  When we are fetching the value from last_insert_id, We are setting the
  unsigned_flag, so that it take only unsigned BIGINT value.
    ------------------------------------------------------------
    revno: 2661.810.114
    committer: Neeraj Bisht <neeraj.x.bisht@oracle.com>
    branch nick: mysql-5.1
    timestamp: Tue 2012-10-16 23:18:48 +0530
    message:
      Bug#11745891 - LAST_INSERT(ID) DOES NOT SUPPORT BIGINT UNSIGNED
      
      Problem:-
      using last_insert_id() on an auto_incremented bigint unsigned does
      not work for values which are greater than max-bigint-signed.
      
      Analysis:-
      last_insert_id() returns the first auto_incremented value for a column
      and an auto_incremented value can have only positive values.
      
      In our code, when we are initializing a last_insert_id object, we are
      taking it as a signed BIGINT, So when the auto_incremented value reaches
      greater than max signed bigint, last_insert_id gives negative result.
      
      Solution:
      When we are fetching the value from last_insert_id, We are setting the
      unsigned_flag, so that it take only unsigned BIGINT value.
------------------------------------------------------------
revno: 4017
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: 5.5-plugins-review
timestamp: Tue 2012-10-16 14:27:33 +0200
message:
  Bug#14737559 BZR JOIN PLUGIN TREES INTO INTERNAL/PLUGIN
  
  Part one:
  Move i_mysql_client_test into internal/tests
------------------------------------------------------------
revno: 4016 [merge]
committer: Marko M?kel? <marko.makela@oracle.com>
branch nick: mysql-5.5
timestamp: Tue 2012-10-16 14:35:19 +0300
message:
  Merge mysql-5.1 to mysql-5.5.
    ------------------------------------------------------------
    revno: 2661.810.113
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.1
    timestamp: Tue 2012-10-16 14:24:15 +0300
    message:
      Bug#14729221 IN-PLACE ALTER TABLE REPORTS '' INSTEAD OF
      REAL DUPLICATE VALUE FOR PREFIX KEYS
      
      innobase_rec_to_mysql(): Invoke dict_index_get_nth_col_or_prefix_pos()
      instead of dict_index_get_nth_col_pos() to find the column.
    ------------------------------------------------------------
    revno: 2661.810.112
    committer: Krunal Bauskar krunal.bauskar@oracle.com
    branch nick: mysql-5.1
    timestamp: Mon 2012-10-15 09:24:33 +0530
    message:
      
      bug#14704286
      SECONDARY INDEX UPDATES MAKE CONSISTENT READS DO O(N^2) UNDO PAGE
      LOOKUPS (honoring kill query while accessing sec_index)
      
      If secondary index is being used for select query evaluation and this
      query is operating with consistent read snapshot it might take good time for
      secondary index to return back control to mysql as MVCC would kick in.
      
      If user issues "kill query <id>" while query is actively accessing
      secondary index it will not be honored as there is no hook to check
      for this condition. Added hook for this check.
      
      -----
      Parallely secondary index taking too long to evaluate for consistent
      read snapshot case is being examined for performance improvement. WL#6540.
------------------------------------------------------------
revno: 4015
committer: Krunal Bauskar krunal.bauskar@oracle.com
branch nick: mysql-5.5
timestamp: Mon 2012-10-15 14:16:46 +0530
message:
  removed warning message as they have changed in mysql-5.6 and mysql-trunk and this is left over from changes that got up-merged
------------------------------------------------------------
revno: 4014
committer: Krunal Bauskar krunal.bauskar@oracle.com
branch nick: mysql-5.5
timestamp: Mon 2012-10-15 09:49:50 +0530
message:
  
  bug#14704286
  SECONDARY INDEX UPDATES MAKE CONSISTENT READS DO O(N^2) UNDO PAGE
  LOOKUPS (honoring kill query while accessing sec_index)
  
  If secondary index is being used for select query evaluation and this
  query is operating with consistent read snapshot it might take good time for
  secondary index to return back control to mysql as MVCC would kick in.
  
  If user issues "kill query <id>" while query is actively accessing
  secondary index it will not be honored as there is no hook to check
  for this condition. Added hook for this check.
  
  -----
  Parallely secondary index taking too long to evaluate for consistent
  read snapshot case is being examined for performance improvement. WL#6540.
------------------------------------------------------------
revno: 4013 [merge]
committer: Marc Alff <marc.alff@oracle.com>
branch nick: mysql-5.5-cleanup
timestamp: Fri 2012-10-12 22:59:21 +0200
message:
  Merge mysql-5.1 --> mysql-5.5
    ------------------------------------------------------------
    revno: 2661.810.111
    committer: Marc Alff <marc.alff@oracle.com>
    branch nick: mysql-5.1-bug14629232
    timestamp: Fri 2012-10-12 19:38:45 +0200
    message:
      Bug#14629232 SECURITY VULNERABILITY WITH SHOW PROFILE
      
      This fix resolves a security vulnerability of SHOW PROFILE.
      
      See the bug report for details.
------------------------------------------------------------
revno: 4012 [merge]
committer: Vasil Dimov <vasil.dimov@oracle.com>
branch nick: mysql-5.5
timestamp: Wed 2012-10-10 22:25:16 +0300
message:
  Null merge mysql-5.1 -> mysql-5.5 (the problem fixed in 5.1 does not
  exist in 5.5).
    ------------------------------------------------------------
    revno: 2661.810.110
    committer: Vasil Dimov <vasil.dimov@oracle.com>
    branch nick: mysql-5.1
    timestamp: Wed 2012-10-10 22:22:10 +0300
    message:
      Fix compilation error in debug mode:
      os/os0file.c:1332: error: ISO C90 forbids mixed declarations and code
------------------------------------------------------------
revno: 4011 [merge]
committer: Vasil Dimov <vasil.dimov@oracle.com>
branch nick: mysql-5.5
timestamp: Tue 2012-10-09 16:41:13 +0300
message:
  Merge mysql-5.1 -> mysql-5.5
    ------------------------------------------------------------
    revno: 2661.810.109
    committer: Vasil Dimov <vasil.dimov@oracle.com>
    branch nick: mysql-5.1
    timestamp: Tue 2012-10-09 16:29:00 +0300
    message:
      Port the test for Bug#14708715 from 5.1/innodb_plugin into 5.1/innodb
      although the bug does not exist in 5.1/innodb.
    ------------------------------------------------------------
    revno: 2661.810.108
    committer: Vasil Dimov <vasil.dimov@oracle.com>
    branch nick: mysql-5.1
    timestamp: Tue 2012-10-09 16:08:06 +0300
    message:
      Update the ChangeLog with the fix of Bug#14708715
    ------------------------------------------------------------
    revno: 2661.810.107
    committer: Vasil Dimov <vasil.dimov@oracle.com>
    branch nick: mysql-5.1
    timestamp: Tue 2012-10-09 16:02:58 +0300
    message:
      Fix Bug#14708715 CREATE TABLE MEMORY LEAK ON DB_OUT_OF_FILE_SPACE
      
      The problem is in the error handling in row_create_table_for_mysql().
      In the 'disk full' case we may forget to call dict_mem_table_free() on
      the table object.
      
      Approved by: Marko (rb:1377 and rb:1386)
------------------------------------------------------------
revno: 4010
committer: Harin Vadodaria <harin.vadodaria@oracle.com>
branch nick: 55_bug14211140
timestamp: Tue 2012-10-09 18:15:40 +0530
message:
  Bug #14211140: CRASH WHEN GRANTING OR REVOKING PROXY
                 PRIVILEGES
  
  Description: (user,host) pair from security context is used
               privilege checking at the time of granting or
               revoking proxy privileges. This creates problem
               when server is started with
               --skip-name-resolve option because host will not
               contain any value. Checks should be dependent on
               consistent values regardless the way server is
               started. Further, privilege check should use
               (priv_user,priv_host) pair rather than values
               obtained from inbound connection because
               this pair represents the correct account context
               obtained from mysql.user table.
------------------------------------------------------------
revno: 4009
committer: Annamalai Gurusami <annamalai.gurusami@oracle.com>
branch nick: mysql-5.5
timestamp: Tue 2012-10-09 12:25:02 +0530
message:
  Fixing a compilation issue.
------------------------------------------------------------
revno: 4008
committer: Praveenkumar Hulakund <praveenkumar.hulakund@oracle.com>
branch nick: mysql_5_5
timestamp: Mon 2012-10-08 23:35:15 +0530
message:
  Bug#11756600 - SLAVE THREAD CAN CRASH IF EVENT SCHEDULER
                 FAILS TO READ EVENT TABLE AT STARTUP.
  
  This issue is fixed in 5.5+ versions. This patch adds a test
  case for this scenario.
------------------------------------------------------------
revno: 4007
committer: Annamalai Gurusami <annamalai.gurusami@oracle.com>
branch nick: mysql-5.5
timestamp: Mon 2012-10-08 19:40:30 +0530
message:
  Bug #14036214 MYSQLD CRASHES WHEN EXECUTING UPDATE IN TRX WITH
  CONSISTENT SNAPSHOT OPTION
  
  A transaction is started with a consistent snapshot.  After
  the transaction is started new indexes are added to the
  table.  Now when we issue an update statement, the optimizer
  chooses an index.  When the index scan is being initialized
  via ha_innobase::change_active_index(), InnoDB reports
  the error code HA_ERR_TABLE_DEF_CHANGED, with message
  stating that "insufficient history for index".
  
  This error message is propagated up to the SQL layer.  But
  the my_error() api is never called.  The statement level
  diagnostics area is not updated with the correct error
  status (it remains in Diagnostics_area::DA_EMPTY).  
  
  Hence the following check in the Protocol::end_statement()
  fails.
  
   516   case Diagnostics_area::DA_EMPTY:
   517   default:
   518     DBUG_ASSERT(0);
   519     error= send_ok(thd->server_status, 0, 0, 0, NULL);
   520     break;
  
  The fix is to backport the fix of bugs 14365043, 11761652
  and 11746399.
  
  14365043 PROTOCOL::END_STATEMENT(): ASSERTION `0' FAILED
  11761652 HA_RND_INIT() RESULT CODE NOT CHECKED
  11746399 RETURN VALUES OF HA_INDEX_INIT() AND INDEX_INIT() IGNORED
  
  rb://1227 approved by guilhem and mattiasj.
------------------------------------------------------------
revno: 4006 [merge]
committer: Marko M?kel? <marko.makela@oracle.com>
branch nick: mysql-5.5
timestamp: Mon 2012-10-08 16:18:54 +0300
message:
  Merge mysql-5.1 to mysql-5.5.
  Also, add debug check for trx_id sanity to row_upd_rec_sys_fields().
    ------------------------------------------------------------
    revno: 2661.810.106
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.1
    timestamp: Mon 2012-10-08 16:01:50 +0300
    message:
      Bug#14731482 UPDATE OR DELETE CORRUPTS A RECORD WITH A LONG PRIMARY KEY
      
      We did not allocate enough bits for index->trx_id_offset, causing an
      UPDATE or DELETE of a table with a PRIMARY KEY longer than 1024 bytes
      to corrupt the PRIMARY KEY.
      
      dict_index_t: Allocate enough bits.
      
      dict_index_build_internal_clust(): Check for overflow of
      index->trx_id_offset. Trip a debug assertion when overflow occurs.
      
      rb:1380 approved by Jimmy Yang
------------------------------------------------------------
revno: 4005
committer: Jon Olav Hauglid <jon.hauglid@oracle.com>
branch nick: mysql-5.5-bug14640599
timestamp: Thu 2012-10-04 16:15:13 +0200
message:
  Bug#14640599 MEMORY LEAK WHEN EXECUTING STORED ROUTINE EXCEPTION HANDLER
  
  When a SP handler is activated, memory is allocated to hold the
  MESSAGE_TEXT for the condition that caused the activation.
  
  The problem was that this memory was allocated on the MEM_ROOT belonging
  to the stored program. Since this MEM_ROOT is not freed until the
  stored program ends, a stored program that causes lots of handler
  activations can start using lots of memory. In 5.1 and earlier the
  problem did not exist as no MESSAGE_TEXT was allocated if a condition
  was raised with a handler present. However, this behavior lead to
  a number of other issues such as Bug#23032.
  
  This patch fixes the problem by allocating enough memory for the
  necessary MESSAGE_TEXTs in the SP MEM_ROOT when the SP starts and
  then re-using this memory each time a handler is activated.
        
  This is the 5.5 version of the patch.
------------------------------------------------------------
revno: 4004
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: 5.5-bug13713525createinitialdb
timestamp: Wed 2012-10-03 16:05:07 +0200
message:
  Bug#13713525 CREATE_INITIAL_DB.CMAKE IS FAILING ON WINDOWS, STILL "DEVENV" RETURNS 0
  
  This bug depends on cmake version.
  
  For cmake 2.6 (which is still in use for some pushbuild trees)
  the main build would succeed, even if create_initial_db failed.
  
  The problem was the chaining of commands in the CUSTOM_COMMAND
  to produce 'initdb.dep'. It first invokes cmake to run mysqld,
  then invokes 'touch' to create the file. Moving the 'touch'
  command makes the error propagate properly for both cmake 2.6 and 2.8
------------------------------------------------------------
revno: 4003
committer: Jon Olav Hauglid <jon.hauglid@oracle.com>
branch nick: mysql-5.5-test
timestamp: Wed 2012-10-03 15:00:43 +0200
message:
  Bug#14495351: CRASH IN HA_PARTITION::HANDLE_UNORDERED_NEXT
  
  Follow-up patch - Fix broken build:
  error: format ?%u? expects argument of type ?unsigned int?,
  but argument 2 has type ?key_part_map {aka long unsigned int}?
  [-Werror=format]
------------------------------------------------------------
revno: 4002
committer: Mattias Jonsson <mattias.jonsson@oracle.com>
branch nick: b14495351-55
timestamp: Mon 2012-09-10 13:32:50 +0200
message:
  Bug#14495351: CRASH IN HA_PARTITION::HANDLE_UNORDERED_NEXT
  
  The partitioning engine does not implement index_next for partitions
  which return HA_ERR_KEY_NOT_FOUND in index_read_map.
  
  If HA_ERR_KEY_NOT_FOUND was returned by a partition during
  index_read_map, that partition would not be included in following
  calls to index_next. If no partition returned a row in index_read_map,
  then the subsequent call to index_next would try to use a non existing
  handler (index out of bound).
  Even after fixing the index out of bound if at least one partition
  returned.
  
  So it is really two connected bugs
  1) crash due to index out of bound (-1 unsigned).
  2) not including partitions that returned HA_ERR_KEY_NOT_FOUND.
  
  Fixed by recording the partitions that returned HA_ERR_KEY_NOT_FOUND,
  and include them too when doing handle_ordered_next the first time.
------------------------------------------------------------
revno: 4001
committer: Serge Kozlov <serge.kozlov@oracle.com>
branch nick: mysql-5.5
timestamp: Tue 2012-10-02 22:05:51 +0400
message:
  BUG#12604949. Increased timeout for switching sync->async. Number of iterations for loops sets 10.
------------------------------------------------------------
revno: 4000 [merge]
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: 5.5-merge
timestamp: Mon 2012-10-01 15:57:37 +0200
message:
  merge 5.1 => 5.5
    ------------------------------------------------------------
    revno: 2661.810.105
    committer: Tor Didriksen <tor.didriksen@oracle.com>
    branch nick: 5.1
    timestamp: Mon 2012-10-01 13:12:38 +0200
    message:
      Bug#14683676 ENDLESS MEMORY CONSUMPTION IN SETUP_REF_ARRAY WITH MAX IN SUBQUERY
      
      n_child_sum_items kept increasing.
      Since it is used for calculating the size of ref_pointer_array,
      we will allocate larger and larger chunks of memory, until we hit some
      operating system limit.
      The memory is free()d at disconnect, but is most likely *not*
      returned to the operating system.
------------------------------------------------------------
revno: 3999 [merge]
committer: Joerg Bruehe <joerg.bruehe@oracle.com>
branch nick: mysql-5.5
timestamp: Mon 2012-10-01 11:29:02 +0200
message:
  Empty upmerge of 5.1.66 into 5.5
    ------------------------------------------------------------
    revno: 2661.810.104 [merge]
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: mysql-5.1
    timestamp: Mon 2012-10-01 11:19:59 +0200
    message:
      Merge 5.1.66 into main 5.1
        ------------------------------------------------------------
        revno: 2661.829.1
        tags: mysql-5.1.66
        committer: Joerg Bruehe <joerg.bruehe@oracle.com>
        branch nick: clone-5.1
        timestamp: Tue 2012-09-11 12:47:32 +0200
        message:
          Spec file change to work around cast ulonglong -> int.
------------------------------------------------------------
revno: 3998
author: hery.ramilison@oracle.com
committer: Hery Ramilison <hery.ramilison@oracle.com>
branch nick: mysql-5.5
timestamp: Mon 2012-10-01 08:44:52 +0200
message:
  Merge from mysql-5.5.28-release
------------------------------------------------------------
revno: 3997 [merge]
committer: Annamalai Gurusami <annamalai.gurusami@oracle.com>
branch nick: mysql-5.5
timestamp: Fri 2012-09-28 16:42:31 +0530
message:
  Merge from mysql-5.1 to mysql-5.5.
    ------------------------------------------------------------
    revno: 2661.810.103
    committer: Annamalai Gurusami <annamalai.gurusami@oracle.com>
    branch nick: mysql-5.1
    timestamp: Fri 2012-09-28 16:02:58 +0530
    message:
      Bug #13249921 ASSERT !BPAGE->FILE_PAGE_WAS_FREED, USUALLY IN
      TRANSACTION ROLLBACK
      
      Description:  During the rollback operation, a blob page
      is removed earlier than desired.  Consider following scenario:
      
      1. create table t1(a int primary key,b blob) engine=innodb;
      2. insert into t1 values (1,repeat('b',9000));
      3. begin;
      4. update t1 set b=concat(b,'b');
      5. update t1 set a=a+1;
      6. insert into t1 values (1,repeat('b',9000));
      7. rollback;
      
      The update operation in line 5 produces 2 undo log record. The first
      undo record (TRX_UNDO_DEL_MARK_REC) goes to trx->update_undo and the
      second undo record (TRX_UNDO_INSERT_REC) goes to trx->insert_undo.
      During rollback, they are executed out of order.
      
      When the undo record TRX_UNDO_DEL_MARK_REC is applied/executed,
      the blob ownership is also reset.  Because of this the blob page
      is released earlier than desired.  This blob page must have been
      freed only as part of applying/executing the undo record
      TRX_UNDO_INSERT_REC.
      
      This problem can be avoided by executing the undo records in
      order.  This patch will make innodb to execute the undo records
      in order.
      
      rb://1125 approved by Marko.
------------------------------------------------------------
revno: 3996
committer: Harin Vadodaria<harin.vadodaria@oracle.com>
branch nick: 55_bug11753779
timestamp: Thu 2012-09-27 12:12:34 +0530
message:
  Bug#11753779: MAX_CONNECT_ERRORS WORKS ONLY WHEN 1ST
                INC_HOST_ERRORS() IS CALLED.
  
  Description: Fix for test failures on Windows.
------------------------------------------------------------
revno: 3995
committer: Akhila Maddukuri<akhila.x.maddukuri@oracle.com>
branch nick: ucs-5.5
timestamp: Thu 2012-09-27 02:06:08 +0530
message:
  Description:
  -----------
  After compiling from source, during make test I got the following error:
  
  test main.loaddata failed with error
  CURRENT_TEST: main.loaddata
  mysqltest: At line 592: query 'LOAD DATA INFILE 'tmpp.txt' INTO TABLE t1
  CHARACTER SET ucs2
  (@b) SET a=REVERSE(@b)' failed: 1115: Unknown character set: 'ucs2'
  
  I noticed other tests are skipped because of no ucs2
  main.mix2_myisam_ucs2                    [ skipped ]  Test requires:'
  have_ucs2'
  
  Should main.loaddata be skipped if there is no ucs2
  
  How To Repeat:
  -------------
  Run make test on compiled source that doesn't have ucs2
  
  Suggested fix:
  -------------
  the failing piece of the test should be moved from mysql-test/t/loaddata.test to
  mysql-test/t/ctype_ucs.test.
------------------------------------------------------------
revno: 3994 [merge]
committer: Nuno Carvalho <nuno.carvalho@oracle.com>
branch nick: mysql-5.5
timestamp: Wed 2012-09-26 18:31:44 +0100
message:
  BUG#14548159: NUMEROUS CASES OF INCORRECT IDENTIFIER QUOTING IN REPLICATION
  
  Merge from mysql-5.1 into mysql-5.5.
    ------------------------------------------------------------
    revno: 2661.810.102
    committer: Nuno Carvalho <nuno.carvalho@oracle.com>
    branch nick: mysql-5.1
    timestamp: Wed 2012-09-26 18:29:09 +0100
    message:
      BUG#14548159: NUMEROUS CASES OF INCORRECT IDENTIFIER QUOTING IN REPLICATION
      
      Fixes for backtick incorrectly escaped on Windows OSs and result file
      mismatch on valgrind.
------------------------------------------------------------
revno: 3993 [merge]
committer: Akhila Maddukuri<akhila.x.maddukuri@oracle.com>
branch nick: ucs-5.5
timestamp: Wed 2012-09-26 17:04:19 +0530
message:
  Description:
  -----------
  After compiling from source, during make test I got the following error:
  
  test main.loaddata failed with error
  CURRENT_TEST: main.loaddata
  mysqltest: At line 592: query 'LOAD DATA INFILE 'tmpp.txt' INTO TABLE t1
  CHARACTER SET ucs2
  (@b) SET a=REVERSE(@b)' failed: 1115: Unknown character set: 'ucs2'
  
  I noticed other tests are skipped because of no ucs2
  main.mix2_myisam_ucs2                    [ skipped ]  Test requires:'
  have_ucs2'
  
  Should main.loaddata be skipped if there is no ucs2
  
  How To Repeat:
  -------------
  Run make test on compiled source that doesn't have ucs2
  
  Suggested fix:
  -------------
  the failing piece of the test should be moved from mysql-test/t/loaddata.test to
  mysql-test/t/ctype_ucs.test.
    ------------------------------------------------------------
    revno: 2661.810.101
    committer: Akhila Maddukuri<akhila.x.maddukuri@oracle.com>
    branch nick: ucs-5.1
    timestamp: Wed 2012-09-26 16:38:42 +0530
    message:
      Description:
      -----------
      After compiling from source, during make test I got the following error:
      
      test main.loaddata failed with error
      CURRENT_TEST: main.loaddata
      mysqltest: At line 592: query 'LOAD DATA INFILE 'tmpp.txt' INTO TABLE t1
      CHARACTER SET ucs2
      (@b) SET a=REVERSE(@b)' failed: 1115: Unknown character set: 'ucs2'
      
      I noticed other tests are skipped because of no ucs2
      main.mix2_myisam_ucs2                    [ skipped ]  Test requires:'
      have_ucs2'
      
      Should main.loaddata be skipped if there is no ucs2
      
      How To Repeat:
      -------------
      Run make test on compiled source that doesn't have ucs2
      
      Suggested fix:
      -------------
      the failing piece of the test should be moved from mysql-test/t/loaddata.test to
      mysql-test/t/ctype_ucs.test.
------------------------------------------------------------
revno: 3992 [merge]
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: 5.5-merge
timestamp: Tue 2012-09-25 16:17:13 +0200
message:
  merge 5.1 => 5.5
    ------------------------------------------------------------
    revno: 2661.810.100
    committer: Tor Didriksen <tor.didriksen@oracle.com>
    branch nick: 5.1
    timestamp: Tue 2012-09-25 16:03:05 +0200
    message:
      Backport
      Bug #11764313 57135: CRASH IN ITEM_FUNC_CASE::FIND_ITEM WITH CASE WHEN
      Bug #11764818 57692: Crash in item_func_in::val_int() with ZEROFILL
------------------------------------------------------------
revno: 3991 [merge]
committer: Nirbhay Choubey <nirbhay.choubey@oracle.com>
branch nick: 5.5
timestamp: Tue 2012-09-25 18:45:50 +0530
message:
  Local merge from mysql-5.1.
    ------------------------------------------------------------
    revno: 2661.810.99
    committer: Nirbhay Choubey <nirbhay.choubey@oracle.com>
    branch nick: B14645196-5.1
    timestamp: Tue 2012-09-25 18:44:21 +0530
    message:
      Post fix for Bug#14645196.
------------------------------------------------------------
revno: 3990 [merge]
committer: Raghav Kapoor <raghav.kapoor@oracle.com>
branch nick: mysql-5.5-bug-13864642
timestamp: Tue 2012-09-25 18:03:57 +0530
message:
  Patch Addressing Post Push Failure of i_main.grant after
  pushing patch for Bug#13864642
    ------------------------------------------------------------
    revno: 2661.810.98
    committer: Raghav Kapoor <raghav.kapoor@oracle.com>
    branch nick: mysql-5.1-bug-13864642
    timestamp: Tue 2012-09-25 18:00:26 +0530
    message:
      Patch Addressing Post Push Failure of i_main.grant after
      pushing patch for Bug#13864642  
------------------------------------------------------------
revno: 3989 [merge]
committer: Jon Olav Hauglid <jon.hauglid@oracle.com>
branch nick: mysql-5.5-test
timestamp: Tue 2012-09-25 13:20:00 +0200
message:
  Merge from mysql-5.1 to mysql-5.5
  Text conflict in internal/mysql-test/suite/i_main/r/connect.result
  Text conflict in internal/mysql-test/suite/i_main/t/connect.test
    ------------------------------------------------------------
    revno: 2661.810.97
    committer: Jon Olav Hauglid <jon.hauglid@oracle.com>
    branch nick: mysql-5.1-test
    timestamp: Tue 2012-09-25 13:09:53 +0200
    message:
      Bug#14621627 THREAD CACHE IS UNFAIR
      
      When a client connects to a MySQL server, first a THD object is created.
      If there are any idle server threads waiting, the THD object is then added
      to a list and a server thread is woken up. This thread then retrieves the
      THD object from the list and starts executing.
      
      The problem was that this list of THD objects waiting for a server thread,
      was not working in a FIFO fashion, but rather LIFO. This is unfair, as it means
      that the last THD added (=last client connected) will be assigned a  server
      thread first.
      
      Note however that for this to be a problem, several clients must be able
      to connect and have THD objects constructed before any server threads
      manages to be woken up. This is not a very likely scenario.
      
      This patch fixes the problem by changing the THD list to work FIFO
      rather than LIFO.
      
      This is the 5.1/5.5 version of the patch.
------------------------------------------------------------
revno: 3988 [merge]
committer: Raghav Kapoor <raghav.kapoor@oracle.com>
branch nick: mysql-5.5-bug-13864642
timestamp: Tue 2012-09-25 16:05:08 +0530
message:
  BUG#13864642: DROP/CREATE USER BEHAVING ODDLY
  
  BACKGROUND:
  In certain situations DROP USER fails to remove all privileges
  belonging to user being dropped from in-memory structures.
  Current workaround is to do DROP USER twice in scenario below
  OR doing FLUSH PRIVILEGES after doing DROP USER.
  
  ANALYSIS:
  In MySQL, When we grant some stored routines privileges to a
  user they are stored in their respective hash.
  When doing DROP USER all the stored routine privilege entries
  associated with that user has to be deleted from its respective
  hash.
  The root cause for this bug is some entries from the hash
  are not getting deleted.
  The problem is that code that deletes entries from the hash tries
  to do so while iterating over it, without taking enough measures
  to address the fact that such deletion can reshuffle elements in
  the hash. If the user/administrator creates the same user again
  he is thrown an  error 'Error 1396 ER_CANNOT_USER' from MySQL.
  This prompts the user to either do FLUSH PRIVILEGES or do DROP USER
  again. This behaviour is not desirable as it is a workaround and
  does not solves the problem mentioned above.
  
  FIX:
  This bug is fixed by introducing a dynamic array to store the
  pointersto all stored routine privilege objects that either have
  to be deleted or updated. This is done in 3 steps.
  Step 1: Fetching the element from the hash and checking whether
  it is to be deleted or updated.
  Step 2: Storing the pointer to that privilege object in dynamic array.
  Step 3: Traversing the dynamic array to perform the appropriate action
  either delete or update.
  This is a much cleaner way to delete or update the privilege entries
  associated with some user and solves the problem mentioned above.
  Also the code has been refactored a bit by introducing an enum
  instead of hard coded numbers used for respective dynamic arrays
  and hashes in handle_grant_struct() function.
    ------------------------------------------------------------
    revno: 2661.810.96
    committer: Raghav Kapoor <raghav.kapoor@oracle.com>
    branch nick: mysql-5.1-bug-13864642
    timestamp: Tue 2012-09-25 15:58:46 +0530
    message:
      BUG#13864642: DROP/CREATE USER BEHAVING ODDLY
      
      BACKGROUND:
      In certain situations DROP USER fails to remove all privileges
      belonging to user being dropped from in-memory structures.
      Current workaround is to do DROP USER twice in scenario below
      OR doing FLUSH PRIVILEGES after doing DROP USER.
      
      ANALYSIS:
      In MySQL, When we grant some stored routines privileges to a
      user they are stored in their respective hash.
      When doing DROP USER all the stored routine privilege entries
      associated with that user has to be deleted from its respective
      hash.
      The root cause for this bug is some entries from the hash
      are not getting deleted.
      The problem is that code that deletes entries from the hash tries
      to do so while iterating over it, without taking enough measures
      to address the fact that such deletion can reshuffle elements in
      the hash. If the user/administrator creates the same user again
      he is thrown an  error 'Error 1396 ER_CANNOT_USER' from MySQL.
      This prompts the user to either do FLUSH PRIVILEGES or do DROP USER
      again. This behaviour is not desirable as it is a workaround and
      does not solves the problem mentioned above.
      
      FIX:
      This bug is fixed by introducing a dynamic array to store the
      pointersto all stored routine privilege objects that either have
      to be deleted or updated. This is done in 3 steps.
      Step 1: Fetching the element from the hash and checking whether
      it is to be deleted or updated.
      Step 2: Storing the pointer to that privilege object in dynamic array.
      Step 3: Traversing the dynamic array to perform the appropriate action
      either delete or update.
      This is a much cleaner way to delete or update the privilege entries
      associated with some user and solves the problem mentioned above.
      Also the code has been refactored a bit by introducing an enum
      instead of hard coded numbers used for respective dynamic arrays
      and hashes in handle_grant_struct() function.
------------------------------------------------------------
revno: 3987 [merge]
committer: Rohit Kalhans <rohit.kalhans@oracle.com>
branch nick: mysql-5.5
timestamp: Sun 2012-09-23 15:51:23 +0530
message:
  bug#14548159: upmerge from mysql-5.1 -> mysql-5.5
    ------------------------------------------------------------
    revno: 2661.810.95
    committer: Rohit Kalhans <rohit.kalhans@oracle.com>
    branch nick: mysql-5.1
    timestamp: Sun 2012-09-23 15:45:22 +0530
    message:
      BUG#14548159: Followup patch to fix some issues on PB2
------------------------------------------------------------
revno: 3986 [merge]
committer: Rohit Kalhans <rohit.kalhans@oracle.com>
branch nick: mysql-5.5
timestamp: Sat 2012-09-22 18:07:04 +0530
message:
  upmerge to bug#14548159
    ------------------------------------------------------------
    revno: 2661.810.94
    committer: Rohit Kalhans <rohit.kalhans@oracle.com>
    branch nick: mysql-5.1
    timestamp: Sat 2012-09-22 17:50:51 +0530
    message:
      BUG#14548159: NUMEROUS CASES OF INCORRECT IDENTIFIER
      QUOTING IN REPLICATION
      
      Problem: Misquoting or unquoted identifiers may lead to
      incorrect statements to be logged to the binary log.
      
      Fix: we use specialized functions to append quoted identifiers in
      the statements generated by the server.
------------------------------------------------------------
revno: 3985 [merge]
committer: Nirbhay Choubey <nirbhay.choubey@oracle.com>
branch nick: 5.5
timestamp: Fri 2012-09-21 23:31:32 +0530
message:
  Merge of fix for Bug#14645196 from mysql-5.1
    ------------------------------------------------------------
    revno: 2661.810.93
    committer: Nirbhay Choubey <nirbhay.choubey@oracle.com>
    branch nick: B14645196-5.1
    timestamp: Fri 2012-09-21 23:28:55 +0530
    message:
      Bug#14645196 MYSQL CLIENT'S USE COMMAND FAILS
      WHEN DBNAME CONTAINS MULTIPLE QUOTES
      
      MySQL client's USE command might fail if the
      database name contains multiple quotes (backticks).
      
      The reason behind the failure being the method
      that client uses to remove/escape the quotes
      while parsing the USE command's option (dbname),
      where the option parsing might terminate if a
      matching quote is found.
      
      Also, C-APIs like mysql_select_db() expect a
      normalized dbname. Now, in certain cases, client
      might fail to normalize dbname similar to that of
      server and hence mysql_select_db() would fail.
      
      Fixed by getting the normalized dbname (indirectly)
      from the server by directly sending the "USE dbanme"
      as query to the server followed by a "SELECT DATABASE()".
      The above steps are only performed if number of quotes
      in the dbname is greater than 2. Once the normalized
      dbname is received, the original db is restored.
------------------------------------------------------------
revno: 3984 [merge]
committer: Joerg Bruehe <joerg.bruehe@oracle.com>
branch nick: merge-uln-5.5
timestamp: Fri 2012-09-21 16:01:53 +0200
message:
  Merge changes for ULN RPMs into main 5.5
    ------------------------------------------------------------
    revno: 3864.1.16
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: tmp-uln-5.5
    timestamp: Tue 2012-09-18 13:38:43 +0200
    message:
      Spec file for ULN RPMs:
      Restrict the vendor check to Oracle: There is no history here
      which we have to allow for.
    ------------------------------------------------------------
    revno: 3864.1.15
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Thu 2012-07-26 21:20:15 +0200
    message:
      Spec file: Declare conflicts with the ULN RPMs.
    ------------------------------------------------------------
    revno: 3864.1.14
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Thu 2012-07-26 21:02:41 +0200
    message:
      ULN spec file: Some comment or message text alignments.
    ------------------------------------------------------------
    revno: 3864.1.13
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Thu 2012-07-26 20:41:45 +0200
    message:
      Spec file: transfer the 'runselftest' macro to a work tree.
    ------------------------------------------------------------
    revno: 3864.1.12
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Thu 2012-07-26 20:33:06 +0200
    message:
      Spec file for ULN RPMs:
      
      - Add the vendor and release series checks from our traditional spec file,
        to protect against errors during upgrade.
      
      - Do some reformatting, to reduce the differences to our traditional spec file.
    ------------------------------------------------------------
    revno: 3864.1.11
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Thu 2012-07-26 20:24:51 +0200
    message:
      Spec file polishing: Handle 'MySQL-*' and 'mysql-*', part 1
    ------------------------------------------------------------
    revno: 3864.1.10 [merge]
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Wed 2012-07-25 22:22:34 +0200
    message:
      Merge 5.5.27 into the tree for ULN RPMs.
    ------------------------------------------------------------
    revno: 3864.1.9
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Thu 2012-06-14 12:26:27 +0200
    message:
      Copyright text in the spec file for ULN RPMs.
    ------------------------------------------------------------
    revno: 3864.1.8
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Tue 2012-06-12 17:18:09 +0200
    message:
      One file still missing for ULN RPMs.
    ------------------------------------------------------------
    revno: 3864.1.7
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Tue 2012-06-12 11:01:41 +0200
    message:
      Still work on getting the "SPECIFIC-ULN/" files into the build.
      
      "INSTALL" was wrong, happens too late,
      but "CONFIGURE_FILES(... COPYONLY)" should hopefully do it.
      
      Traditional RPMs need to be checked, the above might fix their issues.
    ------------------------------------------------------------
    revno: 3864.1.6
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Mon 2012-06-11 22:07:24 +0200
    message:
      Protect traditional RPMs that "SPECIFIC-ULN/" will not break their packaging.
    ------------------------------------------------------------
    revno: 3864.1.5
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Mon 2012-06-11 20:30:04 +0200
    message:
      cmake syntax error: missed ${...}
    ------------------------------------------------------------
    revno: 3864.1.4
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Mon 2012-06-11 19:50:03 +0200
    message:
      Files in "SPECIFIC-ULN" need to be mentioned in a cmake "INSTALL".
    ------------------------------------------------------------
    revno: 3864.1.3
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Mon 2012-06-11 18:02:30 +0200
    message:
      Adape "SPECIFIC-ULN/mysql-5.5-libdir.patch" to changed comments
      in "cmake/install_layout.cmake" (pravious changeset).
    ------------------------------------------------------------
    revno: 3864.1.2
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Mon 2012-06-11 12:11:02 +0200
    message:
      More changes to supporting the build of RPMs for ULN
      from the MySQL 5.5 source tree.
      
      Contrary to the comment, the spec file for these ULN RPMs
      was missing in the previous changeset (blame ".bzrignore").
      
      This change now brings said spec file, and it adds cmake
      handling for the new files.
      
      Still for internal tool tests only, not yet ready for publishing.
    ------------------------------------------------------------
    revno: 3864.1.1
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: ULN-5.5
    timestamp: Fri 2012-06-08 19:44:06 +0200
    message:
      First version of supporting the build of RPMs for ULN
      from the MySQL 5.5 source tree.
      
      This change adds the spec file for these ULN RPMs as well as
      several patches and additional sources, to be used only in ULN RPMs.
      All these files are in a new directory "SPECIFIC-ULN/".
      
      This commit is for internal tool tests only, not yet ready for publishing.
------------------------------------------------------------
revno: 3983
committer: Inaam Rana <inaam.rana@oracle.com>
branch nick: mysql-5.5
timestamp: Thu 2012-09-20 08:44:33 -0400
message:
  Bug#14594600 ASSERT FROM DROP TABLE CONCURRENT WITH IBUF MERGES
  
  rb://1293
  approved by: Marko Makela
  
  There is race when dropping a single table tablespace where a reader
  thread can initiate a read request before the delete flag is set and
  before it is finished the deleting thread can attempt to free the
  fil_node.
  
  This patch checks the status in fil_io() to make sure that the
  tablespace is not being deleted. If it is being deleted then
  an error is returned instead of attempting IO.
------------------------------------------------------------
revno: 3982
committer: Marko M?kel? <marko.makela@oracle.com>
branch nick: mysql-5.5
timestamp: Thu 2012-09-20 12:37:25 +0300
message:
  Adjust for a nondeterministic error code on injected crash.
------------------------------------------------------------
revno: 3981 [merge]
committer: Marko M?kel? <marko.makela@oracle.com>
branch nick: mysql-5.5
timestamp: Thu 2012-09-20 12:32:45 +0300
message:
  Null merge mysql-5.1 to mysql-5.5.
    ------------------------------------------------------------
    revno: 2661.810.92
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.1
    timestamp: Thu 2012-09-20 12:31:26 +0300
    message:
      Skip innodb_bug14636528.test when UNIV_DEBUG is not enabled.
------------------------------------------------------------
revno: 3980
committer: Marko M?kel? <marko.makela@oracle.com>
branch nick: mysql-5.5
timestamp: Thu 2012-09-20 09:04:34 +0300
message:
  Do not try innodb_change_buffering_debug=2.
------------------------------------------------------------
revno: 3979 [merge]
committer: Marko M?kel? <marko.makela@oracle.com>
branch nick: mysql-5.5
timestamp: Wed 2012-09-19 22:55:26 +0300
message:
  Merge mysql-5.1 to mysql-5.5.
    ------------------------------------------------------------
    revno: 2661.810.91
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.1
    timestamp: Wed 2012-09-19 22:35:38 +0300
    message:
      Bug#14636528 INNODB CHANGE BUFFERING IS NOT ENTIRELY CRASH-SAFE
      
      Delete-mark change buffer records when resorting to a pessimistic
      delete from the change buffer B-tree. Skip delete-marked records in
      the change buffer merge and when estimating whether an operation can
      be buffered. Without this fix, we could try to apply the same buffered
      changes multiple times if the server was killed at the right moment.
      
      In MySQL 5.5 and later: ibuf_get_volume_buffered_count_func(): Ignore
      delete-marked (already processed) records.
      
      ibuf_delete_rec(): Add a crash point before optimistic delete. If the
      optimistic delete fails, flag the record processed before
      mtr_commit().
      
      ibuf_merge_or_delete_for_page(): Ignore delete-marked (already
      processed) records.
      
      Backport to 5.1: Rename btr_cur_del_unmark_for_ibuf() to
      btr_cur_set_deleted_flag_for_ibuf() and add a parameter.
      
      rb:1307 approved by Jimmy Yang
------------------------------------------------------------
revno: 3978
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: 5.5
timestamp: Tue 2012-09-18 17:32:02 +0200
message:
  Bug#14542543 FIX BUG #12694872 IN 5.5
  Bug#14530242 CRASH / MEMORY CORRUPTION IN FILESORT_BUFFER::GET_RECORD_BUFFER WITH MYISAM
  
  This is a backport of
  Bug#12694872 - VALGRIND: 18,816 BYTES IN 196 BLOCKS ARE DEFINITELY LOST
  Bug#13340270: assertion table->sort.record_pointers == __null
  Bug#14536113 CRASH IN CLOSEFRM (TABLE.CC) OR UNPACK (FIELD.H) ON SUBQUERY WITH MYISAM TABLES
  
  Also:
  removed and re-added test files with file-ids from trunk.
------------------------------------------------------------
revno: 3977 [merge]
committer: Marko M?kel? <marko.makela@oracle.com>
branch nick: mysql-5.5
timestamp: Mon 2012-09-17 15:09:08 +0300
message:
  Null merge mysql-5.1 to mysql-5.5.
    ------------------------------------------------------------
    revno: 2661.810.90 [merge]
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.1
    timestamp: Mon 2012-09-17 15:07:09 +0300
    message:
      Merge mysql-5.1 to working copy.
------------------------------------------------------------
revno: 3976 [merge]
committer: Marko M?kel? <marko.makela@oracle.com>
branch nick: mysql-5.5
timestamp: Mon 2012-09-17 15:08:34 +0300
message:
  Merge mysql-5.5 to working copy.
    ------------------------------------------------------------
    revno: 3974.1.1 [merge]
    committer: Harin Vadodaria<harin.vadodaria@oracle.com>
    branch nick: 55_bug11753779
    timestamp: Mon 2012-09-17 17:06:18 +0530
    message:
      Bug#11753779: MAX_CONNECT_ERRORS WORKS ONLY WHEN 1ST
                    INC_HOST_ERRORS() IS CALLED.
      
      Description : Merge from MySQL-5.1 to MySQL-5.5
        ------------------------------------------------------------
        revno: 2661.828.1
        committer: Harin Vadodaria<harin.vadodaria@oracle.com>
        branch nick: 51_bug11753779
        timestamp: Mon 2012-09-17 17:02:17 +0530
        message:
          Bug#11753779: MAX_CONNECT_ERRORS WORKS ONLY WHEN 1ST
                        INC_HOST_ERRORS() IS CALLED.
          
          Issue       : Sequence of calling inc_host_errors()
                        and reset_host_errors() required some
                        changes in order to maintain correct
                        connection error count.
          
          Solution    : Call to reset_host_errors() is shifted
                        to a location after which no calls to
                        inc_host_errors() are made.
------------------------------------------------------------
revno: 3975 [merge]
committer: Marko M?kel? <marko.makela@oracle.com>
branch nick: mysql-5.5
timestamp: Mon 2012-09-17 14:32:07 +0300
message:
  Merge mysql-5.1 to mysql-5.5.
    ------------------------------------------------------------
    revno: 2661.810.89
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.1
    timestamp: Mon 2012-09-17 14:21:00 +0300
    message:
      Bug#12701488 ASSERT PAGE_ZIP_VALIDATE, UNIV_ZIP_DEBUG
      
      page_zip_validate(), page_zip_validate_low(): Add a parameter for the
      B-tree index.
      
      page_zip_validate_low(): If the page contents does not match, check
      that the record link chains match. Furthermore, if dict_index_t is
      passed, check that the records match. (This reduces coverage a bit: if
      index=NULL, we will ignore differences in record contents, that is,
      the page payload.)
      
      rb:1264 approved by Inaam Rana
------------------------------------------------------------
revno: 3974 [merge]
committer: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
branch nick: Bug11750014_mysq-5.5
timestamp: Mon 2012-09-17 11:53:34 +0530
message:
  merge from 5.1 to 5.5
    ------------------------------------------------------------
    revno: 2661.810.88
    committer: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
    branch nick: Bug11750014_mysq-5.1
    timestamp: Mon 2012-09-17 11:48:02 +0530
    message:
      Bug#11750014:ASSERTION TRX_DATA->EMPTY() IN BINLOG_CLOSE_CONNECTION
      
      Problem:
      =======
      
      trx_data->empty() assert happens at `binlog_close_connection'
      
      Analysis:
      ========
      
      trx_data->empty() function checks for no pending events
      and the transaction cache to be empty.This function returns
      "true" if no pending events are present and cache is empty.
      Otherwise it returns false. `binlog_close_connection' call
      expects the above function to return true. But if the
      return value is false then assert is raised.
      
      This bug was reproducible in a diskfull scenario. In this
      disk full scenario try to do an insert operation so that
      a new pending event is created and flushing this pending
      event fails. Due to this failure the server goes down
      and invokes `binlog_close_connection' for clean closure.
      Since the pending event still remains the assert is caused.
      This assert is caused only in non transactional databases.
      
      
      Fix:
      ===
      
      In a disk full scenario when the insertion fails the
      transaction is rolled back and `binlog_end_trans`
      is called to flush the pending events. But flush operation
      fails as the disk is full and the function simply returns
      `1' without taking any action to delete the pending event.
      
      This leaves the event to remain till the closure of
      connection.  `delete pending' statement has been added to
      do the required clean up action.
------------------------------------------------------------
revno: 3973 [merge]
committer: Andrei Elkin <andrei.elkin@oracle.com>
branch nick: mysql-5.5
timestamp: Wed 2012-09-12 15:10:27 +0300
message:
  merge bug14597605 post-push to 5.5.
    ------------------------------------------------------------
    revno: 2661.810.87
    committer: Andrei Elkin <andrei.elkin@oracle.com>
    branch nick: mysql-5.1
    timestamp: Wed 2012-09-12 15:08:44 +0300
    message:
      Bug#13897025 - fixing post-push gcov compilation issue.
------------------------------------------------------------
revno: 3972 [merge]
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: 5.5-merge
timestamp: Wed 2012-09-12 08:59:44 +0200
message:
  merge 5.1 => 5.5
    ------------------------------------------------------------
    revno: 2661.810.86
    committer: Tor Didriksen <tor.didriksen@oracle.com>
    branch nick: 5.1
    timestamp: Wed 2012-09-12 08:36:12 +0200
    message:
      Backport Bug#13724099
------------------------------------------------------------
revno: 3971 [merge]
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: B13548161-5.5
timestamp: Tue 2012-09-11 17:42:22 +0300
message:
  merge
    ------------------------------------------------------------
    revno: 3969.1.1
    committer: Jon Olav Hauglid <jon.hauglid@oracle.com>
    branch nick: mysql-5.5-wl6454
    timestamp: Tue 2012-09-11 16:29:51 +0200
    message:
      WL#6454: Deprecate SHOW AUTHORS and SHOW CONTRIBUTORS
      
      Added deprecation warning for SHOW AUTHORS and
      SHOW CONTRIBUTORS.
      
      This is the 5.5 version of the patch.
------------------------------------------------------------
revno: 3970
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: B13548161-5.5
timestamp: Mon 2012-08-27 15:30:58 +0300
message:
  Bug #13548161: MYSQLD_SAFE IMPROVEMENTS FOR 5.5 ALLWAYS SETS PLUGIN_DIR
  TO DEFAULT IGNOR
  
  The test in mysqld_safe for the presence of the --plugin-dir and assigning a default
  value to it were performed before the actual argument parsing.
  This is wrong, as PLUGIN_DIR mysqld_safe code also uses MY_BASEDIR_VERSION to
  look for version specific plugin directory if present.
  Fixed by moving the PLUGIN_DIR logic after the parse_arguments() call.
------------------------------------------------------------
revno: 3969
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: B14181049-5.5
timestamp: Fri 2012-08-24 15:01:31 +0300
message:
  Bug #14181049: MYSQL_INSTALL_DB.PL CREATES EMPTY SYSTEM TABLES FOR MYSQL
  
  The script is different from what's used on unixes.
  It was not playing the table insertion script (mysql_system_tables_data.sql),
  although it was checking for the presence of this script.
  Fixed by re-enabling the lookup for this file and replaying it at bootstrap
  time. Note that on the Unixes "SELECT @@hostname" does return a fully qualified
  name, whereas on Windows it returns only a hostname.
  So by default we're filtering records in the mysql.user table until we ensure
  this is fixed.
------------------------------------------------------------
revno: 3968 [merge]
committer: Andrei Elkin <andrei.elkin@oracle.com>
branch nick: mysql-5.5
timestamp: Mon 2012-09-10 17:35:28 +0300
message:
  merge bug14597605 to 5.5.
    ------------------------------------------------------------
    revno: 2661.810.85 [merge]
    committer: Andrei Elkin <andrei.elkin@oracle.com>
    branch nick: mysql-5.1
    timestamp: Mon 2012-09-10 17:33:41 +0300
    message:
      merge bug14597605 to the main repo.
        ------------------------------------------------------------
        revno: 2661.827.1
        committer: Andrei Elkin <andrei.elkin@oracle.com>
        branch nick: 5.1-bug14597605-II_usr_var_ign_table
        timestamp: Mon 2012-09-10 17:32:04 +0300
        message:
          Bug#14597605 Issue with Null-value user on slave
          
          An "orthographic" typo in User_var::set_deferred() was made in fixes for
          bug@14275000. While editing the signature of the initial patch to remove
          the only argument, the assigned value of the argument remained in the body ...
          to be successfully compiled (!) thanks to names coincidence:
          the arg to User_var method and its member.
          
          Fixed with correcting the typo.
------------------------------------------------------------
revno: 3967 [merge]
committer: Marc Alff <marc.alff@oracle.com>
branch nick: mysql-5.5-bug14100113
timestamp: Fri 2012-09-07 19:38:04 +0200
message:
  Local merge
    ------------------------------------------------------------
    revno: 3965.1.2 [merge]
    committer: Marc Alff <marc.alff@oracle.com>
    branch nick: mysql-5.5-bug14072995
    timestamp: Fri 2012-09-07 19:36:00 +0200
    message:
      local merge
        ------------------------------------------------------------
        revno: 3965.2.1 [merge]
        committer: Akhil Mohan <akhil.mohan@oracle.com>
        branch nick: mysql-5.5
        timestamp: Fri 2012-09-07 13:03:49 +0200
        message:
          Empty version change upmerge
            ------------------------------------------------------------
            revno: 2661.810.84
            author: akhil.mohan@oracle.com
            committer: Akhil Mohan <akhil.mohan@oracle.com>
            branch nick: mysql-5.1
            timestamp: Fri 2012-09-07 10:30:53 +0200
            message:
              Raise version number after cloning 5.1.66
    ------------------------------------------------------------
    revno: 3965.1.1
    committer: Marc Alff <marc.alff@oracle.com>
    branch nick: mysql-5.5-bug14072995
    timestamp: Fri 2012-09-07 11:07:20 +0200
    message:
      Bug#14072995 - PERFSCHEMA.FUNC_FILE_IO FAILS WITH RESULT CONTENT MISMATCH OCASSIONALLY ON PB2
      
      Improved the robustness of the func_file_io tests.
------------------------------------------------------------
revno: 3966
committer: Marc Alff <marc.alff@oracle.com>
branch nick: mysql-5.5-bug14100113
timestamp: Fri 2012-09-07 11:09:22 +0200
message:
  Bug#14100113 - PERFSCHEMA.FUNC_MUTEX FAILS WITH RESULT CONTENT MISMATCH OCCASIONALLY ON PB2
  
  Improved the robustness of the func_mutex test.
------------------------------------------------------------
revno: 3965
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: 5.5
timestamp: Fri 2012-09-07 10:12:32 +0200
message:
  Bug#14593123 CONFIGURE.PL WITH CMAKE2.8 BREAKS THE BUILD
  
  Ignore --with-client-ldflags
  it's not supported by the cmake scripts anyways.
  
  Ignore --with-mysqld-ldflags
  it's only used with --with-mysqld-ldflags=-static
  and that doesn't work.
------------------------------------------------------------
revno: 3964 [merge]
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: 5.5-merge
timestamp: Wed 2012-09-05 17:43:58 +0200
message:
  merge 5.1 => 5.5
    ------------------------------------------------------------
    revno: 2661.810.83
    tags: clone-5.1.66-build
    committer: Tor Didriksen <tor.didriksen@oracle.com>
    branch nick: 5.1
    timestamp: Wed 2012-09-05 17:40:13 +0200
    message:
      Bug#13734987 MEMORY LEAK WITH I_S/SHOW AND VIEWS WITH SUBQUERY
      
      In fill_schema_table_by_open(): free item list before restoring active arena.
------------------------------------------------------------
revno: 3963
committer: Annamalai Gurusami <annamalai.gurusami@oracle.com>
branch nick: mysql-5.5
timestamp: Tue 2012-09-04 14:33:56 +0530
message:
  Bug #14500557 CRASH WHEN USING LONG INNODB INDEXES
  
  The ha_innobase table handler contained two search key buffers
  (srch_key_val1, srch_key_val2) of fixed size used to store the search
  key.  The size of these buffers where fixed at
  REC_VERSION_56_MAX_INDEX_COL_LEN + 2.  But this size is not sufficient
  to hold the search key.  Hence the following assert in
  row_sel_convert_mysql_key_to_innobase() failed.
  
  2438                 /* Storing may use at most data_len bytes of buf */
  2439
  2440                 if (UNIV_LIKELY(!is_null)) {
  2441                         ut_a(buf + data_len <= original_buf + buf_len);
  2442                         row_mysql_store_col_in_innobase_format(
  2443                                 dfield, buf,
  2444                                 FALSE, /* MySQL key value format col */
  2445                                 key_ptr + data_offset, data_len,
  2446                                 dict_table_is_comp(index->table));
  2447                         buf += data_len;
  2448                 }
  
  The buffer size is now calculated with the formula
  MAX_KEY_LENGTH + MAX_REF_PARTS*2.  This properly takes into account
  the extra bytes needed to store the length for each column.  An index
  can contain a maximum of MAX_REF_PARTS columns in it, and for each
  column 2 bytes are needed to store length.  
  
  rb://1238 approved by Marko and Vasil Dimov.
------------------------------------------------------------
revno: 3962 [merge]
committer: Annamalai Gurusami <annamalai.gurusami@oracle.com>
branch nick: mysql-5.5
timestamp: Mon 2012-09-03 11:57:25 +0530
message:
  Merge from mysql-5.1 to mysql-5.5.
    ------------------------------------------------------------
    revno: 2661.810.82
    committer: Annamalai Gurusami <annamalai.gurusami@oracle.com>
    branch nick: mysql-5.1
    timestamp: Mon 2012-09-03 11:33:05 +0530
    message:
      The test case result file must not depend on the page size used.
      So removing the maximum row size from the error message and
      replacing it with text.
------------------------------------------------------------
revno: 3961 [merge]
committer: Annamalai Gurusami <annamalai.gurusami@oracle.com>
branch nick: mysql-5.5
timestamp: Sat 2012-09-01 11:27:53 +0530
message:
  Merge from mysql-5.1 to mysql-5.5.
    ------------------------------------------------------------
    revno: 2661.810.81
    committer: Annamalai Gurusami <annamalai.gurusami@oracle.com>
    branch nick: mysql-5.1
    timestamp: Fri 2012-08-31 15:42:00 +0530
    message:
      Bug #13453036 ERROR CODE 1118: ROW SIZE TOO LARGE - EVEN
      THOUGH IT IS NOT.
      
      The following error message is misleading because it claims
      that the BLOB space is not counted.  
      
      "ERROR 1118 (42000): Row size too large. The maximum row size for
      the used table type, not counting BLOBs, is 8126. You have to
      change some columns to TEXT or BLOBs"
      
      When the ROW_FORMAT=compact or ROW_FORMAT=REDUNDANT is used,
      the BLOB prefix is stored inline along with the row.  So
      the above error message is changed as follows depending on
      the row format used:
      
      For ROW_FORMAT=COMPRESSED or ROW_FORMAT=DYNAMIC, the error
      message is as follows:
      
      "ERROR 42000: Row size too large (> 8126). Changing some
      columns to TEXT or BLOB may help. In current row format,
      BLOB prefix of 0 bytes is stored inline."
      
      For ROW_FORMAT=COMPACT or ROW_FORMAT=REDUNDANT, the error
      message is as follows:
      
      "ERROR 42000: Row size too large (> 8126). Changing some
      columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or
      ROW_FORMAT=COMPRESSED may help. In current row
      format, BLOB prefix of 768 bytes is stored inline."
      
      rb://1252 approved by Marko Makela
------------------------------------------------------------
revno: 3960 [merge]
committer: Marko M?kel? <marko.makela@oracle.com>
branch nick: mysql-5.5
timestamp: Fri 2012-08-31 09:53:13 +0300
message:
  Merge mysql-5.1 to mysql-5.5.
    ------------------------------------------------------------
    revno: 2661.810.80
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.1
    timestamp: Fri 2012-08-31 09:51:27 +0300
    message:
      Add forgotten have_debug.inc to a test.
------------------------------------------------------------
revno: 3959 [merge]
committer: Marko M?kel? <marko.makela@oracle.com>
branch nick: mysql-5.5
timestamp: Thu 2012-08-30 22:01:23 +0300
message:
  Merge mysql-5.1 to mysql-5.5.
    ------------------------------------------------------------
    revno: 2661.810.79
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.1
    timestamp: Thu 2012-08-30 21:53:41 +0300
    message:
      Bug#14554000 CRASH IN PAGE_REC_GET_NTH_CONST(NTH=0) DURING COMPRESSED
      PAGE SPLIT
      
      page_rec_get_nth_const(): Map nth==0 to the page infimum.
      
      btr_compress(adjust=TRUE): Add a debug assertion for nth>0. The cursor
      should never be positioned on the page infimum.
      
      btr_index_page_validate(): Add test instrumentation for checking the
      return values of page_rec_get_nth_const() during CHECK TABLE, and for
      checking that the page directory slot 0 always contains only one
      record, the predefined page infimum record.
      
      page_cur_delete_rec(), page_delete_rec_list_end(): Add debug
      assertions guarding against accessing the page slot 0.
      
      page_copy_rec_list_start(): Clarify a comment about ret_pos==0.
      
      rb:1248 approved by Jimmy Yang
    ------------------------------------------------------------
    revno: 2661.810.78
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.1
    timestamp: Thu 2012-08-30 21:49:24 +0300
    message:
      Bug#14547952: DEBUG BUILD FAILS ASSERTION IN RECORDS_IN_RANGE()
      
      ha_innodb::records_in_range(): Remove a debug assertion
      that prohibits an open range (full table).
      
      The patch by Jorgen Loland only removed the assertion from the
      built-in InnoDB, not from the InnoDB Plugin.
------------------------------------------------------------
revno: 3958 [merge]
committer: Jorgen Loland <jorgen.loland@oracle.com>
branch nick: mysql-5.5
timestamp: Thu 2012-08-30 07:56:52 +0200
message:
  Null-merge from 5.1
    ------------------------------------------------------------
    revno: 2661.810.77
    committer: Jorgen Loland <jorgen.loland@oracle.com>
    branch nick: mysql-5.1
    timestamp: Tue 2012-08-28 14:51:01 +0200
    message:
      Bug#14547952: DEBUG BUILD FAILS ASSERTION IN RECORDS_IN_RANGE()
      
      ha_innobase::records_in_range(): Remove a debug assertion
      that prohibits an open range (full table).
      This assertion catches unnecessary calls to this method,
      but such calls are not harming correctness.
------------------------------------------------------------
revno: 3957
committer: Gopal Shankar <gopal.shankar@oracle.com>
branch nick: sf_mysql-5.5
timestamp: Wed 2012-08-29 16:22:02 +0530
message:
  Bug#14364558 ASSERT `TABLE_LIST->PRELOCKING_PLACEHOLDER==FALSE'
               FAILED IN CHECK_LOCK_AND_ST
  
  Updating test script to ignore the error text message
  and match only the error code.
------------------------------------------------------------
revno: 3956 [merge]
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: mysql-5.5-commercial
timestamp: Tue 2012-08-28 16:29:46 +0200
message:
  merge 5.5.28-release => 5.5
    ------------------------------------------------------------
    revno: 3952.1.1
    tags: mysql-5.5.28
    committer: Tor Didriksen <tor.didriksen@oracle.com>
    branch nick: release
    timestamp: Tue 2012-08-28 16:13:03 +0200
    message:
      Bug#14549809 LINKING PROBLEM IN 5.5.28 BUILDS WITH THREADPOOL PLUGIN
      
      The use of Thread_iterator did not work on windows (linking problems).
      Solution: Change the interface between the thread_pool and the server
      to only use simple free functions.
      
      This patch is for 5.5 only (mimicks similar solution in 5.6)
------------------------------------------------------------
revno: 3955
committer: Gopal Shankar <gopal.shankar@oracle.com>
branch nick: sf_mysql-5.5
timestamp: Mon 2012-08-27 16:21:20 +0530
message:
  Bug#14364558
  ASSERT `TABLE_LIST->PRELOCKING_PLACEHOLDER == FALSE'
         FAILED IN CHECK_LOCK_AND_ST
  
  Moving the test case from i_main.lock.test to
  i_main.lock_debug_sync.test. We cannot use lock.test
  as the new test needs to run with DEBUG_SYNC.
------------------------------------------------------------
revno: 3954
committer: Aditya A <aditya.a@oracle.com>
branch nick: mysql-5.5
timestamp: Mon 2012-08-27 15:42:11 +0530
message:
  Bug#14145950 AUTO_INCREMENT ON DOUBLE WILL FAIL ON WINDOWS
  
  Backport from mysql-5.6 the fix
  (revision-id sunny.bains@oracle.com-20120315045831-20rgfa4cozxmz7kz)
  
    Bug#13839886 - CRASH IN INNOBASE_NEXT_AUTOINC
    
    The assertion introduce in the fix for Bug#13817703
    is too strong, a negative  number can be greater
    than the column max value, when the column value is
    a negative number.
    
    rb://978 Approved by Jimmy Yang.
  
  rb:1236 approved by Marko Makela
------------------------------------------------------------
revno: 3953
author: hery.ramilison@oracle.com
committer: Hery Ramilison <hery.ramilison@oracle.com>
branch nick: mysql-5.5
timestamp: Fri 2012-08-24 19:49:47 +0200
message:
  Raise version number after cloning 5.5.28