1. 28 Mar, 2008 3 commits
  2. 27 Mar, 2008 3 commits
    • unknown's avatar
      Merge witty.:/Users/mattiasj/clones/bug21413-50-engines · 0fa61bb8
      unknown authored
      into  witty.:/Users/mattiasj/clones/bug21413-51-engines
      
      
      sql/sql_insert.cc:
        manual merge
      0fa61bb8
    • unknown's avatar
      Merge witty.:/Users/mattiasj/Public/shared-vms/bug21413-41-engines · da9db4ed
      unknown authored
      into  witty.:/Users/mattiasj/clones/bug21413-50-engines
      
      
      sql/sql_insert.cc:
        Manual merge
      da9db4ed
    • unknown's avatar
      Recommit of antonys previous commit. · fb27979e
      unknown authored
      Bug#21413
      "Engine table handler used by multiple threads in REPLACE DELAYED"
      When executing a REPLACE DELAYED statement, the storage engine
      ::extra() method was invoked by a different thread than the thread
      which has acquired the handler instance.
      
      This did not cause problems within the current server and with
      the current storage engines.
      But it has the potential to confuse future storage engines.
      
      Added code to avoid surplus calls to extra() method in case of DELAYED
      which avoids calling storage engine from a different thread than
      expected.
      
      No test case.
      This change does not change behavior in conjunction with current
      storage engines. So it cannot be tested by the regression test suite.
      
      
      sql/sql_insert.cc:
        Bug#21413
        When performing DELAYED operations, we should not call
        the storage engine methods from the 'wrong' context.
        Ensure that the calls to the methods are appropiately guarded
        by either moving calls to sections where the lock_type is checked.
        No need to copy all elements of TABLE_LIST when opening table
        using open_ltable().
      fb27979e
  3. 25 Mar, 2008 4 commits
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/mysql/BUG35509/mysql-5.0-engines · 3e28618f
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG34768/mysql-5.1-engines
      
      
      mysql-test/t/federated.test:
        Auto merged
      storage/federated/ha_federated.cc:
        Use local.
      3e28618f
    • unknown's avatar
      BUG#34789 - drop server/create server leaks memory ! · 811fb145
      unknown authored
      BUG#34790 - 'create server' doesn't handle out of memory scenario
                  well enough
      
      This is an addition to fixes for these bugs, which makes gcov
      happy.
      
      
      mysql-test/r/federated.result:
        CREATE SERVER is only tested by federated_server.test, which requires
        big-test option. Added dummy test case to make gcov happy.
      mysql-test/t/federated.test:
        CREATE SERVER is only tested by federated_server.test, which requires
        big-test option. Added dummy test case to make gcov happy.
      sql/sql_parse.cc:
        Make gcov happy.
      811fb145
    • unknown's avatar
      BUG#34768 - nondeterministic INSERT using LIMIT logged in stmt mode · 2b2ae926
      unknown authored
                  if binlog_format=mixed
      
      Addition to fix for BUG#34768: fixed test case failures discovered
      by pushbuild.
      
      
      mysql-test/suite/binlog/r/binlog_stm_ps.result:
        Fixed binlog_stm_ps failure when binlog format is statement:
        - this test case makes sence only if binlog format is statement,
          thus execute it only in this mode;
        - added a warning that insert ... select ... limit is not safe
          to execute in statement mode.
      mysql-test/suite/binlog/t/binlog_stm_ps.test:
        Fixed binlog_stm_ps failure when binlog format is statement:
        - this test case makes sence only if binlog format is statement,
          thus execute it only in this mode;
        - added a warning that insert ... select ... limit is not safe
          to execute in statement mode.
      mysql-test/suite/rpl/t/rpl_optimize.test:
        rpl_optimize test may be executed in various binlog format modes.
        In statement mode delete ... limit issues a warning, in mixed and
        row modes it does not.
        
        Fixed a test case so it is still possible to execute it in all binlog
        format modes by ignoring delete ... limit warnings.
      mysql-test/suite/rpl/t/rpl_user_variables.test:
        rpl_user_variables test may be executed in various binlog format modes.
        In statement mode insert ... select ... limit issues a warning,
        in mixed and row modes it does not.
        
        Fixed a test case so it is still possible to execute it in all binlog
        format modes by ignoring insert ... select ... limit warnings.
      2b2ae926
    • unknown's avatar
      BUG#35509 - Federated leaks memory when connecting to · 5ad505dd
      unknown authored
                  localhost/default port
      
      When creating federated table that points to unspecified host or
      localhost on unspecified port or port is 0, small memory leak occurs.
      
      This happens because we make a copy of unix socket path, which is
      never freed.
      
      With this fix we do not make a copy of unix socket path, instead
      share->socket points to MYSQL_UNIX_ADDR constant directly.
      
      This fix is covered by a test case for BUG34788.
      
      Affects 5.0 only.
      
      
      mysql-test/t/federated.test:
        A test case for BUG#35509.
      sql/ha_federated.cc:
        When creating federated table we call parse_url() to check if connect
        string is correct. parse_url() may make a copy of unix socket path if
        port is not specified or 0 and host is not specified or 'localhost'.
        This copy is never freed.
        
        As there is no need to make a copy of unix socket path, let
        share->socket point to MYSQL_UNIX_ADDR directly.
      5ad505dd
  4. 21 Mar, 2008 4 commits
  5. 20 Mar, 2008 4 commits
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/bk/mysql-5.1-engines · 0c4f8455
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG34768/mysql-5.1-engines
      
      
      sql/sql_insert.cc:
        Auto merged
      0c4f8455
    • unknown's avatar
      BUG#34788 - malformed federated connection url is not handled · 8030bdfc
      unknown authored
                  correctly - crashes server !
      
      Creating federated table with connect string containing empty
      (zero-length) host name and port is evaluated as 0 (port is
      incorrect, omitted or 0) crashes server.
      
      This happens because federated calls strcmp() with NULL pointer.
      
      Fixed by avoiding strcmp() call if hostname is set to NULL.
      
      
      mysql-test/r/federated.result:
        A test case for BUG#34788.
      mysql-test/t/federated.test:
        A test case for BUG#34788.
      sql/ha_federated.cc:
        Fixed that parse_url() may call strcmp() with NULL pointer.
      8030bdfc
    • unknown's avatar
      BUG#34789 - drop server/create server leaks memory ! · b31a1622
      unknown authored
      When CREATE SERVER is issued, it allocates memory on memory root
      to store cached server structure. When DROP SERVER is issued,
      it doesn't release this memory, as it is impossible with the
      memory root.
      
      We use the same allocation strategy for plugins and acl. The problem
      here that there was no way (except for the server restart) to force
      'servers' code to release this memory.
      
      With this fix it is possible to release unused server cache memory
      by FLUSH PRIVILEGES.
      
      No test case for this fix.
      
      
      sql/sql_parse.cc:
        Reload servers table on FLUSH PRIVILEGES.
      sql/sql_servers.cc:
        Instead of just marking memory blocks as unused, release memory
        used by servers cache and initialize new memory root.
        
        This is needed for FLUSH PRIVILEGES to release unused memory
        blocks.
      b31a1622
    • unknown's avatar
      BUG#34790 - 'create server' doesn't handle out of memory scenario · 95023bb9
      unknown authored
                  well enough
      
      CREATE SERVER may cause server crash if there is not enough memory
      to execute this operation.
      
      Fixed that create_server() and prepare_server_struct_for_insert()
      didn't check return value of functions that allocate memory.
      
      As this is out of memory issue fix, not test case available.
      
      
      sql/sql_servers.cc:
        Fixed that create_server() and prepare_server_struct_for_insert()
        didn't check return value of functions that allocate memory.
      95023bb9
  6. 18 Mar, 2008 3 commits
    • unknown's avatar
      BUG#34768 - nondeterministic INSERT using LIMIT logged in stmt mode if · 1626b42c
      unknown authored
                  binlog_format=mixed
      
      Statement-based replication of DELETE ... LIMIT, UPDATE ... LIMIT,
      INSERT ... SELECT ... LIMIT is not safe as order of rows is not
      defined.
      
      With this fix, we issue a warning that this statement is not safe to
      replicate in statement mode, or go to row-based mode in mixed mode.
      
      Note that we may consider a statement as safe if ORDER BY primary_key
      is present. However it may confuse users to see very similiar statements
      replicated differently.
      
      Note 2: regular UPDATE statement (w/o LIMIT) is unsafe as well, but
      this patch doesn't address this issue. See comment from Kristian
      posted 18 Mar 10:55.
      
      
      mysql-test/suite/binlog/r/binlog_stm_ps.result:
        Updated a test case according to fix for BUG#34768:
        INSERT ... SELECT ... LIMIT is now replicated in row mode.
      mysql-test/suite/binlog/r/binlog_unsafe.result:
        A test case for BUG#34768.
      mysql-test/suite/binlog/t/binlog_unsafe.test:
        A test case for BUG#34768.
      sql/sql_delete.cc:
        Statement-based replication of DELETE ... LIMIT is not safe as order of
        rows is not defined, so in mixed mode we go to row-based.
      sql/sql_insert.cc:
        Statement-based replication of INSERT ... SELECT ... LIMIT is not safe
        as order of rows is not defined, so in mixed mode we go to row-based.
      sql/sql_update.cc:
        Statement-based replication of UPDATE ... LIMIT is not safe as order of
        rows is not defined, so in mixed mode we go to row-based.
      1626b42c
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/mysql/cov/mysql-5.0-engines · ca629f86
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/cov/mysql-5.1-engines
      
      
      sql/log_event.cc:
        Auto merged
      sql/repl_failsafe.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      ca629f86
    • unknown's avatar
      Make gcov happy. · 7343db29
      unknown authored
      7343db29
  7. 17 Mar, 2008 3 commits
    • unknown's avatar
      Bug#35306: partition_basic_symlink test failures · 7a22a8a9
      unknown authored
      Have changed the DATA/INDEX dir to not be a database dir.
      (and made some changes for better result files.)
      
      
      mysql-test/suite/parts/inc/partition_basic_symlink.inc:
        Bug#35306: partition_basic_symlink test failures
        
        after bug 32167 it is not allowed with DATA/INDEX DIR in any database
        directory.
        
        remade the inc-files to make better use of each other (less duplicate tests)
      mysql-test/suite/parts/inc/partition_directory.inc:
        Removed disable/enable_query_log for better result files
      mysql-test/suite/parts/inc/partition_layout_check1.inc:
        changed DATA/INDEX DIR
      mysql-test/suite/parts/inc/partition_layout_check2.inc:
        added check with_directories
      mysql-test/suite/parts/inc/partition_methods1.inc:
        Removed disable/enable_query_log for better result files
      mysql-test/suite/parts/inc/partition_methods2.inc:
        Removed disable/enable_query_log for better result files
        Added with_directories for testing of DATA/INDEX DIR
      mysql-test/suite/parts/r/partition_basic_innodb.result:
        Updated test result due to test case changes
      mysql-test/suite/parts/r/partition_basic_myisam.result:
        Updated test result due to test case changes
      mysql-test/suite/parts/r/partition_basic_symlink_innodb.result:
        Updated test result due to test case changes
      mysql-test/suite/parts/r/partition_basic_symlink_myisam.result:
        Updated test result due to test case changes
      mysql-test/suite/parts/t/disabled.def:
        Bug#35306: parts.partition_basic_symlink test failures
        Enable the test again since the have been fixed
      mysql-test/suite/parts/t/partition_basic_innodb.test:
        Added check for table files.
      mysql-test/suite/parts/t/partition_basic_myisam.test:
        removing dependency of symlink
        (test exists now in parts.partition_basic_symlink_myisam)
      mysql-test/suite/parts/t/partition_basic_symlink_innodb.test:
        Bug#35306: partition_basic_symlink test failures
        
        Removed old test (since DATA/INDEX DIRECTORY is not supported in InnoDB)
        and replaced it with a simple test that altering a partitioned innodb
        with DATA/INDEX DIR to MyISAM, would use the DATA/INDEX DIR.
      7a22a8a9
    • unknown's avatar
      Bug#35305: partition_symlink test failures · 166357b5
      unknown authored
      Updated the test due to bug 32167
      
      Corrected spelling of error message
      
      
      mysql-test/r/partition_not_windows.result:
        Updated test result due to test case changes and corrected spelling error
      mysql-test/r/partition_symlink.result:
        Bug#35305: partition_symlink test failure
        
        Updated test result due to test case changes
      mysql-test/r/symlink.result:
        Updated test result due to test case changes and corrected spelling error
      mysql-test/t/disabled.def:
        Bug#35305: partition_symlink test failure
        
        Enable the test after it has been fixed
      mysql-test/t/partition_not_windows.test:
        Removed disable/enable_query_log for better result files
      mysql-test/t/partition_symlink.test:
        Bug#35305: partition_symlink test failure
        
        Changes due to bug 32167
      mysql-test/t/symlink.test:
        using replace_result instead of disable_query_log
      sql/partition_info.cc:
        corrected spelling
      sql/sql_parse.cc:
        corrected spelling
      166357b5
    • unknown's avatar
      Valgrind warnings found after bug#32943 and after merge from -main · 1bb10ccf
      unknown authored
      into -engines tree.
      
      hander::table_share was not updated after changing table->s.
      
      
      sql/ha_partition.cc:
        Valgrind warning after merge -main -> -engines, after bug#32943
        
        change_table_ptr can happen in a middle of
        alter table rename/drop/... partition
        
        the newly created partitions must get the updated table_share too.
      sql/sql_base.cc:
        Bug#32943 was missing a call to change_table_ptr, this was found by valgrind
        after a merge from -main to -engines.
      1bb10ccf
  8. 15 Mar, 2008 3 commits
    • unknown's avatar
      make pushbuild green · d3a0f852
      unknown authored
      
      mysql-test/t/disabled.def:
        make pushbuild green, entry added to wrong disabled.def file.
      d3a0f852
    • unknown's avatar
      make pushbuild green · 6bceb154
      unknown authored
      6bceb154
    • unknown's avatar
      fix results after merge · 6bc335e6
      unknown authored
      
      mysql-test/r/partition_not_windows.result:
        fix results from merge
      mysql-test/t/disabled.def:
        disable test partition_symlink
      6bc335e6
  9. 14 Mar, 2008 13 commits
    • unknown's avatar
      Merge acurtis@bk-internal.mysql.com:/home/bk/mysql-5.1-engines · 4f72bf0e
      unknown authored
      into  pcg5ppc.xiphis.org:/Network/Servers/anubis.xiphis.org/home/antony/work/merge.20080307/mysql-5.1
      
      
      sql/sql_yacc.yy:
        Auto merged
      4f72bf0e
    • unknown's avatar
      Merge acurtis@bk-internal.mysql.com:/home/bk/mysql-5.0-engines · eda0b52c
      unknown authored
      into  pcg5ppc.xiphis.org:/Network/Servers/anubis.xiphis.org/home/antony/work/merge.20080307/mysql-5.0
      
      
      sql/sql_yacc.yy:
        Auto merged
      eda0b52c
    • unknown's avatar
      BUG#28248 - mysqldump results with MERGE ... UNION=() cannot be executed · 931558ee
      unknown authored
      After merge fix.
      
      
      931558ee
    • unknown's avatar
      Merge pcg5ppc.xiphis.org:/Network/Servers/anubis.xiphis.org/home/antony/work/mysql-5.1-engines · 51cb15ff
      unknown authored
      into  pcg5ppc.xiphis.org:/Network/Servers/anubis.xiphis.org/home/antony/work/merge.20080307/mysql-5.1
      
      
      51cb15ff
    • unknown's avatar
      Merge pcg5ppc.xiphis.org:/Network/Servers/anubis.xiphis.org/home/antony/work/mysql-5.0-engines · 3834f421
      unknown authored
      into  pcg5ppc.xiphis.org:/Network/Servers/anubis.xiphis.org/home/antony/work/merge.20080307/mysql-5.0
      
      
      3834f421
    • unknown's avatar
      Merge... · b6496ef1
      unknown authored
      Merge pcg5ppc.xiphis.org:/Network/Servers/anubis.xiphis.org/home/antony/work/merge.20080307/mysql-5.0
      into  pcg5ppc.xiphis.org:/Network/Servers/anubis.xiphis.org/home/antony/work/merge.20080307/mysql-5.1
      
      
      mysql-test/r/func_misc.result:
        Auto merged
      mysql-test/r/myisam.result:
        Auto merged
      mysql-test/t/func_misc.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      b6496ef1
    • unknown's avatar
      Merge pcg5ppc.xiphis.org:/Network/Servers/anubis.xiphis.org/home/antony/work/mysql-5.1 · 4801c682
      unknown authored
      into  pcg5ppc.xiphis.org:/Network/Servers/anubis.xiphis.org/home/antony/work/merge.20080307/mysql-5.1
      
      
      configure.in:
        Auto merged
      mysql-test/r/func_misc.result:
        Auto merged
      mysql-test/r/myisam.result:
        Auto merged
      mysql-test/r/partition.result:
        Auto merged
      mysql-test/r/partition_symlink.result:
        Auto merged
      mysql-test/t/func_misc.test:
        Auto merged
      mysql-test/t/partition.test:
        Auto merged
      sql/field.cc:
        Auto merged
      sql/field.h:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/item_func.h:
        Auto merged
      sql/log.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/partition_info.cc:
        Auto merged
      sql/partition_info.h:
        Auto merged
      sql/rpl_rli.cc:
        Auto merged
      sql/sql_plugin.cc:
        Auto merged
      sql/sql_show.cc:
        Auto merged
      mysql-test/r/symlink.result:
        manual merge
      mysql-test/suite/parts/inc/partition_basic.inc:
        manual merge
      mysql-test/suite/parts/r/partition_basic_innodb.result:
        manual merge
      mysql-test/suite/parts/r/partition_basic_myisam.result:
        manual merge
      mysql-test/t/partition_symlink.test:
        manual merge
      mysql-test/t/symlink.test:
        manual merge
      sql/sql_parse.cc:
        manual merge
      4801c682
    • unknown's avatar
      Merge pcg5ppc.xiphis.org:/Network/Servers/anubis.xiphis.org/home/antony/work/mysql-5.0 · b09254f0
      unknown authored
      into  pcg5ppc.xiphis.org:/Network/Servers/anubis.xiphis.org/home/antony/work/merge.20080307/mysql-5.0
      
      
      mysql-test/r/func_misc.result:
        Auto merged
      mysql-test/r/myisam.result:
        Auto merged
      mysql-test/t/func_misc.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      b09254f0
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/mysql/BUG28248/mysql-5.0-engines · 3beb2d1a
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG28248/mysql-5.1-engines
      
      
      mysql-test/r/merge.result:
        Auto merged
      mysql-test/t/merge.test:
        Auto merged
      storage/myisammrg/ha_myisammrg.cc:
        Auto merged
      sql/sql_yacc.yy:
        After merge fix.
      3beb2d1a
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/bk/mysql-5.0-engines · 7e01efff
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG28248/mysql-5.0-engines
      
      
      7e01efff
    • unknown's avatar
      BUG#28248 - mysqldump results with MERGE ... UNION=() cannot be executed · 196b616a
      unknown authored
      When there are no underlying tables specified for a merge table,
      SHOW CREATE TABLE outputs a statement that cannot be executed. The
      same is true for mysqldump (it generates dumps that cannot be
      executed).
      
      This happens because SQL parser does not accept empty UNION() clause.
      
      This patch changes the following:
      - it is now possible to execute CREATE/ALTER statement with
        empty UNION() clause.
      - the same as above, but still worth noting: it is now possible to
        remove underlying tables mapping using ALTER TABLE ... UNION=().
      - SHOW CREATE TABLE does not output UNION() clause if there are
        no underlying tables specified for a merge table. This makes
        mysqldump slightly smaller.
      
      
      mysql-test/r/merge.result:
        A test case for BUG#28248.
      mysql-test/t/merge.test:
        A test case for BUG#28248.
      sql/ha_myisammrg.cc:
        Do not output UNION clause in SHOW CREATE TABLE, when there are
        no underlying tables defined.
      sql/sql_yacc.yy:
        Make underlying table list for MERGE engine optional.
        
        As for MERGE engine empty underlying tables list is valid, it should
        be valid for the parser as well.
        
        This change is mostly needed to restore dumps made by earlier MySQL
        versions. Also with this fix it is possible to remove underlying
        tables mapping by using ALTER TABLE ... UNION=().
      196b616a
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/mysql/BUG13861/mysql-5.0-engines · 4afe3156
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG13861/mysql-5.1-engines
      
      
      mysql-test/suite/rpl/r/rpl_dual_pos_advance.result:
        Auto merged
      mysql-test/suite/rpl/t/rpl_dual_pos_advance.test:
        SCCS merged
      4afe3156
    • unknown's avatar
      BUG#13861 - START SLAVE UNTIL may stop 1 evnt too late if · 3ec86767
      unknown authored
                  log-slave-updates and circul repl
      
      This is a test case fix for BUG#13861.
      
      
      mysql-test/r/rpl_dual_pos_advance.result:
        Fix for a test case for BUG#13861.
      mysql-test/t/rpl_dual_pos_advance.test:
        Fix for a test case for BUG#13861.
        
        master_pos_wait() requires slave sql thread running. But it is not
        guaranteed for this test case. As we use start slave until it may
        execute all events and shutdown before master_pos_wait() is started.
        
        On the other hand it is safe just to wait for slave to stop here,
        as start slave returns _after_ sql thread is started.
      3ec86767