1. 12 Oct, 2009 1 commit
    • Kristofer Pettersson's avatar
      Bug#46944 Internal prepared XA transction XIDs are not · 0a52b4fe
      Kristofer Pettersson authored
                removed if server_id changes
      
      When MySQL crashes (or a snapshot is taken which simulates
      a crash), then it is possible that internal XA
      transactions (used to sync the binary log and InnoDB)
      can be left in a PREPARED state, whereas they should be
      rolled back.  This is done when the server_id changes
      before the restart occurs.  
      
      This patch releases he restriction that the server_id
      should be consistent if the XID is to be considerred
      valid. The rollback phase should then be able to
      clean up all pending XA transactions.
      0a52b4fe
  2. 22 Sep, 2009 1 commit
  3. 21 Sep, 2009 1 commit
    • Kristofer Pettersson's avatar
      Fix for BUG#35570 "CHECKSUM TABLE unreliable if LINESTRING field (same content/ differen · 88fe9da4
      Kristofer Pettersson authored
      checksum)"
      
      The problem was that checksum of GEOMETRY type used memory addresses
      in the computation, making it un-repeatable thus useless.
      (This patch is a backport from 6.0 branch)
      
      mysql-test/r/myisam.result:
        test case for bug35570 that same tables give same checksums
      mysql-test/t/myisam.test:
        test case for bug35570 that same tables give same checksums
      sql/sql_table.cc:
        Type GEOMETRY is implemented on top of type BLOB, so, just like for BLOB,
        its 'field' contains pointers which it does not make sense to include in
        the checksum; it rather has to be converted to a string and then we can
        compute the checksum.
      88fe9da4
  4. 18 Sep, 2009 6 commits
    • Georgi Kodinov's avatar
      automerge · 65c8e5a6
      Georgi Kodinov authored
      65c8e5a6
    • Georgi Kodinov's avatar
      Bug#46760: Fast ALTER TABLE no longer works for InnoDB · 971715d2
      Georgi Kodinov authored
            
      Despite copying the value of the old table's row type
      we don't always have to mark row type as being specified.
      Innodb uses this to check if it can do fast ALTER TABLE
      or not.
      Fixed by correctly flagging the presence of row_type 
      only when it's actually changed.
      Added a test case for 39200.
      971715d2
    • Anurag Shekhar's avatar
      merging with latest changes in bugteam. · d5e8d2f8
      Anurag Shekhar authored
      d5e8d2f8
    • unknown's avatar
      Bug #42914 Log event that larger than max_allowed_packet results in stop of slave I/O thread, · 6c75fa09
      unknown authored
                 But there is no Last_IO_Error reported.
      
      On the master, if a binary log event is larger than max_allowed_packet,
      ER_MASTER_FATAL_ERROR_READING_BINLOG and the specific reason of this error is
      sent to a slave when it requests a dump from the master, thus leading
      the I/O thread to stop.
      
      On a slave, the I/O thread stops when receiving a packet larger than max_allowed_packet.
      
      In both cases, however, there was no Last_IO_Error reported.
      
      This patch adds code to report the Last_IO_Error and exact reason before stopping the
      I/O thread and also reports the case the out memory pops up while
      handling packets from the master.
      
      
      sql/sql_repl.cc:
        The master send the Specific reasons instead of "error reading log entry" to the slave which is requesting a dump.
        if an fatal error is returned by read_log_event function.
      6c75fa09
    • Alexey Kopytov's avatar
      Automerge. · db31c7bc
      Alexey Kopytov authored
      db31c7bc
    • Alexey Kopytov's avatar
      Bug #43606: 4GB Limit on huge_pages shared memory set-up · e6423d2b
      Alexey Kopytov authored
      Large pages allocator could not allocate more than 4 GB due to
      incorrect size alignment.
      
      mysys/my_largepage.c:
        Large pages allocator could not allocate more than 4 GB due to
        incorrect size alignment.
      e6423d2b
  5. 17 Sep, 2009 6 commits
    • Staale Smedseng's avatar
      Merge from 5.0 · 0d07a96a
      Staale Smedseng authored
      0d07a96a
    • Staale Smedseng's avatar
      Bug #43414 Parenthesis (and other) warnings compiling MySQL · 5f5b65e0
      Staale Smedseng authored
      with gcc 4.3.2
            
      This is the fifth patch cleaning up more GCC warnings about
      variables used before initialized using the new macro
      UNINIT_VAR().
      5f5b65e0
    • Anurag Shekhar's avatar
      Bug #45840 read_buffer_size allocated for each partition when · b79e34a2
      Anurag Shekhar authored
       "insert into.. select * from"
      
      When inserting into a partitioned table using 'insert into
      <target> select * from <src>', read_buffer_size bytes of memory
      are allocated for each partition in the target table.
      
      This resulted in large memory consumption when the number of
      partitions are high.
      
      This patch introduces a new method which tries to estimate the
      buffer size required for each partition and limits the maximum
      buffer size used to maximum of 10 * read_buffer_size, 
      11 * read_buffer_size in case of monotonic partition functions.
      
      sql/ha_partition.cc:
        Introduced a method ha_partition::estimate_read_buffer_size
        to estimate buffer size required for each partition. 
        Method ha_partition::start_part_bulk_insert updated
        to update the read_buffer_size before calling bulk upload
        in storage engines.
        Added thd in ha_partition::start_part_bulk_insert method signature.
      sql/ha_partition.h:
        Introduced a method ha_partition::estimate_read_buffer_size.
        Added thd in ha_partition::start_part_bulk_insert method signature.
      b79e34a2
    • Sergey Glukhov's avatar
      Bug#42364 SHOW ERRORS returns empty resultset after dropping non existent table · 9a9fbadc
      Sergey Glukhov authored
      additional backport of of bug43138 fix
      
      
      mysql-test/t/myisam-system.test:
        additional backport of of bug43138 fix
      sql/sql_db.cc:
        additional backport of of bug43138 fix
      9a9fbadc
    • Georgi Kodinov's avatar
      Bug #46917: mysqd-nt installs wrong · eca999a2
      Georgi Kodinov authored
      When parsing the service installation parameter in 
      default_service_handling() make sure the value of the
      optional parameter doesn't overwrite it's name.
      eca999a2
    • Satya B's avatar
      Applying InnoDB snapshot 5.1-ss5282, Fixes BUG#44030 · 17339c74
      Satya B authored
      1. Fixes BUG#44030 - Error: (1500) Couldn't read the MAX(ID) autoinc value 
                           from the index (PRIMARY)
      
      2. Disables the innodb-autoinc test for innodb plugin temporarily.
         The testcase for this bug has different result file for InnoDB plugin.
         Should add the testcase to Innodb suite with a different result file.
      
      Detailed revision comments:
      
      r5243 | sunny | 2009-06-04 03:17:14 +0300 (Thu, 04 Jun 2009) | 14 lines
      branches/5.1: When the InnoDB and MySQL data dictionaries go out of sync, before
      the bug fix we would assert on missing autoinc columns. With this fix we allow
      MySQL to open the table but set the next autoinc value for the column to the
      MAX value. This effectively disables the next value generation. INSERTs will
      fail with a generic AUTOINC failure. However, the user should be able to
      read/dump the table, set the column values explicitly, use ALTER TABLE to
      set the next autoinc value and/or sync the two data dictionaries to resume
      normal operations.
      
      Fix Bug#44030 Error: (1500) Couldn't read the MAX(ID) autoinc value from the
      index (PRIMARY)
      
      rb://118
      
      r5252 | sunny | 2009-06-04 10:16:24 +0300 (Thu, 04 Jun 2009) | 2 lines
      branches/5.1: The version of the result file checked in was broken in r5243.
      
      r5259 | vasil | 2009-06-05 10:29:16 +0300 (Fri, 05 Jun 2009) | 7 lines
      branches/5.1:
      
      Remove the word "Error" from the printout because the mysqltest suite
      interprets it as an error and thus the innodb-autoinc test fails.
      
      Approved by:	Sunny (via IM)
      r5466 | vasil | 2009-07-02 10:46:45 +0300 (Thu, 02 Jul 2009) | 6 lines
      branches/5.1:
      
      Adjust the failing innodb-autoinc test to conform to the latest behavior
      of the MySQL code. The idea and the comment in innodb-autoinc.test come
      from Sunny.
      
      17339c74
  6. 16 Sep, 2009 2 commits
  7. 15 Sep, 2009 2 commits
  8. 13 Sep, 2009 2 commits
    • Luis Soares's avatar
      BUG#47016: rpl_do_grant fails on PB-2 with a failing connect · aa123983
      Luis Soares authored
            
      The test case rpl_do_grant fails sporadically on PB2 with "Access
      denied for user 'create_rout_db'@'localhost' ...". Inspecting the
      test case, one may find that if issues a GRANT on the master
      connection and immediately after it creates two new connections
      (one to the master and one to the slave) using the credentials
      set with the GRANT.
            
      Unfortunately, there is no synchronization between master and
      slave after the grant and before the connections are
      established. This can result in slave not having executed the
      GRANT by the time the connection is attempted.
            
      This patch fixes this by deploying a sync_slave_with_master
      between the grant and the connections attempt.
      aa123983
    • Luis Soares's avatar
      BUG#47014: rpl_drop_temp fails on PB-2 with results mismatch · c127c5f5
      Luis Soares authored
            
      The test case creates two temporary tables, then closes the
      connection, waits for it to disconnect, then syncs the slave with
      the master, checks for remaining opened temporary tables on
      slave (which should be 0) and finally drops the used
      database (mysqltest).
            
      Unfortunately, sometimes, the test fails with one open table on
      the slave. This seems to be caused by the fact that waiting for
      the connection to be closed is not sufficient. The test needs to
      wait for the DROP event to be logged and only then synchronize
      the slave with the master and proceed with the check. This is
      caused by the asynchronous nature of the disconnect wrt
      binlogging of the DROP temporary table statement.
            
      We fix this by deploying a call to wait_for_binlog_event.inc
      on the test case, which makes execution to wait for the DROP
      temp tables event before synchronizing master and slave.
      c127c5f5
  9. 11 Sep, 2009 2 commits
    • Mattias Jonsson's avatar
      merge · 8e3562ee
      Mattias Jonsson authored
      8e3562ee
    • Ramil Kalimullin's avatar
      Fix for bug#47130: misplaced or redundant check for null pointer? · 8b3ff350
      Ramil Kalimullin authored
      Problem: LOGGER::general_log_write() relied on valid "thd" parameter passed
      but had inconsistent "if (thd)" check.
      
      Fix: as we always pass a valid "thd" parameter to the method, 
      redundant check removed.
      
      
      sql/log.cc:
        Fix for bug#47130: misplaced or redundant check for null pointer?
          - code clean-up, as we rely on the "thd" parameter in the
        LOGGER::general_log_write(), redundant "if (thd)" check removed, 
        added assert(thd) instead.
      8b3ff350
  10. 10 Sep, 2009 11 commits
  11. 09 Sep, 2009 5 commits
    • Ingo Struewing's avatar
      Bug#17332 - changing key_buffer_size on a running server · 1e45a0cb
      Ingo Struewing authored
                  can crash under load
      
      Merge from 5.0, after backport from 5.1/5.4 to 5.0.
      This makes the fixes for
      Bug 44068 (RESTORE can disable the MyISAM Key Cache)
      Bug 40944 (Backup: crash after myisampack)
      available to 5.1.
      1e45a0cb
    • Georgi Kodinov's avatar
      null merge of the 5.0 test cleanup · 401704f2
      Georgi Kodinov authored
      401704f2
    • Sergey Vojtovich's avatar
      BUG#29203 - archive tables have weird values in show table status · 9024378b
      Sergey Vojtovich authored
      Archive engine returns wrong values for average record length
      and max data length.
      
      With this fix they're calculated as following:
      - max data length is 2 ^ 63 where large files are supported
        and INT_MAX32 where this is not supported;
      - average record length is data length / records in data file.
      
      mysql-test/r/archive.result:
        A test case for BUG#29203.
      mysql-test/t/archive.test:
        A test case for BUG#29203.
      storage/archive/ha_archive.cc:
        Better estimation for average row length and maximal data
        file length.
      9024378b
    • Sergey Vojtovich's avatar
      BUG#45638 - Create temporary table with engine innodb fails · 7bad5a7e
      Sergey Vojtovich authored
      Create temporary InnoDB table fails on case insensitive
      filesystems, when lower_case_table_names is 2 (e.g. OS X)
      and temporary directory path contains upper case letters.
      
      The problem was that tmpdir prefix was converted to lower
      case when table was created, but was passed as is when
      table was opened.
      
      Fixed by leaving tmpdir prefix part intact.
      
      mysql-test/r/lowercase_mixed_tmpdir_innodb.result:
        A test case for BUG#45638.
      mysql-test/t/lowercase_mixed_tmpdir_innodb-master.opt:
        A test case for BUG#45638.
      mysql-test/t/lowercase_mixed_tmpdir_innodb-master.sh:
        A test case for BUG#45638.
      mysql-test/t/lowercase_mixed_tmpdir_innodb.test:
        A test case for BUG#45638.
      sql/handler.cc:
        Fixed get_canonical_filename() to not lowercase filesystem
        path prefix for temporary tables.
      7bad5a7e
    • Georgi Kodinov's avatar
      Bug #45159 Part 1 : rejuvenate the jp test suite using normal run. · 26174449
      Georgi Kodinov authored
      Updates the results of all the out-dated test suites and adds 
      the special mysqltest command to enable innodb for the tests that need it.
      26174449
  12. 08 Sep, 2009 1 commit