1. 20 Nov, 2012 4 commits
    • Nuno Carvalho's avatar
      BUG#15891524: RLI_FAKE MODE IS NOT UNSET AFTER BINLOG REPLAY · d0f5427c
      Nuno Carvalho authored
      When a binlog is replayed into a server, e.g.:
        $ mysqlbinlog binlog.000001 | mysql
      it sets a pseudo slave mode on the client connection in order to server
      be able to read binlog events, there is, a format description event is
      needed to correctly read following events.
      Also this pseudo slave mode applies to the current connection
      replication rules that are needed to correctly apply binlog events.
      
      If a binlog dump is sourced on a connection, this pseudo slave mode will
      remains after it, what will apply unexpected rules from customer
      perspective to following commands.
      
      Added a new SET statement to binlog dump that will unset pseudo slave
      mode at the end of dump file.
      d0f5427c
    • sayantan.dutta@oracle.com's avatar
    • Vamsikrishna Bhagi's avatar
      Bug#14463669 FAILURE TO CORRECTLY PARSE ROUTINES IN · e4a6dbd3
      Vamsikrishna Bhagi authored
                         MYSQLDUMP OUTPUT
            
            A patch is pushed on this bug. A result mismatch
            occured for the test main.ddl_i18n_utf8 in
            x86_64 gcov build of linux in pb2. This commit is
            to modify ddl_i18n_utf8.result to match the
            changes made for the bug.
      e4a6dbd3
    • Vamsikrishna Bhagi's avatar
      Bug#14463669 FAILURE TO CORRECTLY PARSE ROUTINES IN · c0157d16
      Vamsikrishna Bhagi authored
                   MYSQLDUMP OUTPUT
      
      A patch is pushed on this bug. A result mismatch
      occured for the test main.ddl_i18n_koi8r in
      x86_64 gcov build of linux in pb2. This commit is
      to modify ddl_i18n_koi8r.result to match the
      changes made for the bug.
      c0157d16
  2. 19 Nov, 2012 2 commits
    • Vamsikrishna Bhagi's avatar
      Bug#14463669 FAILURE TO CORRECTLY PARSE ROUTINES IN · f1e9b721
      Vamsikrishna Bhagi authored
                   MYSQLDUMP OUTPUT
      
      Problem: mysqldump when used with option --routines, dumps
               all the routines of the specified database into
               output. The statements in this output are written
               in such a way that they are version safe using C
               style version commenting (of the format
               /*!<version num> <sql statement>*/). If a semicolon
               is present right before closing of the comment in
               dump output, it results in a syntax error while
               importing.
      
      
      Solution: Version comments for dumped routines are
                specifically to protect the ones older than 5.0.
                When the import is done on 5.0 or later versions,
                entire create statement gets executed as all the
                check conditions at the beginning of the comments
                are cleared. Since the trade off is between the
                performance of newer versions which are more in
                use and protection of very old versions which are
                no longer supported, it is proposed that these
                comments be removed altogether to maintain
                stability of the versions supported.
      f1e9b721
    • Satya Bodapati's avatar
      Bug#14147491 - INFINITE LOOP WHEN OPENING A CORRUPTED TABLE · 64e61199
      Satya Bodapati authored
      This bug is fixed by Bug#14251529. Only testcase from the 
      contribution is used.
      64e61199
  3. 16 Nov, 2012 9 commits
  4. 15 Nov, 2012 6 commits
    • Marko Mäkelä's avatar
      Merge mysql-5.1 to mysql-5.5. · f481e6fa
      Marko Mäkelä authored
      f481e6fa
    • Marko Mäkelä's avatar
      Bug#15872736 FAILING ASSERTION · 26226e34
      Marko Mäkelä authored
      Remove a bogus debug assertion.
      26226e34
    • Marko Mäkelä's avatar
      Merge mysql-5.1 to mysql-5.5. · 49b51dd2
      Marko Mäkelä authored
      49b51dd2
    • Marko Mäkelä's avatar
      Bug#15874001 CREATE INDEX ON A UTF8 CHAR COLUMN FAILS WITH ROW_FORMAT=REDUNDANT · 2bb6cefa
      Marko Mäkelä authored
      CHAR(n) in ROW_FORMAT=REDUNDANT tables is always fixed-length
      (n*mbmaxlen bytes), but in the temporary file it is variable-length
      (n*mbminlen to n*mbmaxlen bytes) for variable-length character sets,
      such as UTF-8.
      
      The temporary file format used during index creation and online ALTER
      TABLE is based on ROW_FORMAT=COMPACT. Thus, it should use the
      variable-length encoding even if the base table is in
      ROW_FORMAT=REDUNDNAT.
      
      dtype_get_fixed_size_low(): Replace an assertion-like check with a
      debug assertion.
      
      rec_init_offsets_comp_ordinary(), rec_convert_dtuple_to_rec_comp():
      Make this an inline function.  Replace 'ulint extra' with 'bool temp'.
      
      rec_get_converted_size_comp_prefix_low(): Renamed from
      rec_get_converted_size_comp_prefix(), and made inline. Add the
      parameter 'bool temp'. If temp=true, do not add REC_N_NEW_EXTRA_BYTES.
      
      rec_get_converted_size_comp_prefix(): Remove the comment about
      dict_table_is_comp(). This function is only to be called for other
      than ROW_FORMAT=REDUNDANT records.
      
      rec_get_converted_size_temp(): New function for computing temporary
      file record size. Omit REC_N_NEW_EXTRA_BYTES from the sizes.
      
      rec_init_offsets_temp(), rec_convert_dtuple_to_temp(): New functions,
      for operating on temporary file records.
      
      rb:1559 approved by Jimmy Yang
      2bb6cefa
    • magnus.blaudd@oracle.com's avatar
      remove usage of --skip-ndb from collections · f6fe5596
      magnus.blaudd@oracle.com authored
       - no need to use --skip-ndb in collections files anymore, since long but
        more clear logic after recent mtr.pl fixes. ndb tests are never run in MySQL Server
        unless explicitly requested
       - remove sys_vars.ndb_log_update_as_write_basic.test and sys_vars.ndb_log_updated_only_basic.result since MySQL Server does not have those
        options.
       - Only sys_vars.have_ndbcluster_basic left since MySQL Server has that variable hardcoded.
      f6fe5596
    • mysql-builder@oracle.com's avatar
      No commit message · dbb6af27
      mysql-builder@oracle.com authored
      No commit message
      dbb6af27
  5. 14 Nov, 2012 8 commits
  6. 13 Nov, 2012 4 commits
    • magnus.blaudd@oracle.com's avatar
      Merge · ab73c0cf
      magnus.blaudd@oracle.com authored
      ab73c0cf
    • Mattias Jonsson's avatar
      87e7b521
    • Mattias Jonsson's avatar
      Bug#14845133: · 9b50775d
      Mattias Jonsson authored
      The problem is related to the changes made in bug#13025132.
      get_partition_set can do dynamic pruning which limits the partitions
      to scan even further. This is not accounted for when setting
      the correct start of the preallocated record buffer used in
      the priority queue, thus leading to wrong buffer is used
      (including wrong preset partitioning id, connected to that buffer).
      
      Solution is to fast forward the buffer pointer to point to the correct
      partition record buffer.
      9b50775d
    • Mattias Jonsson's avatar
      Bug#14845133: · d43e1987
      Mattias Jonsson authored
      The problem is related to the changes made in bug#13025132.
      get_partition_set can do dynamic pruning which limits the partitions
      to scan even further. This is not accounted for when setting
      the correct start of the preallocated record buffer used in
      the priority queue, thus leading to wrong buffer is used
      (including wrong preset partitioning id, connected to that buffer).
      
      Solution is to fast forward the buffer pointer to point to the correct
      partition record buffer.
      d43e1987
  7. 12 Nov, 2012 3 commits
  8. 09 Nov, 2012 4 commits
    • mysql-builder@oracle.com's avatar
      No commit message · 9a6255c0
      mysql-builder@oracle.com authored
      No commit message
      9a6255c0
    • Venkata Sidagam's avatar
      Bug#13556000: CHECK AND REPAIR TABLE SHOULD BE MORE ROBUST[2] · ca8abf5a
      Venkata Sidagam authored
      Problem description: Corrupt key file for the table. Size of the 
      key is greater than the maximum specified size. This results in 
      the overflow of the key buffer while reading the key from key 
      file.
      
      Fix: If size of key is greater than the maximum size it returns 
      an error before writing it into the key buffer. Gives error as 
      corrupt file but no stack overflow.
      ca8abf5a
    • Annamalai Gurusami's avatar
      a9dc2bb8
    • Annamalai Gurusami's avatar
      Bug #14669848 CRASH DURING ALTER MAKES ORIGINAL TABLE INACCESSIBLE · 12fab2a6
      Annamalai Gurusami authored
      When a new primary key is added to an InnoDB table, then the following
      steps are taken by InnoDB plugin:
      
      .  let t1 be the original table.
      .  a temporary table t1@00231 will be created by cloning t1.
      .  all data will be copied from t1 to t1@00231.
      .  rename t1 to t1@00232.
      .  rename t1@00231 to t1.
      .  drop t1@00232.
      
      The rename and drop operations involve file operations.  But file operations
      cannot be rolled back.  So in row_merge_rename_tables(), just after doing data
      dictionary update and before doing any file operations, generate redo logs
      for file operations and commit the transaction.  This will ensure that any
      crash after this commit, the table is still recoverable by moving .ibd and
      .frm files.  Manual recovery is required.
      
      During recovery, the rename file operation redo logs are processed.
      Previously this was being ignored.
      
      rb://1460 approved by Marko Makela.
      12fab2a6