Home | Back
------------------------------------------------------------
revno: 3286 [merge]
committer: Joerg Bruehe <joerg.bruehe@oracle.com>
branch nick: clone-5.5
timestamp: Fri 2012-03-02 13:23:52 +0100
message:
  Further upmerge the yaSSL upgrade (to 2.2.0) from MySQL 5.1 to 5.5.
  
  Also, take a syntax fix (C++ style comment in C file) in client/mysqldump.c.
    ------------------------------------------------------------
    revno: 2661.768.65 [merge]
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: clone-5.1
    timestamp: Fri 2012-03-02 13:18:12 +0100
    message:
      Upmerge the yaSSL upgrade (to 2.2.0) from MySQL 5.0 to 5.1.
        ------------------------------------------------------------
        revno: 1810.4000.45
        committer: Joerg Bruehe <joerg.bruehe@oracle.com>
        branch nick: clone-5.0
        timestamp: Fri 2012-03-02 13:12:07 +0100
        message:
          Further upgrade the yaSSL library to version 2.2.0
          to pick up some new security fixes that are in it.
          
          Patch provided by Georgi Kodinov.
    ------------------------------------------------------------
    revno: 2661.768.64
    committer: Karen Langford <karen.langford@oracle.com>
    branch nick: mysql-5.1.62-release
    timestamp: Tue 2012-02-28 17:20:30 +0100
    message:
      AIX builds fail for comments using //
------------------------------------------------------------
revno: 3285
committer: Hery Ramilison <hery.ramilison@oracle.com>
branch nick: mysql-5.5.22-release
timestamp: Thu 2012-03-01 01:05:05 +0100
message:
  fix for the windows platform for bug: 13788143
------------------------------------------------------------
revno: 3284 [merge]
committer: Joerg Bruehe <joerg.bruehe@oracle.com>
branch nick: clone-5.5
timestamp: Tue 2012-02-28 12:50:23 +0100
message:
  Upmerge the copyright year change, from 5.1 to 5.5.
    ------------------------------------------------------------
    revno: 2661.768.63 [merge]
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: clone-5.1
    timestamp: Tue 2012-02-28 12:44:21 +0100
    message:
      Upmerge the copyright year change, from 5.0 to 5.1.
        ------------------------------------------------------------
        revno: 1810.4000.44
        committer: Joerg Bruehe <joerg.bruehe@oracle.com>
        branch nick: clone-5.0
        timestamp: Tue 2012-02-28 12:42:02 +0100
        message:
          The current year is 2012, and nobody noticed ...
          Update the year in the copyright notice, file "README".
------------------------------------------------------------
revno: 3283
tags: clone-5.5.22-build
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: merge-5.5-security
timestamp: Sun 2012-02-19 09:33:55 +0200
message:
  addendum to the --builtin-innodb depreacation bug. Fixing test suite output.
------------------------------------------------------------
revno: 3282
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: merge-5.5-security
timestamp: Sat 2012-02-18 11:10:42 +0200
message:
  Addendum to BUG#13586262 : fixed a wrong test suite output
------------------------------------------------------------
revno: 3281 [merge]
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: merge-5.5-security
timestamp: Sat 2012-02-18 11:03:11 +0200
message:
  empty weave merge mysql-5.1-security->mysql-5.5-security
    ------------------------------------------------------------
    revno: 2661.768.62 [merge]
    tags: clone-5.1.62-build
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: merge-5.1-security
    timestamp: Sat 2012-02-18 10:58:19 +0200
    message:
      merge mysql-5.1->mysql-5.1-security
------------------------------------------------------------
revno: 3280 [merge]
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: merge-5.5-security
timestamp: Sat 2012-02-18 10:58:31 +0200
message:
  merge mysql-5.5->mysql-5.5-security
    ------------------------------------------------------------
    revno: 3097.126.2 [merge]
    committer: kevin.lewis@oracle.com
    branch nick: mysql-5.5
    timestamp: Fri 2012-02-17 08:28:28 -0600
    message:
      Merge with mysql-5.5
        ------------------------------------------------------------
        revno: 3097.116.140
        committer: Vasil Dimov <vasil.dimov@oracle.com>
        branch nick: mysql-5.5
        timestamp: Fri 2012-02-17 15:09:47 +0200
        message:
          Print a deprecation warning when ignore-builtin-innodb is used
          
          This is part of
          Bug#13586262 INNODB - HIBISCUS: ISSUE DEPRECATION WARNINGS FOR VARIABLES
          
          Reviewed by: Mark Alff
        ------------------------------------------------------------
        revno: 3097.116.139 [merge]
        committer: Marko M?kel? <marko.makela@oracle.com>
        branch nick: mysql-5.5
        timestamp: Fri 2012-02-17 11:52:51 +0200
        message:
          Merge mysql-5.1 to mysql-5.5.
            ------------------------------------------------------------
            revno: 2661.800.21
            committer: Marko M?kel? <marko.makela@oracle.com>
            branch nick: mysql-5.1
            timestamp: Fri 2012-02-17 11:42:04 +0200
            message:
              Bug#13721257 RACE CONDITION IN UPDATES OR INSERTS OF WIDE RECORDS
              
              This bug was originally filed and fixed as Bug#12612184. The original
              fix was buggy, and it was patched by Bug#12704861. Also that patch was
              buggy (potentially breaking crash recovery), and both fixes were
              reverted.
              
              This fix was not ported to the built-in InnoDB of MySQL 5.1, because
              the function signatures of many core functions are different from
              InnoDB Plugin and later versions. The block allocation routines and
              their callers would have to changed so that they handle block
              descriptors instead of page frames.
              
              When a record is updated so that its size grows, non-updated columns
              can be selected for external (off-page) storage. The bug is that the
              initially inserted updated record contains an all-zero BLOB pointer to
              the field that was not updated. Only after the BLOB pages have been
              allocated and written, the valid pointer can be written to the record.
              
              Between the release of the page latch in mtr_commit(mtr) after
              btr_cur_pessimistic_update() and the re-latching of the page in
              btr_pcur_restore_position(), other threads can see the invalid BLOB
              pointer consisting of 20 zero bytes. Moreover, if the system crashes
              at this point, the situation could persist after crash recovery, and
              the contents of the non-updated column would be permanently lost.
              
              The problem is amplified by the ROW_FORMAT=DYNAMIC and
              ROW_FORMAT=COMPRESSED that were introduced in
              innodb_file_format=barracuda in InnoDB Plugin, but the bug does exist
              in all InnoDB versions.
              
              The fix is as follows. After a pessimistic B-tree operation that needs
              to write out off-page columns, allocate the pages for these columns in
              the mini-transaction that performed the B-tree operation (btr_mtr),
              but write the pages in a separate mini-transaction (blob_mtr). Do
              mtr_commit(blob_mtr) before mtr_commit(btr_mtr). A quirk: Do not reuse
              pages that were previously freed in btr_mtr. Only write the off-page
              columns to 'fresh' pages.
              
              In this way, crash recovery will see redo log entries for blob_mtr
              before any redo log entry for btr_mtr. It will apply the BLOB page
              writes to pages that were marked free at that point. If crash recovery
              fails to see all of the btr_mtr redo log, there will be some
              unreachable BLOB data in free pages, but the B-tree will be in a
              consistent state.
              
              btr_page_alloc_low(): Renamed from btr_page_alloc(). Add the parameter
              init_mtr. Return an allocated block, or NULL. If init_mtr!=mtr but
              the page was already X-latched in mtr, do not initialize the page.
              
              btr_page_alloc(): Wrapper for btr_page_alloc_for_ibuf() and
              btr_page_alloc_low().
              
              btr_page_free(): Add a debug assertion that the page was a B-tree page.
              
              btr_lift_page_up(): Return the father block.
              
              btr_compress(), btr_cur_compress_if_useful(): Add the parameter ibool
              adjust, for adjusting the cursor position.
              
              btr_cur_pessimistic_update(): Preserve the cursor position when
              big_rec will be written and the new flag BTR_KEEP_POS_FLAG is defined.
              Remove a duplicate rec_get_offsets() call. Keep the X-latch on
              index->lock when big_rec is needed.
              
              btr_store_big_rec_extern_fields(): Replace update_inplace with
              an operation code, and local_mtr with btr_mtr. When not doing a
              fresh insert and btr_mtr has freed pages, put aside any pages that
              were previously X-latched in btr_mtr, and free the pages after
              writing out all data. The data must be written to 'fresh' pages,
              because btr_mtr will be committed and written to the redo log after
              the BLOB writes have been written to the redo log.
              
              btr_blob_op_is_update(): Check if an operation passed to
              btr_store_big_rec_extern_fields() is an update or insert-by-update.
              
              fseg_alloc_free_page_low(), fsp_alloc_free_page(),
              fseg_alloc_free_extent(), fseg_alloc_free_page_general(): Add the
              parameter init_mtr. Return an allocated block, or NULL. If
              init_mtr!=mtr but the page was already X-latched in mtr, do not
              initialize the page.
              
              xdes_get_descriptor_with_space_hdr(): Assert that the file space
              header is being X-latched.
              
              fsp_alloc_from_free_frag(): Refactored from fsp_alloc_free_page().
              
              fsp_page_create(): New function, for allocating, X-latching and
              potentially initializing a page. If init_mtr!=mtr but the page was
              already X-latched in mtr, do not initialize the page.
              
              fsp_free_page(): Add ut_ad(0) to the error outcomes.
              
              fsp_free_page(), fseg_free_page_low(): Increment mtr->n_freed_pages.
              
              fsp_alloc_seg_inode_page(), fseg_create_general(): Assert that the
              page was not previously X-latched in the mini-transaction. A file
              segment or inode page should never be allocated in the middle of an
              mini-transaction that frees pages, such as btr_cur_pessimistic_delete().
              
              fseg_alloc_free_page_low(): If the hinted page was allocated, skip the
              check if the tablespace should be extended. Return NULL instead of
              FIL_NULL on failure. Remove the flag frag_page_allocated. Instead,
              return directly, because the page would already have been initialized.
              
              fseg_find_free_frag_page_slot() would return ULINT_UNDEFINED on error,
              not FIL_NULL. Correct a bogus assertion.
              
              fseg_alloc_free_page(): Redefine as a wrapper macro around
              fseg_alloc_free_page_general().
              
              buf_block_buf_fix_inc(): Move the definition from the buf0buf.ic to
              buf0buf.h, so that it can be called from other modules.
              
              mtr_t: Add n_freed_pages (number of pages that have been freed).
              
              page_rec_get_nth_const(), page_rec_get_nth(): The inverse function of
              page_rec_get_n_recs_before(), get the nth record of the record
              list. This is faster than iterating the linked list. Refactored from
              page_get_middle_rec().
              
              trx_undo_rec_copy(): Add a debug assertion for the length.
              
              trx_undo_add_page(): Return a block descriptor or NULL instead of a
              page number or FIL_NULL.
              
              trx_undo_report_row_operation(): Add debug assertions.
              
              trx_sys_create_doublewrite_buf(): Assert that each page was not
              previously X-latched.
              
              page_cur_insert_rec_zip_reorg(): Make use of page_rec_get_nth().
              
              row_ins_clust_index_entry_by_modify(): Pass BTR_KEEP_POS_FLAG, so that
              the repositioning of the cursor can be avoided.
              
              row_ins_index_entry_low(): Add DEBUG_SYNC points before and after
              writing off-page columns. If inserting by updating a delete-marked
              record, do not reposition the cursor or commit the mini-transaction
              before writing the off-page columns.
              
              row_build(): Tighten a debug assertion about null BLOB pointers.
              
              row_upd_clust_rec(): Add DEBUG_SYNC points before and after writing
              off-page columns. Do not reposition the cursor or commit the
              mini-transaction before writing the off-page columns.
              
              rb:939 approved by Jimmy Yang
    ------------------------------------------------------------
    revno: 3097.126.1
    committer: kevin.lewis@oracle.com
    branch nick: mysql-5.5
    timestamp: Thu 2012-02-16 12:13:08 -0600
    message:
      Bug#64160, Oracle Bug#13698765
      
      The problem was introduced in 5.5.20 by Bug 13116225.  It tried to
      protect against downgrading from a version 5.6.4 database that was
      created with a page size other than 16k.  Version 5.6.4 supports
      page sizes 4k and 8k and stamps that page size into the header page
      of each tablespace file.  Version 5.5.20 attempts to read that page
      size in the file header.
      
      But it turns out that only the first system tablespace file has a
      reliable flags field in the header. So only ibdata1 can be or needs
      to be tested for another page size. Extra system tablespace files
      like ibdata2, ibdata3, etc do not and should not be tested since the
      flags field is unreliable.
