1. 20 Aug, 2008 7 commits
    • Mattias Jonsson's avatar
      Backport of patch for Bug#34604 (from 6.0) · d2e143f3
      Mattias Jonsson authored
      post push fix for bug#20129, test failed due to non existing
      source files.
      
      mysql-test/Makefile.am:
        Bug#20129: ALTER TABLE ... REPAIR PARTITION ... complains that
        partition is corrupt
        
        Test parts.partition_repair_myisam failed because the corrupted
        pre fabricated files was not included in the dist-file.
      mysql-test/suite/parts/r/partition_special_innodb.result:
        Bug#34604: hander::ha_rnd_end(): Assertion inited==RND failed
        
        updated result file
      mysql-test/suite/parts/t/partition_special_innodb-master.opt:
        Bug#34604: hander::ha_rnd_end(): Assertion inited==RND failed
        
        Added parameter to speed up the test.
        Set to 2 seconds to be working on slow machines.
      mysql-test/suite/parts/t/partition_special_innodb.test:
        Bug#34604: hander::ha_rnd_end(): Assertion inited==RND failed
        
        Added test for verifying the bug (without the patch in
        ha_partition.cc, this crashes a debug compiled server)
      sql/ha_partition.cc:
        Bug#34604: hander::ha_rnd_end(): Assertion inited==RND failed
        
        In some cases error was not properly propagated through
        ha_partition::rnd_next.
        
        Will now return the error code from the partitions rnd_next and
        update m_part_spec.start_part and m_last_part properly.
        This makes the inited state to be correct.
      d2e143f3
    • Sergey Glukhov's avatar
      5.0-bugteam->5.1-bugteam merge · e67fd24e
      Sergey Glukhov authored
      e67fd24e
    • Sergey Glukhov's avatar
      Bug#38291 memory corruption and server crash with view/sp/function · 1b39f28f
      Sergey Glukhov authored
      Send_field.org_col_name has broken value on secondary execution.
      It happens when result field is created from the field which belongs to view
      due to forgotten assignment of some Send_field attributes. 
      The fix:
      set Send_field.org_col_name,org_table_name with correct value during Send_field intialization.
      
      mysql-test/r/metadata.result:
        result fix
        The result file was changed because now forgotten attributes are properly set.
      mysql-test/r/sp.result:
        test result
      mysql-test/t/sp.test:
        test case
      sql/item.cc:
        Send_field.org_col_name has broken value on secondary execution.
        It happens when result field is created from the field which belongs to view
        due to forgotten assignment of some Send_field attributes. 
        The fix:
        set Send_field.org_col_name,org_table_name with correct value during Send_field intialization.
      tests/mysql_client_test.c:
        test case fix
        The test was changed because now forgotten attributes are properly set.
      1b39f28f
    • Sergey Glukhov's avatar
      487ff7a4
    • Sergey Petrunia's avatar
    • Sergey Petrunia's avatar
      Merge · a0636a15
      Sergey Petrunia authored
      a0636a15
    • Sergey Petrunia's avatar
      c59d5437
  2. 19 Aug, 2008 12 commits
    • Sven Sandberg's avatar
      Bug#35807 - INSTALL PLUGIN replicates row-based, but not stmt-based · 6fa28d26
      Sven Sandberg authored
      INSTALL PLUGIN and UNINSTALL PLUGIN worked with statement-based and
      mixed-mode replication only, but not with row-based replication.
      
      There is no statement-based replication of these statements.
      But there was row-based replication of the inserts and deletes
      to and from the mysql.plugin table.
      
      The fix is to suppress binlogging during insert and delete to
      and from the mysql.plugin table.
      
      
      mysql-test/suite/rpl/r/rpl_plugin_load.result:
        new result file
      mysql-test/suite/rpl/t/rpl_plugin_load-master.opt:
        new opt file
      mysql-test/suite/rpl/t/rpl_plugin_load-slave.opt:
        new opt file
      mysql-test/suite/rpl/t/rpl_plugin_load.test:
        new test
      sql/sql_plugin.cc:
        Suppress binlogging during insert and delete to/from the
        mysql.plugin table.
      6fa28d26
    • Tatiana A. Nurnberg's avatar
      auto-merged · 5e28432c
      Tatiana A. Nurnberg authored
      5e28432c
    • Tatiana A. Nurnberg's avatar
      Bug#35616: memory overrun on 64-bit linux on setting large values for keybuffer-size · bd727441
      Tatiana A. Nurnberg authored
      We could allocate chunks larger than 4GB, but did our
      size-accounting in 32-bit values. This could lead to
      spurious warnings, inaccurate accounting, and, in
      theory, data loss.
        
      Affected: 64-bit platforms. Debug-build (with safemalloc).
      At least one buffer larger than 4GB. For potential data
      loss, a re-alloc on such a buffer would be necessary.
      
      
      mysys/my_static.c:
        Make memory-accounting 64-bit safe.
      mysys/my_static.h:
        Make memory-accounting 64-bit safe.
        Move in struct for better alignment when 64-bit.
      bd727441
    • Mattias Jonsson's avatar
      89328c8c
    • Sergey Petrunia's avatar
      Merge · 48713952
      Sergey Petrunia authored
      48713952
    • Georgi Kodinov's avatar
      Bug#36638: fixing a failing test case. · 470ac487
      Georgi Kodinov authored
      470ac487
    • Sergey Petrunia's avatar
      BUG#36135: void Diagnostics_area::set_eof_status(THD*): Assertion `! is_set()' failed. · 9427feac
      Sergey Petrunia authored
        - Before sending EOF, check if we've already sent an error.
      
      mysql-test/r/subselect3.result:
        BUG#36135: void Diagnostics_area::set_eof_status(THD*): Assertion `! is_set()' failed.
        - Testcase
      mysql-test/t/subselect3.test:
        BUG#36135: void Diagnostics_area::set_eof_status(THD*): Assertion `! is_set()' failed.
        - Testcase
      sql/sql_class.cc:
        BUG#36135: void Diagnostics_area::set_eof_status(THD*): Assertion `! is_set()' failed.
        - Before sending EOF, check if we've already sent an error.
      9427feac
    • Georgi Kodinov's avatar
      merged 5.0-bugteam to 5.1-bugteam · 9bfe9daa
      Georgi Kodinov authored
      9bfe9daa
    • Georgi Kodinov's avatar
      merged 5.0-main to 5.0-bugteam · 6fbbb39e
      Georgi Kodinov authored
      6fbbb39e
    • Georgi Kodinov's avatar
      Bug#38195: Incorrect handling of aggregate functions when loose index scan · 3a296beb
      Georgi Kodinov authored
      is used causes server crash.
        Revert the fix : unstable test case revealed by pushbuild
      3a296beb
    • Mattias Jonsson's avatar
      merge · bdefa12c
      Mattias Jonsson authored
      bdefa12c
    • Mattias Jonsson's avatar
      Post push fix for valgrind warning in ha_partition.cc · e1f74adb
      Mattias Jonsson authored
      Bug#35161
      Fixed memory leak when failing to open a partition.
      
      Bug#20129
      Added tests for verifying REPAIR PARTITION.
      
      mysql-test/std_data/parts/t1_will_crash#P#p1_first_1024.MYD:
        Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working
        
        (see mysql-test/suite/parts/t/partition_repair_myisam.test
        Created by:
        CREATE TABLE t1_will_crash (
          a VARCHAR(255),
          b INT,
          c LONGTEXT,
          PRIMARY KEY (a, b))ENGINE=MyISAM
        PARTITION BY HASH (b)
        PARTITIONS 7;
        INSERT INTO t1_will_crash VALUES ...
        and then
        head -c 1024 var/master-data/test/t1_will_crash#P#p1.MYD
        into this file.
      mysql-test/std_data/parts/t1_will_crash#P#p2.MYD:
        Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working
        
        (see mysql-test/suite/parts/t/partition_repair_myisam.test)
        copy of file right after _mi_mark_file_changed in mi_write
        was done.
      mysql-test/std_data/parts/t1_will_crash#P#p2.MYI:
        Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working
        
        (see mysql-test/suite/parts/t/partition_repair_myisam.test)
        copy of file right after _mi_mark_file_changed in mi_write
        was done.
      mysql-test/std_data/parts/t1_will_crash#P#p3.MYI:
        Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working
        
        (see mysql-test/suite/parts/t/partition_repair_myisam.test)
        copy of file right after *share->write_record was done.
      mysql-test/std_data/parts/t1_will_crash#P#p4.MYI:
        Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working
        
        (see mysql-test/suite/parts/t/partition_repair_myisam.test)
        copy of file right after flush_cached_blocks
      mysql-test/std_data/parts/t1_will_crash#P#p6.MYD:
        Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working
        
        (see mysql-test/suite/parts/t/partition_repair_myisam.test)
        copy of file right after _mi_write_part_record in
        write_dynamic_record returned for the first time.
      mysql-test/std_data/parts/t1_will_crash#P#p6_2.MYD:
        Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working
        
        (see mysql-test/suite/parts/t/partition_repair_myisam.test)
        copy of file right after _mi_write_part_record in
        write_dynamic_record returned for the second time.
      mysql-test/std_data/parts/t1_will_crash#P#p6_3.MYD:
        Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working
        
        (see mysql-test/suite/parts/t/partition_repair_myisam.test)
        copy of file right after _mi_write_part_record in
        write_dynamic_record returned for the third time.
        (data file fully updated).
      mysql-test/suite/parts/r/partition_recover_myisam.result:
        Bug#35161
        
        Renamed since it was a test of recover
        and to make repair free for use without
        --myisam-recover
      mysql-test/suite/parts/r/partition_repair_myisam.result:
        Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working
        
        New result file for testing CHECK/REPAIR of partitioned tables
      mysql-test/suite/parts/t/partition_recover_myisam-master.opt:
        Bug#35161
        
        Renamed since it was a test of recover
        and to make repair free for use without
        --myisam-recover
      mysql-test/suite/parts/t/partition_recover_myisam.test:
        Bug#35161
        
        Renamed since it was a test of recover
        and to make repair free for use without
        --myisam-recover
      mysql-test/suite/parts/t/partition_repair_myisam.test:
        Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working
        
        New test file for testing CHECK/REPAIR of partitioned tables
      sql/ha_partition.cc:
        Bug#35161
        
        Fix of memory leak when open of partition failed.
      e1f74adb
  3. 18 Aug, 2008 9 commits
  4. 15 Aug, 2008 12 commits
    • Chad MILLER's avatar
      Fix failing test case, re: bug 38195. · 9431ee3f
      Chad MILLER authored
      9431ee3f
    • Chad MILLER's avatar
      Merge from 5.0-bugteam. · 7401c1a5
      Chad MILLER authored
      7401c1a5
    • Chad MILLER's avatar
      Bug#37301 Length and Max_length differ with no obvious reason(2nd version) · 63255c04
      Chad MILLER authored
      Length value is the length of the field,
      Max_length is the length of the field value.
      So Max_length can not be more than Length.
      The fix: fixed calculation of the Item_empty_string item length
      
      (Patch applied and queued on demand of Trudy/Davi.)
      
      sql/item.h:
        fixed calculation of the item length
      sql/sql_show.cc:
        removed unnecessary code
      63255c04
    • Chad MILLER's avatar
      Merge from 5.0-bugteam. · 996f2808
      Chad MILLER authored
      996f2808
    • Chad MILLER's avatar
      Bug#36270: incorrect calculation result - works in 4.1 but not in 5.0 or 5.1 · cebc2bf6
      Chad MILLER authored
      When the fractional part in a multiplication of DECIMALs
      overflowed, we truncated the first operand rather than the
      longest. Now truncating least significant places instead
      for more precise multiplications.
      
      (Queuing at demand of Trudy/Davi.)
      
      mysql-test/r/type_newdecimal.result:
        show that if we need to truncate the scale of an operand, we pick the
        right one (that is, we discard the least significant decimal places)
      mysql-test/t/type_newdecimal.test:
        show that if we need to truncate the scale of an operand, we pick the
        right one (that is, we discard the least significant decimal places)
      strings/decimal.c:
        when needing to disregard fractional parts, pick the least
        significant ones
      cebc2bf6
    • Chad MILLER's avatar
      Merge from 5.0-bugteam. · 037bc7e7
      Chad MILLER authored
      037bc7e7
    • Chad MILLER's avatar
      Bug#21579 - innodb_concurrent random failures with varying differences · 2fe4cd57
      Chad MILLER authored
      Due to unknown changes the test failed in some ways.
      
      Fixed by checking the test case in detail, commenting the expected behavior,
      and fixing error directives.
      
      In the course of the analyze unneeded get_lock()/release_lock() use,
      unneeded send/reap use, and unneeded sleeps were removed. The lock wait
      timeout was reduced to 1 second, so that this is no big-test any more.
      
      The test was split into two parts, one running the tests with
      --innodb_locks_unsafe_for_binlog, the other part without.
      The main part (include/concurrent.inc) conditionally expects
      lock wait timeouts based on the value of the system variable
      innodb_locks_unsafe_for_binlog.
      
      The major part of the patch comes from Kristofer Pettersson.
      
      (Chad queues this patch on demand by Trudy/Davi.)
      2fe4cd57
    • Chad MILLER's avatar
      Bug#38272: timestamps fields incorrectly defaulted on \ · 6e602d6c
      Chad MILLER authored
      	update accross partitions.
            
      It's not Innodb-specific bug.
      ha_partition::update_row() didn't set
      table->timestamp_field_type= TIMESTAMP_NO_AUTO_SET when
      orig_timestamp_type == TIMESTAMP_AUTO_SET_ON_INSERT.
      
      So that a partition sets the timestamp field when a record
      is moved to a different partition.
      
      Fixed by doing '= TIMESTAMP_NO_AUTO_SET' unconditionally.
      Also ha_partition::write_row() is fixed in same way as now
      Field_timestamp::set() is called twice in SET_ON_INSERT case.
      
      (Chad queues this patch on demand by Trudy/Davi.)
      
      mysql-test/r/partition.result:
        Bug#38272 timestamps fields incorrectly defaulted on update accross partitions.
        test result
      mysql-test/t/partition.test:
        Bug#38272 timestamps fields incorrectly defaulted on update accross partitions.
        test case
      sql/ha_partition.cc:
        Bug#38272 timestamps fields incorrectly defaulted on update accross partitions.
        Do table->timestamp_field_type= TIMESTAMP_NO_AUTO_SET unconditionally
        in ha_partition::update_row and ::write_row()
      6e602d6c
    • Chad MILLER's avatar
    • Davi Arnaut's avatar
      Merge from mysql-5.1 main. · 0fc838d5
      Davi Arnaut authored
      0fc838d5
    • Davi Arnaut's avatar
      Bug#38560: valgrind warnings on PB due to query profiling · db87b3ce
      Davi Arnaut authored
      Fix for a valgrind warning due to a jump on a uninitialized
      variable. The problem was that the sql profile preparation
      function wasn't being called for all possible code paths
      of query execution.
      
      The solution is to ensure that query profiling is always
      started before dispatch_command function is called and to
      explicitly call the profile preparation function on bootstrap.
      
      
      
      sql/sql_parse.cc:
        Finish query profiling properly when executing bootstrap commands.
        Add query profiling to execute_init_command as it calls dispatch_command.
      db87b3ce
    • Sergey Glukhov's avatar
      Bug#36638 mysqld crashes when open file limit is passed and general query log enabled · 5aff1f3d
      Sergey Glukhov authored
      The problem:
      CSV storage engine open function returns success even
      thought it failed to open the data file
      The fix:
      return error
      Additional fixes:
      added MY_WME to my_open to avoid mysterious error message
      free share struct if open the file was unsuccessful
      
      
      mysql-test/r/csv.result:
        test result
      mysql-test/t/csv.test:
        test case
      storage/csv/ha_tina.cc:
        The problem:
        CSV storage engine open function returns success even
        thought it failed to open the data file
        The fix:
        return error
        Additional fixes:
        added MY_WME to my_open to avoid mysterious error message
        free share struct if open the file was unsuccessful
      5aff1f3d