1. 26 Jun, 2009 1 commit
    • Luis Soares's avatar
      BUG#44270: Post-push fix · 7121a341
      Luis Soares authored
      The test case added failed sporadically on PB. This is due to the
      fact that the user thread in some cases is waiting for slave IO
      to stop and then check the error number. Thence, sometimes the
      user thread would race for the error number with IO thread.
      
      This post push fix addresses this by replacing the wait for slave
      io to stop with a wait for slave io error (as it seems it was
      added in 6.0 also after patch on which this is based was
      pushed). This implied backporting wait_for_slave_io_error.inc
      from 6.0 also.
      7121a341
  2. 25 Jun, 2009 10 commits
    • Luis Soares's avatar
      3c117ca3
    • Kristofer Pettersson's avatar
      Automerge · cf4af9aa
      Kristofer Pettersson authored
      cf4af9aa
    • Kristofer Pettersson's avatar
      Bug#45336 --enable-foobar doesn't work for any plugin foobar. · 0c7e8fdd
      Kristofer Pettersson authored
      Because of a regression introduced by bug#19027 the option --enable-foobar
      doesn't work anymore for any plugin 'foobar'. The reason is that plugin
      names are tristate options variables with optional parameters and integer
      values are not accepted. Since the 'enable' prefix attempts to assign '1'
      to the option the operation fails.
      
      This patch translates any number n assigned to a plugin variable of type ENUM
      to be the corresponding enumerated item. As a side effect --enable-foobar and
      --disable-foobar will also start working again.
      
      mysys/my_getopt.c:
        * setval now accepts integer values for option variables of type ENUM.
      0c7e8fdd
    • Sergey Glukhov's avatar
      Bug#45412 SHOW CREATE TRIGGER does not require privileges to disclose trigger data · 667338df
      Sergey Glukhov authored
      Added privilege checking to SHOW CREATE TRIGGER code.
      
      
      
      mysql-test/r/trigger_notembedded.result:
        test result
      mysql-test/t/trigger_notembedded.test:
        test case
      sql/sql_show.cc:
        Added privilege checking to SHOW CREATE TRIGGER code.
      667338df
    • Sergey Glukhov's avatar
      automerge · 37eaff3f
      Sergey Glukhov authored
      37eaff3f
    • Satya B's avatar
      e42c1a9e
    • Satya B's avatar
      Applying InnoDB snashot 5.0-ss5406, part 2. Fixes BUG#40565 · e621fd77
      Satya B authored
      BUG#40565 - Update Query Results in "1 Row Affected" But Should Be "Zero Rows"
      
      Detailed revision comments:
      
      r5232 | marko | 2009-06-03 14:31:04 +0300 (Wed, 03 Jun 2009) | 21 lines
      branches/5.0: Merge r3590 from branches/5.1 in order to fix Bug #40565
      (Update Query Results in "1 Row Affected" But Should Be "Zero Rows").
      
      Also, add a test case for Bug #40565.
      
      rb://128 approved by Heikki Tuuri
        ------------------------------------------------------------------------
        r3590 | marko | 2008-12-18 15:33:36 +0200 (Thu, 18 Dec 2008) | 11 lines
      
        branches/5.1: When converting a record to MySQL format, copy the default
        column values for columns that are SQL NULL.  This addresses failures in
        row-based replication (Bug #39648).
      
        row_prebuilt_t: Add default_rec, for the default values of the columns in
        MySQL format.
      
        row_sel_store_mysql_rec(): Use prebuilt->default_rec instead of
        padding columns.
      
        rb://64 approved by Heikki Tuuri
        ------------------------------------------------------------------------
      e621fd77
    • Satya B's avatar
      Applying InnoDB snashot 5.0-ss5406, part 1. Fixes BUG#38479 · 0ed00852
      Satya B authored
      BUG#38479 - valgrind warnings in show table status for innodb tables
      
      Detailed revision comments:
      
      r5080 | vasil | 2009-05-22 14:45:34 +0300 (Fri, 22 May 2009) | 6 lines
      branches/5.0:
      
      Fix Bug#38479 valgrind warnings in show table status for innodb tables
      
      by initializing prebuilt->hint_need_to_fetch_extra_cols.
      
      0ed00852
    • Sergey Glukhov's avatar
      test case fix · 2a35f7c1
      Sergey Glukhov authored
      mysql-test/r/ctype_cp932_binlog_stm.result:
        result fix
      mysql-test/t/ctype_gbk_binlog.test:
        test fix
      2a35f7c1
    • Sergey Glukhov's avatar
      Bug#45485 replication different between master/slaver using procedure with gbk · 5994db46
      Sergey Glukhov authored
      In Item_param::set_from_user_var
      value.cs_info.character_set_client is set
      to 'fromcs' value. It's wrong, it should be set to
      thd->variables.character_set_client.
      
      
      
      mysql-test/r/ctype_gbk_binlog.result:
        test result
      mysql-test/t/ctype_gbk_binlog.test:
        test case
      sql/item.cc:
        In Item_param::set_from_user_var
        value.cs_info.character_set_client is set
        to 'fromcs' value. It's wrong, it should be set to
        thd->variables.character_set_client.
      5994db46
  3. 24 Jun, 2009 2 commits
  4. 23 Jun, 2009 2 commits
    • Bernt M. Johnsen's avatar
      Bug#45293 Supressed some warnings · 00942ef6
      Bernt M. Johnsen authored
      00942ef6
    • Andrei Elkin's avatar
      Bug #38240 Crash in safe_mutex_lock () thr_mutex.c line 97 on rotate_relay_log · c9538baf
      Andrei Elkin authored
                  
      The reason for the crash was rotate_relay_log (mi=0x0) did not verify
      the passed value of active_mi.  There are more cases where active_mi
      is supposed to be non-zero e.g change_master(), stop_slave(), and it's
      reasonable to protect from a similar crash all of them with common
      fixes.
                  
      Fixed with spliting end_slave() in slave threads release and slave
      data clean-up parts (a new close_active_mi()). The new function is
      invoked at the very end of close_connections() so that all users of
      active_mi are proven to have left.
      
      sql/mysqld.cc:
        added the 2nd part (data) of the slave's clean up.
      sql/slave.cc:
        end_slave() is split in two part to release the slave threads and the remained
        resources separately.
        The new close_active_mi() should be called after all possible users ofactive_mi
        has left, i.e at the very end of close_connections().
      sql/slave.h:
        interface to the new end_active_mi() function is added.
      c9538baf
  5. 22 Jun, 2009 9 commits
    • Martin Hansson's avatar
      Merge · eac26b89
      Martin Hansson authored
      eac26b89
    • Martin Hansson's avatar
      · 532697af
      Martin Hansson authored
      Bug#44653: Server crash noticed when executing random queries with partitions.
      
      When opening a table, it is imperative that the flag
      TABLE::auto_increment_field_not_null be false. But if an error occured during
      the creation of a table (e.g. the table exists already) with an auto_increment
      column and a BEFORE trigger that used the INSERT ... SELECT construct, the
      flag was not reset until after error checking. Thus if an error occured,
      select_insert::send_data() returned immediately and it was not reset (see * in
      pseudocode below).  Crash happened if the table was opened again. Fixed by
      resetting the flag after error checking.
      
      nested-loops_join():
        for each row in SELECT table {
          select_insert::send_data():
            if a values is supplied for AUTO_INCREMENT column
               table->auto_increment_field_not_null= TRUE
             else
               table->auto_increment_field_not_null= FALSE
             if (error)
               return 1; *
             if (table->auto_increment_field_not_null == FALSE)
               ...
             table->auto_increment_field_not_null == FALSE 
        }
      <-- table returned to table cache and later retrieved by open_table: 
      open_table():
        assert(table->auto_increment_field_not_null)
      
      
      mysql-test/r/trigger.result:
        Bug#44653: Test result
      mysql-test/t/trigger.test:
        Bug#44653: Test case
      sql/sql_insert.cc:
        Bug#44653: Fix: Make sure to unset this field before returning in case of error
      532697af
    • Georgi Kodinov's avatar
      automerge · 58bac103
      Georgi Kodinov authored
      58bac103
    • Georgi Kodinov's avatar
      automerge · 1d85591e
      Georgi Kodinov authored
      1d85591e
    • Georgi Kodinov's avatar
      automerge · 9b088006
      Georgi Kodinov authored
      9b088006
    • V Narayanan's avatar
      merging with mysql-5.1-bugteam · 96566888
      V Narayanan authored
      96566888
    • Georgi Kodinov's avatar
      automerge · 6eea47ab
      Georgi Kodinov authored
      6eea47ab
    • Satya B's avatar
      Applying InnoDB snashot 5.1-ss5343, Fixes BUG#45357 · 824dada3
      Satya B authored
      1. BUG#45357 - 5.1.35 crashes with Failing assertion: index->type & DICT_CLUSTERED
      
      2. Also fixes the compilation problem when the flag -DUNIV_MUST_NOT_INLINE
      
      Detailed revision comments:
      
      r5340 | marko | 2009-06-17 12:11:49 +0300 (Wed, 17 Jun 2009) | 4 lines
      branches/5.1: row_unlock_for_mysql(): When the clustered index is unknown,
      refuse to unlock the record.
      (Bug #45357, caused by the fix of Bug #39320).
      rb://132 approved by Sunny Bains.
      r5339 | marko | 2009-06-17 11:01:37 +0300 (Wed, 17 Jun 2009) | 2 lines
      branches/5.1: Add missing #include "mtr0log.h" so that the code compiles
      with -DUNIV_MUST_NOT_INLINE.
      824dada3
    • V Narayanan's avatar
      Bug#43572 Handle failures from hash_init · 39928102
      V Narayanan authored
      The merge from http://lists.mysql.com/commits/76678 caused the 
      growth_size parameter to the my_init_dynamic_array function to
      be ignored. This patch corrects the problem.
      
      mysys/hash.c:
        Bug#43572  Handle failures from hash_init
        
        Replacing the last parameter to my_init_dynamic_array with
        growth_size.
      39928102
  6. 19 Jun, 2009 15 commits
    • Matthias Leich's avatar
      eb6a9d47
    • Matthias Leich's avatar
      48fdae56
    • Matthias Leich's avatar
      Merge of latest changes into local tree · 8228b17b
      Matthias Leich authored
      8228b17b
    • Matthias Leich's avatar
    • Georgi Kodinov's avatar
      automerge · 1d03d6ef
      Georgi Kodinov authored
      1d03d6ef
    • Matthias Leich's avatar
    • Matthias Leich's avatar
      Fix for Bug#40545, Bug#40209, Bug#40618, Bug#38346 · 7578ce33
      Matthias Leich authored
        Details:
        - Limit the queries to character sets and collations
          which are most probably available in all build types.
          But try to preserve the intention of the tests.
        - Remove the variants adjusted to some build types.
      
        Note:
        1. The results of the review by Bar are included.
        2. I am not able to check the correctness of this patch
           on any existing build type and any MySQL version.
           So it could happen that the new test fails somewhere.
      7578ce33
    • Georgi Kodinov's avatar
      Bug #36654: mysqld_multi cannot start instances with different versions · e54a05f5
      Georgi Kodinov authored
      occasionally.
      
      mysql_multi can call mysqld_safe. In doing this it's not changing the 
      current working directory. This may cause confusion in the case where 
      mysqld_multi is handling instances of servers of different versions 
      and the current working directory is the installation directory of one 
      of these servers.
      
      Fixed by enhancing the meaning of basedir in [mysqldN] sections of 
      mysqld_multi. If specified, mysqld_multi will change the current 
      working directory to the basedir directory before starting the server 
      in mysqld_multi ... start ... and then change it back to what it was.
      
      scripts/mysqld_multi.sh:
        Bug #36654: optionally preserve, change and restore the cwd when 
        starting server instances
      e54a05f5
    • V Narayanan's avatar
      merging with mysql-5.0-bugteam · ae84ab40
      V Narayanan authored
      ae84ab40
    • V Narayanan's avatar
      Bug#43572 Handle failures from hash_init · d1ed43c9
      V Narayanan authored
            
      Failure to allocate memory for the hash->array element,
      caused hash_init to return without initializing the other
      members of the hash. Thus although the dynamic array
      buffer may be allocated at a later point in the code, the
      incompletely initialized hash caused fatal failures.
      
      This patch moves the initialization of the other members
      of the hash above the array allocation, so that the usage
      of this hash will not result in fatal failures.
      
      include/hash.h:
        Bug#43572 Handle failures from hash_init
        
        hash_inited is used to verify that the hash is
        valid. After the change induced by the current
        patch hash->array.buffer !=0 is not a valid check
        for this condition, since, the dynamic array can
        be allocated even at a later time. Bootstrap SQL
        script is setting some variables, which are
        actually not set due to this hash_inited issue.
        Thus we get empty grant tables.
        
        A better way to check if the hash is valid is
        to verify that hash->blength is greater than 0.
      mysys/hash.c:
        Bug#43572 Handle failures from hash_init
        
        Move the initialization of the other members
        of the hash above the array allocation, so that
        the usage of this hash will not result in fatal
        failures.
      d1ed43c9
    • Alfranio Correia's avatar
      Post-fix for BUG#43929. · 8af5d3d7
      Alfranio Correia authored
      8af5d3d7
    • Sergey Glukhov's avatar
      null merge · 186fbb6a
      Sergey Glukhov authored
      186fbb6a
    • Staale Smedseng's avatar
      Null-merge from 5.0-bugteam · 6b5ebb60
      Staale Smedseng authored
      6b5ebb60
    • Staale Smedseng's avatar
      Bug #32223 SETting max_allowed_packet variable · 4fbd8db9
      Staale Smedseng authored
            
      Inconsistent behavior of session variable max_allowed_packet 
      (and net_buffer_length); only assignment to the global variable 
      has any effect, without this being obvious to the user.
            
      The patch for Bug#22891 is backported to 5.0, making the two
      session variables read-only. As this is a backport to GA 
      software, the error used when trying to assign to the read-
      only variable is ER_UNKNOWN_ERROR. The error message is the 
      same as in 5.1+.
      
      mysql-test/t/variables.test:
        Tests are changed to account for the new semantics, and assignment to the read-only variables is added to test 
        the emission of the correct error message.
      sql/set_var.cc:
        Both max_allowed_packet and net_buffer_length are changed 
        to be of type sys_var_thd_ulong_session_readonly. ER_UNKNOWN_ERROR is used to indicate an attempt to assign 
        to an instance of a read-only variable.
      sql/set_var.h:
        Class sys_var_thd_ulong_session_readonly is added.
      4fbd8db9
    • Sergey Glukhov's avatar
      Bug#44834 strxnmov is expected to behave as you'd expect · 524191be
      Sergey Glukhov authored
      The problem: described in the bug report.
      The fix:
      --increase buffers where it's necessary
        (buffers which are used in stxnmov)
      --decrease buffer lengths which are used
      
      
      client/mysql.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      sql/ha_ndbcluster.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      sql/ha_ndbcluster_binlog.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      sql/handler.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      sql/log.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      sql/mysqld.cc:
        removed unnecessary line
      sql/parse_file.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      sql/sql_acl.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      sql/sql_base.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      sql/sql_db.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      sql/sql_delete.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      sql/sql_partition.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      sql/sql_rename.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      sql/sql_show.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      sql/sql_table.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      sql/sql_view.cc:
        --increase buffers where it's necessary
          (buffers which are used in stxnmov)
        --decrease buffer lengths which are used
          as argument for strxnmov function
      524191be
  7. 18 Jun, 2009 1 commit
    • Davi Arnaut's avatar
      Bug#42599: error: `pthread_setschedprio' was not declared in this scope · 74235327
      Davi Arnaut authored
      The problem was that a pthread.h header used by gcc did not
      declare the pthread_setscheprio, yet the function is implemented
      by the function is implemented, causing a autoconf check to pass
      and compilation with C++ to fail. The solution is to add a
      autoconf check to ensure that the function is properly declared.
      
      configure.in:
        Check that the pthread_setschedprio is declared.
      74235327