------------------------------------------------------------
revno: 3279 [merge]
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: merge-5.5-security
timestamp: Fri 2012-02-17 11:57:45 +0200
message:
  merge mysql-5.1-security->mysql-5.5-security
    ------------------------------------------------------------
    revno: 2661.768.61 [merge]
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: merge-5.1-security
    timestamp: Fri 2012-02-17 11:55:06 +0200
    message:
      merge mysql-5.0-security->mysql-5.1-security
        ------------------------------------------------------------
        revno: 1810.4000.43 [merge]
        tags: clone-5.0.96-build
        committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
        branch nick: merge-5.0-security
        timestamp: Fri 2012-02-17 11:51:14 +0200
        message:
          merged mysql-5.0->mysql-5.0-security
    ------------------------------------------------------------
    revno: 2661.768.60 [merge]
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: merge-5.1-security
    timestamp: Fri 2012-02-17 11:52:41 +0200
    message:
      merge mysql-5.1->mysql-5.1-security
------------------------------------------------------------
revno: 3278 [merge]
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: merge-5.5-security
timestamp: Fri 2012-02-17 11:55:36 +0200
message:
  merged mysql-5.5->mysql-5.5-security
    ------------------------------------------------------------
    revno: 3097.116.138
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.5
    timestamp: Fri 2012-02-17 09:18:53 +0200
    message:
      Put back a fix that was reverted when reverting the buggy Bug#12612184 fix in
      revision-id inaam.rana@oracle.com-20110930110219-vnpaqghj9hm0grds
      (revno 3559).
    ------------------------------------------------------------
    revno: 3097.116.137 [merge]
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-02-16 15:56:10 +0200
    message:
      Null merge a fix from mysql-5.1.
        ------------------------------------------------------------
        revno: 2661.800.20
        committer: Marko M?kel? <marko.makela@oracle.com>
        branch nick: mysql-5.1
        timestamp: Thu 2012-02-16 15:54:16 +0200
        message:
          Fix link error on Windows.
          error LNK2001: unresolved external symbol _debug_sync_C_callback_ptr
    ------------------------------------------------------------
    revno: 3097.116.136 [merge]
    committer: Kent Boortz <kent.boortz@oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-02-16 12:06:34 +0100
    message:
      Merge
        ------------------------------------------------------------
        revno: 2661.800.19 [merge]
        committer: Kent Boortz <kent.boortz@oracle.com>
        branch nick: mysql-5.1
        timestamp: Thu 2012-02-16 12:02:53 +0100
        message:
          Merge
    ------------------------------------------------------------
    revno: 3097.116.135 [merge]
    committer: Kent Boortz <kent.boortz@oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-02-16 12:04:44 +0100
    message:
      Merge
        ------------------------------------------------------------
        revno: 3097.125.3 [merge]
        committer: Marko M?kel? <marko.makela@oracle.com>
        branch nick: mysql-5.5
        timestamp: Thu 2012-02-16 12:28:49 +0200
        message:
          Merge mysql-5.1 to mysql-5.5.
            ------------------------------------------------------------
            revno: 2661.804.4
            committer: Marko M?kel? <marko.makela@oracle.com>
            branch nick: mysql-5.1
            timestamp: Thu 2012-02-16 12:24:11 +0200
            message:
              Add instrumentation for Bug#13721257 RACE CONDITION IN UPDATES OR INSERTS
              OF WIDE RECORDS
              
              row_ins_index_entry_low(), row_upd_clust_rec(): Make a redo log
              checkpoint if a DEBUG flag is set. Add DEBUG_SYNC around
              btr_store_big_rec_extern_fields().
              
              rb:946 approved by Jimmy Yang
            ------------------------------------------------------------
            revno: 2661.804.3
            committer: Marko M?kel? <marko.makela@oracle.com>
            branch nick: mysql-5.1
            timestamp: Thu 2012-02-16 12:20:41 +0200
            message:
              Correct a few copyright messages.
    ------------------------------------------------------------
    revno: 3097.116.134 [merge]
    committer: MySQL Build Team<mysql-build@oss.oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-02-16 11:44:10 +0100
    message:
      Updated/added copyright headers
        ------------------------------------------------------------
        revno: 2661.800.18
        committer: MySQL Build Team<mysql-build@oss.oracle.com>
        branch nick: mysql-5.1
        timestamp: Thu 2012-02-16 11:35:30 +0100
        message:
          Updated/added copyright headers
    ------------------------------------------------------------
    revno: 3097.116.133 [merge]
    committer: Kent Boortz <kent.boortz@oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-02-16 11:43:05 +0100
    message:
      Merge
        ------------------------------------------------------------
        revno: 2661.800.17 [merge]
        committer: Kent Boortz <kent.boortz@oracle.com>
        branch nick: mysql-5.1
        timestamp: Thu 2012-02-16 11:17:04 +0100
        message:
          Merge
    ------------------------------------------------------------
    revno: 3097.116.132 [merge]
    committer: Kent Boortz <kent.boortz@oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-02-16 11:19:19 +0100
    message:
      Merge
        ------------------------------------------------------------
        revno: 3097.125.2 [merge]
        committer: Marko M?kel? <marko.makela@oracle.com>
        branch nick: mysql-5.5
        timestamp: Wed 2012-02-15 16:37:06 +0200
        message:
          Merge mysql-5.1 to mysql-5.5.
            ------------------------------------------------------------
            revno: 2661.804.2
            committer: Marko M?kel? <marko.makela@oracle.com>
            branch nick: mysql-5.1
            timestamp: Wed 2012-02-15 16:28:00 +0200
            message:
              Remove a race condition in innodb_bug53756.test.
              Before killing the server, tell mysql-test-run that it is to be expected.
              
              Discussed with Bjorn Munch on IM.
        ------------------------------------------------------------
        revno: 3097.125.1 [merge]
        committer: Marko M?kel? <marko.makela@oracle.com>
        branch nick: mysql-5.5
        timestamp: Wed 2012-02-15 15:55:31 +0200
        message:
          Merge mysql-5.1 to mysql-5.5.
            ------------------------------------------------------------
            revno: 2661.804.1
            committer: Marko M?kel? <marko.makela@oracle.com>
            branch nick: mysql-5.1
            timestamp: Wed 2012-02-15 15:53:29 +0200
            message:
              store_create_info(): Fix a compiler warning about unused variable.
    ------------------------------------------------------------
    revno: 3097.116.131 [merge]
    committer: MySQL Build Team<mysql-build@oss.oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-02-16 10:48:16 +0100
    message:
      Updated/added copyright headers
        ------------------------------------------------------------
        revno: 2661.800.16 [merge]
        committer: Kent Boortz <kent.boortz@oracle.com>
        branch nick: mysql-5.1
        timestamp: Wed 2012-02-15 17:21:38 +0100
        message:
          Updated/added copyright headers
            ------------------------------------------------------------
            revno: 1810.4004.10
            committer: MySQL Build Team<mysql-build@oss.oracle.com>
            branch nick: mysql-5.0
            timestamp: Wed 2012-02-15 17:13:47 +0100
            message:
              Updated/added copyright headers
    ------------------------------------------------------------
    revno: 3097.116.130
    committer: Rohit Kalhans <rohit.kalhans@oracle.com>
    branch nick: mysql-5.5_bug11758263
    timestamp: Mon 2012-02-13 15:37:50 +0530
    message:
      fixing test failure on pb2.
    ------------------------------------------------------------
    revno: 3097.116.129
    committer: Rohit Kalhans <rohit.kalhans@oracle.com>
    branch nick: mysql-5.5_bug11758263
    timestamp: Mon 2012-02-13 14:12:13 +0530
    message:
      BUG#11758263: Modification of indentation in the added code.
                    Fixed a typo in the comment.
                    Fixing test cases which were previouslyno throwing  due
                    disable warnings macro.
    ------------------------------------------------------------
    revno: 3097.116.128 [merge]
    committer: Sunny Bains <Sunny.Bains@Oracle.Com>
    branch nick: 5.5
    timestamp: Fri 2012-02-10 14:11:49 +1100
    message:
      Merge from mysql-5.1.
        ------------------------------------------------------------
        revno: 2661.800.15
        committer: Sunny Bains <Sunny.Bains@Oracle.Com>
        branch nick: 5.1
        timestamp: Fri 2012-02-10 14:09:12 +1100
        message:
          BUG#12739098 - 62401: ASSERTION TRX->ERROR_STATE == DB_SUCCESS, QUE0QUE.C LINE 1264 ON TRUNCATE
                      
          During FIC error handling the trx->error_state was not being set to DB_SUCCESS
          after failure, before attempting the next DDL SQL operation. This reset to
          DB_SUCCESS is somewhat of a requirement though not explicitly stated anywhere.
          The fix is to reset it to DB_SUCCESS in row0merge.cc if row_merge_rename_indexes
          or row_merge_drop_index functions fail, also reset to DB_SUCCESS at trx commit.
                     
          rb://935 Approved by Jimmy Yang.
    ------------------------------------------------------------
    revno: 3097.116.127 [merge]
    committer: Sunny Bains <Sunny.Bains@Oracle.Com>
    branch nick: 5.5
    timestamp: Fri 2012-02-10 13:04:10 +1100
    message:
      Merge from mysql-5.1-innodb.
        ------------------------------------------------------------
        revno: 2661.523.386
        committer: Sunny Bains <Sunny.Bains@Oracle.Com>
        branch nick: 5.1
        timestamp: Fri 2012-02-10 12:47:42 +1100
        message:
          BUG#12739098 - 62401: ASSERTION TRX->ERROR_STATE == DB_SUCCESS, QUE0QUE.C LINE 1264 ON TRUNCATE
          
          During FIC error handling the trx->error_state was not being set to DB_SUCCESS
          after failure, before attempting the next DDL SQL operation. This reset to
          DB_SUCCESS is somewhat of a requirement though not explicitly stated anywhere.
          The fix is to reset it to DB_SUCCESS in row0merge.cc if row_merge_rename_indexes
          or row_merge_drop_index functions fail, also reset to DB_SUCCESS at trx commit.
          
          rb://935 Approved by Jimmy Yang.
    ------------------------------------------------------------
    revno: 3097.116.126
    committer: Rohit Kalhans <rohit.kalhans@oracle.com>
    branch nick: mysql-5.5_b11758263
    timestamp: Fri 2012-02-10 01:43:47 +0530
    message:
      Followup  patch for bug#11758263.
    ------------------------------------------------------------
    revno: 3097.116.125
    committer: Rohit Kalhans <rohit.kalhans@oracle.com>
    branch nick: mysql-5.5_b11758263
    timestamp: Thu 2012-02-09 23:28:33 +0530
    message:
      BUG#11758263 50440: MARK UNORDERED UPDATE WITH AUTOINC UNSAFE
             
      Problem: Statements that write to tables with auto_increment columns
               based on the selection from another table, may lead to master
               and slave going out of sync, as the order in which the rows
               are retrieved from the table may differ on master and slave.
                  
      Solution: We mark writing to a table with auto_increment table
                based on the rows selected from another table as unsafe. This
                will cause the execution of such statements to throw a warning
                and forces the statement to be logged in ROW if the logging
                format is mixed.
                  
      Changes:
             1. All the statements that writes to a table with auto_increment
                column(s) based on the rows fetched from another table, will now
                be unsafe.
             2. CREATE TABLE with SELECT will now be unsafe.
    ------------------------------------------------------------
    revno: 3097.116.124
    committer: Rohit Kalhans <rohit.kalhans@oracle.com>
    branch nick: mysql_5.5_rollback
    timestamp: Wed 2012-02-08 12:10:55 +0530
    message:
      Backout the patch for bug#11758263.
    ------------------------------------------------------------
    revno: 3097.116.123
    committer: Rohit Kalhans <rohit.kalhans@oracle.com>
    branch nick: mysql-5.5_bug11758263
    timestamp: Wed 2012-02-08 00:33:08 +0530
    message:
      BUG#11758263 50440: MARK UNORDERED UPDATE WITH AUTOINC UNSAFE
            
            Problem: Statements that write to tables with auto_increment columns
            based on the selection from another table, may lead to master
            and slave going out of sync, as the order in which the rows
            are retrived from the table may differ on master and slave.
            
            Solution: We mark writing to a table with auto_increment table
            as unsafe. This will cause the execution of such statements to
            throw a warning and forces the statement to be logged in ROW if
            the logging format is mixed.
            
            Changes:
            1. All the statements that writes to a table with auto_increment
            column(s) based on the rows fetched from another table, will now
            be unsafe.
            2. CREATE TABLE with SELECT will now be unsafe.
------------------------------------------------------------
revno: 3277 [merge]
committer: Joerg Bruehe <joerg.bruehe@oracle.com>
branch nick: security-5.5
timestamp: Thu 2012-02-16 16:03:43 +0100
message:
  Upmerge the AIX compile fix into 5.5.
    ------------------------------------------------------------
    revno: 2661.768.59 [merge]
    committer: Joerg Bruehe <joerg.bruehe@oracle.com>
    branch nick: security-5.1
    timestamp: Thu 2012-02-16 15:55:53 +0100
    message:
      Merge compile fix for AIX into delivery tree.
        ------------------------------------------------------------
        revno: 2661.803.1
        committer: Joerg Bruehe <joerg.bruehe@oracle.com>
        branch nick: bzero-5.1
        timestamp: Thu 2012-01-19 17:05:47 +0100
        message:
          Compile fix needed for AIX,
          to work around the lack of a bzero() prototype.
------------------------------------------------------------
revno: 3276
committer: Tor Didriksen <tor.didriksen@oracle.com>
branch nick: 5.5-security
timestamp: Tue 2012-02-14 08:11:28 +0100
message:
  Bug#13633383 63183: SMALL SORT_BUFFER_SIZE CRASH IN MERGE_BUFFERS
  
  This patch is a backport of some of the cleanups/refactorings that were done
  as part of WL#1393 Optimizing filesort with small limit.
------------------------------------------------------------
revno: 3275 [merge]
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: B13706828-5.5-security
timestamp: Mon 2012-02-13 14:44:54 +0200
message:
  merge mysql-5.1-security->mysql-5.5-security
    ------------------------------------------------------------
    revno: 2661.768.58 [merge]
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: B13706828-5.1-security
    timestamp: Mon 2012-02-13 13:40:12 +0200
    message:
      merge from 5.0-security
        ------------------------------------------------------------
        revno: 1810.4000.42
        committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
        branch nick: B13706828-5.0-security
        timestamp: Fri 2012-02-10 16:33:27 +0200
        message:
          Bug #13706828: UPGRADE YASSL FROM 1.7.2 TO 2.1.4
          
          $SUBJ$
          1. Took a diff between the previous base version and the
          mysql sources.
          2. Added the new 2.1.4 base version.
          3. Reviewed and re-applied the diff from step #1.
------------------------------------------------------------
revno: 3274 [merge]
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: upgrade-yassl-5.5-security
timestamp: Fri 2012-02-10 11:51:33 +0200
message:
  merge
    ------------------------------------------------------------
    revno: 2661.768.57 [merge]
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: upgrade-yassl-5.1-security
    timestamp: Fri 2012-02-10 11:49:48 +0200
    message:
      merge
------------------------------------------------------------
revno: 3273 [merge]
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: upgrade-yassl-5.5-security
timestamp: Fri 2012-02-10 11:45:46 +0200
message:
  merge
    ------------------------------------------------------------
    revno: 3271.1.1 [merge]
    committer: Martin Hansson <martin.hansson@oracle.com>
    branch nick: mysql-5.5-security
    timestamp: Tue 2012-02-07 17:32:04 +0100
    message:
      Merge of fix for Bug#11765810.
        ------------------------------------------------------------
        revno: 2661.802.1
        committer: Martin Hansson <martin.hansson@oracle.com>
        branch nick: mysql-5.1-security
        timestamp: Tue 2012-02-07 14:16:09 +0100
        message:
          Bug #11765810 58813: SERVER THREAD HANGS WHEN JOIN + WHERE + GROUP BY
          IS EXECUTED TWICE FROM P
          
          This bug is a duplicate of bug 12567331, which was pushed to the
          optimizer backporting tree on 2011-06-11. This is just a back-port of
          the fix. Both test cases are included as they differ somewhat.
------------------------------------------------------------
revno: 3272 [merge]
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: upgrade-yassl-5.5-security
timestamp: Fri 2012-02-10 11:41:54 +0200
message:
  empty merge mysql-5.1-security->mysql-5.5-secruity
    ------------------------------------------------------------
    revno: 2661.768.56 [merge]
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: upgrade-yassl-5.1-security
    timestamp: Fri 2012-02-10 11:39:51 +0200
    message:
      empty merge of mysql-5.0-security->mysql-5.1-security
        ------------------------------------------------------------
        revno: 1810.4000.41
        committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
        branch nick: upgrade-yassl-5.0-security
        timestamp: Fri 2012-02-10 11:10:07 +0200
        message:
          Bug#13706621 :  UNIFY THE YASSL VERSIONS THAT WE USE BY BACKPORTING 5.1
          AND 5.5 YASSL FIXES.
          
          Took the 5.5 yassl code and applied it to the 5.0 codebase, keeping the
          compilation files.
    ------------------------------------------------------------
    revno: 2661.768.55
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: upgrade-yassl-5.1-security
    timestamp: Fri 2012-02-10 11:35:36 +0200
    message:
      Bug#13706621 :  UNIFY THE YASSL VERSIONS THAT WE USE BY BACKPORTING 5.1
      AND 5.5 YASSL FIXES.
      
      Took the 5.5 yassl directory and moved it to the 5.1 tree, while
      preserving the makefiles.
------------------------------------------------------------
revno: 3271 [merge]
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: merge-5.5-security
timestamp: Mon 2012-02-06 18:37:02 +0200
message:
  empty weave merge mysql-5.1-security->mysql-5.5-security
    ------------------------------------------------------------
    revno: 2661.768.54 [merge]
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: merge-5.1-security
    timestamp: Mon 2012-02-06 18:26:48 +0200
    message:
      empty weave merge mysql-5.0-security->mysql-5.1-security
        ------------------------------------------------------------
        revno: 1810.4000.40 [merge]
        committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
        branch nick: merge-5.0-security
        timestamp: Mon 2012-02-06 18:23:41 +0200
        message:
          merged mysql-5.0->mysql-5.0-security
    ------------------------------------------------------------
    revno: 2661.768.53 [merge]
    committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
    branch nick: merge-5.1-security
    timestamp: Mon 2012-02-06 18:24:51 +0200
    message:
      merged mysql-5.1->mysql-5.1-security
------------------------------------------------------------
revno: 3270 [merge]
committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
branch nick: merge-5.5-security
timestamp: Mon 2012-02-06 18:26:36 +0200
message:
  merge mysql-5.5->mysql-5.5-security
    ------------------------------------------------------------
    revno: 3097.116.122 [merge]
    committer: Vasil Dimov <vasil.dimov@oracle.com>
    branch nick: mysql-5.5
    timestamp: Mon 2012-02-06 13:00:41 +0200
    message:
      Merge mysql-5.1 -> mysql-5.5
      
      The actual Bug#11754376 does not exist in MySQL 5.5 because at startup
      we drop entries for temporary tables from InnoDB dictionary cache (only
      if ROW_FORMAT is not REDUNDANT). But nevertheless the bug in
      normalize_table_name_low() is present so we fix it.
        ------------------------------------------------------------
        revno: 2661.800.14
        committer: Vasil Dimov <vasil.dimov@oracle.com>
        branch nick: mysql-5.1
        timestamp: Mon 2012-02-06 12:44:59 +0200
        message:
          Fix Bug#11754376 45976: INNODB LOST FILES FOR TEMPORARY TABLES ON
          GRACEFUL SHUTDOWN
          
          During startup mysql picks up .frm files from the tmpdir directory and
          tries to drop those tables in the storage engine.
          
          The problem is that when tmpdir ends in / then ha_innobase::delete_table()
          is passed a string like "/var/tmp//#sql123", then it wrongly normalizes it
          to "/#sql123" and calls row_drop_table_for_mysql() which of course fails
          to delete the table entry from the InnoDB dictionary cache.
          ha_innobase::delete_table() returns an error but nevertheless mysql wipes
          away the .frm file and the entry in the InnoDB dictionary cache remains
          orphaned with no easy way to remove it.
          
          The "no easy" way to remove it is to create a similar temporary table again,
          copy its .frm file to tmpdir under "#sql123.frm" and restart mysqld with
          tmpdir=/var/tmp (no trailing slash) - this way mysql will pick the .frm file
          after restart and will try to issue drop table for "/var/tmp/#sql123"
          (notice do double slash), ha_innobase::delete_table() will normalize it to
          "tmp/#sql123" and row_drop_table_for_mysql() will successfully remove the
          table entry from the dictionary cache.
          
          The solution is to fix normalize_table_name_low() to normalize things like
          "/var/tmp//table" correctly to "tmp/table".
          
          This patch also adds a test function which invokes
          normalize_table_name_low() with various inputs to make sure it works
          correctly and a mtr test that calls this test function.
          
          Reviewed by: Marko (http://bur03.no.oracle.com/rb/r/929/)
    ------------------------------------------------------------
    revno: 3097.116.121
    committer: Ashish Agarwal<ashish.y.agarwal@oracle.com>
    branch nick: mysql-5.5
    timestamp: Sun 2012-02-05 14:10:50 +0530
    message:
      BUG#11754145: Failing test cases. Patch to correct the test case.
    ------------------------------------------------------------
    revno: 3097.116.120
    committer: Nuno Carvalho <nuno.carvalho@oracle.com>
    branch nick: mysql-5.5
    timestamp: Fri 2012-02-03 14:23:33 +0000
    message:
      BUG#12403008 RPL_HEARTBEAT_BASIC FAILS SPORADICALLY ON PUSHBUILD
            
      rpl_heartbeat_basic test fails sporadically on pushbuild because did
      not received all heartbeats from slave in circular replication.
      
      Removed from experimental collection.
    ------------------------------------------------------------
    revno: 3097.116.119 [merge]
    committer: Ashish Agarwal<ashish.y.agarwal@oracle.com>
    branch nick: mysql-5.5
    timestamp: Fri 2012-02-03 19:41:03 +0530
    message:
      BUG#11748748: Merge from mysql-5.1 to mysql-5.5
        ------------------------------------------------------------
        revno: 2661.800.13
        committer: Ashish Agarwal<ashish.y.agarwal@oracle.com>
        branch nick: bug_93_5.1
        timestamp: Fri 2012-02-03 19:37:00 +0530
        message:
          BUG#11748748 - 37280: CHECK AND REPAIR TABLE REPORT TABLE
                                CORRUPTED WHEN RUN CONCURRENTLY WITH
          
          ISSUE: Table corruption due to concurrent queries.
                 Different threads running check, repair query
                 along with insert. Locks not properly acquired
                 in repair query. Rows are inserted inbetween
                 repair query.
          
          SOLUTION: Mutex lock is acquired before the
                    repair call. Concurrent queries wont
                    effect the call to repair.
    ------------------------------------------------------------
    revno: 3097.116.118
    committer: Ashish Agarwal<ashish.y.agarwal@oracle.com>
    branch nick: mysql-5.5
    timestamp: Fri 2012-02-03 19:19:32 +0530
    message:
      BUG#11754145: One of the test was failing. Patch to fix the test
    ------------------------------------------------------------
    revno: 3097.116.117
    committer: Ashish Agarwal<ashish.y.agarwal@oracle.com>
    branch nick: bug_4145
    timestamp: Thu 2012-02-02 18:17:14 +0530
    message:
      BUG#11754145 - 45702: IMPOSSIBE TO SPECIFY MYISAM_SORT_BUFFER > 4GB
                            ON 64 BIT MACHINES
      
      PROBLEM: When sorting index during repair of
               myisam tables, due to improper casting
               of buffer size variables value of myisam_
               sort_buffer_size is not set greater than
               4GB.
      
      SOLUTION: Proper casting of buffer size variable.
                myisam_buffer_size changed to unsigned
                long long to handle size > 4GB on
                linux as well as windows.
    ------------------------------------------------------------
    revno: 3097.116.116 [merge]
    committer: Alexander Barkov <alexander.barkov@oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-02-02 16:25:48 +0400
    message:
      Merging from 5.1
        ------------------------------------------------------------
        revno: 2661.800.12
        committer: Alexander Barkov <alexander.barkov@oracle.com>
        branch nick: mysql-5.1
        timestamp: Thu 2012-02-02 16:22:13 +0400
        message:
          Postfix for Bug#11752408.
          Recording correct test results.
          
          modified:
            mysql-test/suite/engines/funcs/r/db_alter_collate_ascii.result
            mysql-test/suite/engines/funcs/r/db_alter_collate_utf8.result
    ------------------------------------------------------------
    revno: 3097.116.115
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-02-02 13:54:27 +0200
    message:
      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: 3097.116.114 [merge]
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-02-02 13:50:54 +0200
    message:
      Merge mysql-5.1 to mysql-5.5.
        ------------------------------------------------------------
        revno: 2661.800.11
        committer: Marko M?kel? <marko.makela@oracle.com>
        branch nick: mysql-5.1
        timestamp: Thu 2012-02-02 13:38:32 +0200
        message:
          Bug#13654923 BOGUS DEBUG ASSERTION IN INDEX CREATION FOR ZERO-LENGTH RECORD
          
          row_merge_buf_write(): Relax the bogus assertion.
    ------------------------------------------------------------
    revno: 3097.116.113
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-02-02 12:31:57 +0200
    message:
      Bug #13651627 Move ut_ad(0) from the beginning to the end of buf_page_print(),
      print page dump
      
      buf_page_print(): Remove the ut_ad(0) from the beginning. Add two flags
      (enum buf_page_print_flags) that can be bitwise-ORed together:
      
      BUF_PAGE_PRINT_NO_CRASH:
        Do not crash debug builds at the end of buf_page_print().
      BUF_PAGE_PRINT_NO_FULL:
        Do not print the full page dump. This can be useful when adding
        diagnostic printout to flushing or to the doublewrite buffer.
      
      trx_sys_doublewrite_init_or_restore_page(): Replace exit(1) with ut_error,
      so that we can get a core dump if this extraordinary condition happens.
      
      rb:924 approved by Sunny Bains
    ------------------------------------------------------------
    revno: 3097.116.112 [merge]
    committer: Marko M?kel? <marko.makela@oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-02-02 12:13:35 +0200
    message:
      Merge mysql-5.1 to mysql-5.5.
        ------------------------------------------------------------
        revno: 2661.800.10
        committer: Marko M?kel? <marko.makela@oracle.com>
        branch nick: mysql-5.1
        timestamp: Thu 2012-02-02 12:07:06 +0200
        message:
          Suppress messages about long semaphore waits in innodb_bug34300.test.
    ------------------------------------------------------------
    revno: 3097.116.111 [merge]
    committer: Ashish Agarwal<ashish.y.agarwal@oracle.com>
    branch nick: mysql-5.5
    timestamp: Thu 2012-02-02 14:25:43 +0530
    message:
      BUG#11756869: Merge from mysql-5.1 to mysql-5.5
        ------------------------------------------------------------
        revno: 2661.800.9 [merge]
        committer: Ashish Agarwal<ashish.y.agarwal@oracle.com>
        branch nick: mysql-5.1
        timestamp: Thu 2012-02-02 14:19:38 +0530
        message:
          BUG#11756869 - 48848: MYISAMCHK DOING SORT RECOVER IN CERTAIN
                                CASES RESETS DATA POINTER TO SMAL
          
          ISSUE: Myisamchk doing sort recover
                 on a table reduces data_file_length.
                 Maximum size of data file decreases,
                 lesser number of rows are stored.
          
          SOLUTION: Size of data_file_length is
                    fixed to the original length.
            ------------------------------------------------------------
            revno: 2661.801.1
            committer: Ashish Agarwal<ashish.y.agarwal@oracle.com>
            branch nick: bug_869_1
            timestamp: Wed 2012-02-01 11:19:53 +0530
            message:
              BUG#11756869 - 48848: MYISAMCHK DOING SORT RECOVER IN CERTAIN
                                    CASES RESETS DATA POINTER TO SMAL
              
              ISSUE: Myisamchk doing sort recover
                     on a table reduces data_file_length.
                     Maximum size of data file decreases,
                     lesser number of rows are stored.
              
              SOLUTION: Size of data_file_length is
                        fixed to the original length.
    ------------------------------------------------------------
    revno: 3097.116.110 [merge]
    committer: Andrei Elkin <andrei.elkin@oracle.com>
    branch nick: 5.5-bug3593869-64035-MYSQL_BINLOG_SEND-CRASH
    timestamp: Tue 2012-01-31 17:16:25 +0200
    message:
      merge from 5.5 repo.
        ------------------------------------------------------------
        revno: 3097.123.8
        committer: Inaam Rana <inaam.rana@oracle.com>
        branch nick: mysql-5.5
        timestamp: Tue 2012-01-31 09:50:17 -0500
        message:
          bug#13636122: mysql-5.1 => mysql-5.5
        ------------------------------------------------------------
        revno: 3097.123.7 [merge]
        committer: Inaam Rana <inaam.rana@oracle.com>
        branch nick: mysql-5.5
        timestamp: Tue 2012-01-31 09:36:28 -0500
        message:
          NULL merge from mysql-5.1
            ------------------------------------------------------------
            revno: 2661.800.8
            committer: Inaam Rana <inaam.rana@oracle.com>
            branch nick: mysql-5.1
            timestamp: Tue 2012-01-31 09:31:31 -0500
            message:
              Bug#13636122 THE ORIGINAL TABLE MISSING WHILE EXECUTE THE DDL 'ALTER TABLE ADD COLUMN
              
              rb://914
              approved by: Marko Makela
              
              Poll in fil_rename_tablespace() after setting ::stop_ios flag can
              result in a hang because the other thread actually dispatching the IO
              won't wake IO helper threads or flush the tablespace before starting
              wait in fil_mutex_enter_and_prepare_for_io().
    ------------------------------------------------------------
    revno: 3097.116.109 [merge]
    committer: Andrei Elkin <andrei.elkin@oracle.com>
    branch nick: 5.5-bug3593869-64035-MYSQL_BINLOG_SEND-CRASH
    timestamp: Tue 2012-01-31 17:07:44 +0200
    message:
      merge from 5.5 repo.
        ------------------------------------------------------------
        revno: 3097.123.6 [merge]
        committer: sayantan.dutta@oracle.com
        branch nick: mysql-5.5
        timestamp: Tue 2012-01-31 17:46:45 +0530
        message:
          Undo last push
            ------------------------------------------------------------
            revno: 2661.800.7
            committer: sayantan.dutta@oracle.com
            branch nick: mysql-5.1
            timestamp: Tue 2012-01-31 17:39:40 +0530
            message:
              (no message)
        ------------------------------------------------------------
        revno: 3097.123.5 [merge]
        committer: sayantan.dutta@oracle.com
        branch nick: mysql-5.5
        timestamp: Tue 2012-01-31 17:20:56 +0530
        message:
          merge #64127 5.1 => 5.5
            ------------------------------------------------------------
            revno: 2661.800.6
            committer: sayantan.dutta@oracle.com
            branch nick: mysql-5.1
            timestamp: Tue 2012-01-31 17:09:32 +0530
            message:
              Bug #64127: MTR --warnings option misses some of InnoDB errors and warnings
        ------------------------------------------------------------
        revno: 3097.123.4 [merge]
        committer: Ramil Kalimullin <ramil@mysql.com>
        branch nick: mysql-5.5
        timestamp: Tue 2012-01-31 11:00:31 +0400
        message:
          Auto-merge from mysql-5.1.
            ------------------------------------------------------------
            revno: 2661.800.5 [merge]
            committer: Ramil Kalimullin <ramil@mysql.com>
            branch nick: mysql-5.1
            timestamp: Tue 2012-01-31 10:57:12 +0400
            message:
              Null-merge from mysql-5.0.
                ------------------------------------------------------------
                revno: 1810.4004.9
                committer: Ramil Kalimullin <ramil@mysql.com>
                branch nick: mysql-5.0
                timestamp: Mon 2012-01-30 22:52:33 +0400
                message:
                  Fix for BUG#13596377: MYSQL CRASHES ON STARTUP ON FREEBSD IN PB2
                  
                  Fix for #36428/#38364 backported into 5.0.
        ------------------------------------------------------------
        revno: 3097.123.3
        author: hery.ramilison@oracle
        committer: Build Team <MYSQL-RE_WW@oracle.com>
        branch nick: mysql-5.5
        timestamp: Mon 2012-01-30 18:33:55 +0100
        message:
          starting 5.5.21 build
        ------------------------------------------------------------
        revno: 3097.123.2 [merge]
        tags: clone-5.5.21-build, mysql-5.5.21
        committer: chuck.bell@oracle.com
        branch nick: mysql-12969301
        timestamp: Mon 2012-01-30 10:23:21 -0500
        message:
          Merge with main for BUG#12969301
            ------------------------------------------------------------
            revno: 3097.124.24
            committer: Inaam Rana <inaam.rana@oracle.com>
            branch nick: mysql-5.5
            timestamp: Mon 2012-01-30 09:24:09 -0500
            message:
              Bug#11836233 MISLEADING SUGGESTION REGARDING LINUX NATIVE AIO IN INNODB
              ERROR LOG
              
              Fixed error meesage
            ------------------------------------------------------------
            revno: 3097.124.23
            committer: Tor Didriksen <tor.didriksen@oracle.com>
            branch nick: 5.5
            timestamp: Mon 2012-01-30 10:08:22 +0100
            message:
              Bug#13604121 - LIBMYSQLCIENT.SO MISSING SOME FUNCTIONS PRESENT IN LIBMYSQLCLIENT.A
              
              +get_tty_password  this is the only external symbol in get_password.c,
                                 which is explicitly listed in CLIENT_SOURCES
              +handle_options    this is in mysys/my_getopt.c
                                 adding this sysmbol pulls in the other externals:
              T getopt_compare_strings
              T getopt_double_limit_value
              T getopt_ll_limit_value
              T getopt_ull_limit_value
              T handle_options
              T my_cleanup_options
              T my_getopt_register_get_addr
              T my_print_help
              T my_print_variables
            ------------------------------------------------------------
            revno: 3097.124.22
            committer: Yasufumi Kinoshita <yasufumi.kinoshita@oracle.com>
            branch nick: mysql-5.5
            timestamp: Fri 2012-01-27 13:07:24 +0900
            message:
              Fix for build break introduced at rev 3711
              asked by Calvin
            ------------------------------------------------------------
            revno: 3097.124.21
            committer: Jorgen Loland <jorgen.loland@oracle.com>
            branch nick: mysql-5.5
            timestamp: Thu 2012-01-26 13:30:11 +0100
            message:
              BUG 13413535 followup: Fix gcc warning
            ------------------------------------------------------------
            revno: 3097.124.20
            committer: Marko M?kel? <marko.makela@oracle.com>
            branch nick: mysql-5.5
            timestamp: Thu 2012-01-26 13:24:00 +0200
            message:
              Bug #13413535 61104: INNODB: FAILING ASSERTION: PAGE_GET_N_RECS(PAGE) > 1
              
              This fix does not remove the underlying cause of the assertion
              failure. It just works around the problem, allowing a corrupted
              secondary index to be fixed by DROP INDEX and CREATE INDEX (or in the
              worst case, by re-creating the table).
              
              ibuf_delete(): If the record to be purged is the last one in the page
              or it is not delete-marked, refuse to purge it. Instead, write an
              error message to the error log and let a debug assertion fail.
              
              ibuf_set_del_mark(): If the record to be delete-marked is not found,
              display some more information in the error log and let a debug
              assertion fail.
              
              row_undo_mod_del_unmark_sec_and_undo_update(),
              row_upd_sec_index_entry(): Let a debug assertion fail when the record
              to be delete-marked is not found.
              
              buf_page_print(): Add ut_ad(0) so that corruption will be more
              prominent in stress testing with debug binaries. Add ut_ad(0) here and
              there where corruption is noticed.
              
              btr_corruption_report(): Display some data on page_is_comp() mismatch.
              
              btr_assert_not_corrupted(): A wrapper around btr_corruption_report().
              Assert that page_is_comp() agrees with the table flags.
              
              rb:911 approved by Inaam Rana
            ------------------------------------------------------------
            revno: 3097.124.19 [merge]
            committer: Guilhem Bichot <guilhem.bichot@oracle.com>
            branch nick: mysql-5.5-2
            timestamp: Thu 2012-01-26 10:38:28 +0100
            message:
              merge from 5.1
                ------------------------------------------------------------
                revno: 2661.800.4
                committer: Guilhem Bichot <guilhem.bichot@oracle.com>
                branch nick: mysql-5.1
                timestamp: Thu 2012-01-26 10:25:23 +0100
                message:
                  Fixes for:
                  BUG#13519696 - 62940: SELECT RESULTS VARY WITH VERSION AND
                  WITH/WITHOUT INDEX RANGE SCAN
                  BUG#13453382 - REGRESSION SINCE 5.1.39, RANGE OPTIMIZER WRONG
                  RESULTS WITH DECIMAL CONVERSION
                  BUG#13463488 - 63437: CHAR & BETWEEN WITH INDEX RETURNS WRONG
                  RESULT AFTER MYSQL 5.1.
                  Those are all cases where the range optimizer got it wrong
                  with > and >=.
            ------------------------------------------------------------
            revno: 3097.124.18
            committer: Tor Didriksen <tor.didriksen@oracle.com>
            branch nick: 5.5
            timestamp: Thu 2012-01-26 08:00:37 +0100
            message:
              Bug#11753187 post-push fix: fix .result file
            ------------------------------------------------------------
            revno: 3097.124.17
            committer: Nuno Carvalho <nuno.carvalho@oracle.com>
            branch nick: mysql-5.5
            timestamp: Wed 2012-01-25 18:05:10 +0000
            message:
              BUG#12403008 RPL_HEARTBEAT_BASIC FAILS SPORADICALLY ON PUSHBUILD
              
              rpl_heartbeat_basic test fails sporadically on pushbuild because did
              not received all heartbeats from slave in circular replication.
              
              MASTER_HEARTBEAT_PERIOD had the default value (slave_net_timeout/2) so
              wait on "Heartbeat event received on master", that only waits for 1
              minute, sometimes timeout before heartbeat arrives. Fixed setting a
              smaller period value.
            ------------------------------------------------------------
            revno: 3097.124.16
            committer: Tor Didriksen <tor.didriksen@oracle.com>
            branch nick: 5.5-merge
            timestamp: Wed 2012-01-25 16:11:03 +0100
            message:
              Bug#13359121 LARGE NUMBERS, /STRINGS/DTOA.C:662
              Bug#12985021 SIMPLE QUERY WITH DECIMAL NUMBERS TAKE AN
              
              When parsing the fractional part of a string which
              is to be converted to double, we can stop after a few digits:
              the extra digits will not contribute to the actual result anyways.
            ------------------------------------------------------------
            revno: 3097.124.15
            committer: Tor Didriksen <tor.didriksen@oracle.com>
            branch nick: 5.5
            timestamp: Wed 2012-01-25 16:05:27 +0100
            message:
              Bug#13463415 followup: compensate for compiler bug
            ------------------------------------------------------------
            revno: 3097.124.14
            committer: Tor Didriksen <tor.didriksen@oracle.com>
            branch nick: 5.5-bug13463415decimal
            timestamp: Wed 2012-01-25 10:36:25 +0100
            message:
              Bug#13463415 63502: INCORRECT RESULTS OF BIGINT AND DECIMAL COMPARISON
              Bug#11758543 50756: BIGINT '100' MATCHES 1.001E2
              
              Expressions of the form
                    BIGINT_COL <compare> <non-integer constant>
              
                    should be done either as decimal, or float.
              
                    Currently however, such comparisons are done as int,
                    which means that the constant may be truncated,
                    and yield false positives/negatives for all queries
                    where compare is '>' '<' '>=' '<=' '=' '!='.
              
                    BIGINT_COL IN <list of contstants>
                    and
                    BIGINT_COL BETWEEN <constant> AND <constant>
                    are also affected.
            ------------------------------------------------------------
            revno: 3097.124.13
            committer: Dmitry Shulga <Dmitry.Shulga@oracle.com>
            branch nick: mysql-5.5-bug11753187
            timestamp: Wed 2012-01-25 15:59:30 +0600
            message:
              Fixed bug#11753187 (formerly known as bug 44585): SP_CACHE BEHAVES AS
              MEMORY LEAK.
              
              Background:
               - There are caches for stored functions and stored procedures (SP-cache);
               - There is no similar cache for events;
               - Triggers are cached together with TABLE objects;
               - Those SP-caches are per-session (i.e. specific to each session);
               - A stored routine is represented by a sp_head-instance internally;
               - SP-cache basically contains sp_head-objects of stored routines, which
                 have been executed in a session;
               - sp_head-object is added into the SP-cache before the corresponding
                 stored routine is executed;
               - SP-cache is flushed in the end of the session.
              
              The problem was that SP-cache might grow without any limit. Although this
              was not a pure memory leak (the SP-cache is flushed when session is closed),
              this is still a problem, because the user might take much memory by
              executing many stored routines.
              
              The patch fixes this problem in the least-intrusive way. A soft limit
              (similar to the size of table definition cache) is introduced. To represent
              such limit the new runtime configuration parameter 'stored_program_cache'
              is introduced. The value of this parameter is stored in the new global
              variable stored_program_cache_size that used to control the size of SP-cache
              to overflow.
              
              The parameter 'stored_program_cache' limits number of cached routines for
              each thread. It has the following min/default/max values given from support:
                min = 256, default = 256, max = 512 * 1024.
              Also it should be noted that this parameter limits the size of
              each cache (for stored procedures and for stored functions) separately.
              
              The SP-cache size is checked after top-level statement is parsed.
              If SP-cache size exceeds the limit specified by parameter
              'stored_program_cache' then SP-cache is flushed and memory allocated for
              cache objects is freed. Such approach allows to flush cache safely
              when there are dependencies among stored routines.
            ------------------------------------------------------------
            revno: 3097.124.12 [merge]
            committer: Marko M?kel? <marko.makela@oracle.com>
            branch nick: mysql-5.5
            timestamp: Wed 2012-01-25 10:18:14 +0200
            message:
              Merge mysql-5.1 to mysql-5.5.
                ------------------------------------------------------------
                revno: 2661.800.3
                committer: Marko M?kel? <marko.makela@oracle.com>
                branch nick: mysql-5.1
                timestamp: Wed 2012-01-25 10:15:27 +0200
                message:
                  btr_cur_search_to_nth_level(): Add a debug assertion
                  and some Valgrind instrumentation.
            ------------------------------------------------------------
            revno: 3097.124.11 [merge]
            committer: Alexander Barkov <alexander.barkov@oracle.com>
            branch nick: mysql-5.5.b13458237
            timestamp: Tue 2012-01-24 16:09:25 +0400
            message:
              Merging from mysql-5.5
                ------------------------------------------------------------
                revno: 2661.800.2 [merge]
                committer: Alexander Barkov <alexander.barkov@oracle.com>
                branch nick: mysql-5.1.b13458237
                timestamp: Tue 2012-01-24 16:02:12 +0400
                message:
                  Merging from mysql-5.1
            ------------------------------------------------------------
            revno: 3097.124.10 [merge]
            committer: Alexander Barkov <alexander.barkov@oracle.com>
            branch nick: mysql-5.5.b13458237
            timestamp: Tue 2012-01-24 13:24:05 +0400
            message:
              Merging BUG#13458237 from 5.1.
                ------------------------------------------------------------
                revno: 2661.800.1
                committer: Alexander Barkov <alexander.barkov@oracle.com>
                branch nick: mysql-5.1.b13458237
                timestamp: Tue 2012-01-24 13:00:13 +0400
                message:
                  BUG#13458237 - INCONSISTENT HANDLING OF INVALIDE DATES WITH ZERO DAY. SIMILAR TO '2009-10-00'
                  - Reverting the patch for Bug # 12584302
                    The patch will be reverted in 5.1 and 5.5.
                    The patch will not be reverted in 5.6, the change will
                    be properly documented in 5.6.
                  - Backporting DBUG_ASSERT not to crash on '0000-01-00'
                    (already fixed in mysql-trunk (5.6))
            ------------------------------------------------------------
            revno: 3097.124.9
            committer: Nuno Carvalho <nuno.carvalho@oracle.com>
            branch nick: mysql-5.5
            timestamp: Mon 2012-01-23 16:50:54 +0000
            message:
              BUG#12364404 - UNDETERMINISTIC WAIT LOOP IN WAIT_FOR_NDB_TO_BINLOG.INC
              
              The wait_for_ndb_to_binlog.inc include file used by the blow rpl_tests
              common for rpl and rpl_ndb suite is simply doing a "sleep 5", this is
              not deterministic and wastes lot of test time uneccessarily. The test
              should be rewritten to check if the condition it wait for has been
              reached or not.
              
              For NDB engine all events will be added by NDB injector so tests only
              can continue after injector is ready, this test waits for proper
              injector thread state.
            ------------------------------------------------------------
            revno: 3097.124.8
            committer: Manish Kumar<manish.4.kumar@oracle.com>
            branch nick: mysql-5.5
            timestamp: Mon 2012-01-23 17:39:37 +0530
            message:
              BUG#11752315 - 43460: STOP SLAVE UNABLE TO COMPLETE WHEN SLAVE THREAD IS TRYING TO RECONNECT TO
              
              Problem : The basic problem is the way the thread sleeps in mysql-5.5 and also in mysql-5.1
                        when we execute a stop slave on windows platform.
                        On windows platform if the stop slave is executed after the master dies, we have
                        this long wait before the stop slave return a value. This is because there is a
                        sleep of the thread. The sleep is uninterruptable in the two above version,
                        which was fixed by Davi patch for the BUG#11765860 for mysql-trunk. Backporting
                        his patch for mysql-5.5 fixes the problem.
              
              Solution : A new pair of mutex and condition variable is introduced to synchronize thread
                         sleep and finalization. A new mutex is required because the slave threads are
                         terminated while holding the slave thread locks (run_lock), which can not be
                         relinquished during termination as this would affect the lock order.
            ------------------------------------------------------------
            revno: 3097.124.7 [merge]
            committer: Alexander Barkov <alexander.barkov@oracle.com>
            branch nick: mysql-5.5.b11752408v2
            timestamp: Mon 2012-01-23 13:23:50 +0400
            message:
              Merging Bug#11752408 from mysql-5.1
                ------------------------------------------------------------
                revno: 2661.798.22
                committer: Alexander Barkov <alexander.barkov@oracle.com>
                branch nick: mysql-5.1.b11752408
                timestamp: Mon 2012-01-23 13:07:10 +0400
                message:
                  Bug#11752408 - 43593: DUMP/BACKUP/RESTORE/UPGRADE TOOLS FAILS BECAUSE OF UTF8_GENERAL_CI
                  
                  Introducing new collations:
                  utf8_general_mysql500_ci and ucs2_general_mysql500_ci,
                  to reproduce behaviour of utf8_general_ci and ucs2_general_ci
                  from mysql-5.1.23 (and earlier).
                  
                  The collations are added to simplify upgrade from mysql-5.1.23 and earlier.
                  
                  Note: The patch does not make new server start over old data automatically.
                  Some manual upgrade procedures are assumed.
                  
                  Paul: please get in touch with me to discuss upgrade procedures
                  when documenting this bug.
                  
                  modified:
                    include/m_ctype.h
                    mysql-test/r/ctype_utf8.result
                    mysql-test/t/ctype_utf8.test
                    mysys/charset-def.c
                    strings/ctype-ucs2.c
                    strings/ctype-utf8.c
            ------------------------------------------------------------
            revno: 3097.124.6
            committer: Inaam Rana <inaam.rana@oracle.com>
            branch nick: mysql-5.5
            timestamp: Fri 2012-01-20 10:47:01 -0500
            message:
              Bug#13612811 VALGRIND ERROR IN OS_AIO_INIT
              
              Fix valgrind warning introduced by fix for bug 11765450.
            ------------------------------------------------------------
            revno: 3097.124.5
            committer: Mattias Jonsson <mattias.jonsson@oracle.com>
            branch nick: topush-5.5
            timestamp: Fri 2012-01-20 14:19:39 +0100
            message:
              Bug#13500478 63623: TEST CASE PARTITION_BINLOG_STMT
              CREATES A FILE IN AN IMPROPER LOCATION.
              
              Fixed by using $MYSQLTEST_VARDIR, as proposed by
              Davi Arnaut.
              
              Thank you Davi!
            ------------------------------------------------------------
            revno: 3097.124.4
            committer: Georgi Kodinov <Georgi.Kodinov@Oracle.com>
            branch nick: fix-5.5
            timestamp: Fri 2012-01-20 13:35:48 +0200
            message:
              Addendum to the fix for bug #11754014
              
              - Fixed the checks to properly check for plugin_dir containing a trailing slash or backslash.
              - Fixed a under-configuration in udf_skip_grants that was preventing the test
                from running even when there was a udf plugin.
            ------------------------------------------------------------
            revno: 3097.124.3
            committer: Dmitry Shulga <Dmitry.Shulga@oracle.com>
            branch nick: mysql-5.5-bug13070308
            timestamp: Fri 2012-01-20 16:03:39 +0600
            message:
              Patch for bug#13070308 - VALGRIND failure in XA test.
              
              The issue is that xa.test failed sporadically on some platforms.
              The reason for the test failure is a race condition in xa.test.
              The race condition occures between connection that executes statement
              INSERT INTO t2 SELECT FROM t1 and other connection that tries to run
              statements DELETE FROM t1 and COMMIT. If COMMIT statement had been executed
              before the statement INSERT INTO t2 SELECT FROM t1 was locked by lock
              on table t1 (as a result of query from table t1) then the INSERT statement
              is executed successfully and a following test for deadlock would failed.
              
              This patch fixes this race condition by moving COMMIT statement after commit
              of distributed transaction from concurrent session.
            ------------------------------------------------------------
            revno: 3097.124.2
            committer: Nuno Carvalho <nuno.carvalho@oracle.com>
            branch nick: mysql-5.5
            timestamp: Thu 2012-01-19 16:56:43 +0000
            message:
              BUG#13050593 - BACKSLASH SWALLOWED BY INCLUDE/SHOW_SLAVE_STATUS.INC
              
              If an error message contains '\' backslash it is displayed correctly
              through show-slave-status or
              query_get_value(SHOW SLAVE STATUS, Last_IO_Error, 1);. But when
              SELECT REPLACE(...) is applied backslash is escaped resulting in a
              different test output.
              
              Disabled backslash escape on show_slave_status.inc and replaced '\' for
              '/' using replace_regex function in order to achieve the same test
              output when different path separators are used.
            ------------------------------------------------------------
            revno: 3097.124.1
            committer: Inaam Rana <inaam.rana@oracle.com>
            branch nick: mysql-5.5
            timestamp: Thu 2012-01-19 09:10:30 -0500
            message:
              Bug#11765450 58421: INNODB TEMPORARY TABLE CRASH WHEN TMPDIR ON LINUX TMPFS
              
              rb://898
              approved by: Marko Makela
              
              On some kernel versions native aio operations are not supported on
              tmpfs. Check this during start up and fall back to simulated aio.