1. 08 Mar, 2007 4 commits
  2. 07 Mar, 2007 19 commits
    • unknown's avatar
      Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/51 · e7362d5c
      unknown authored
      into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/51
      
      
      mysql-test/r/trigger.result:
        Auto merged
      mysql-test/r/view.result:
        Auto merged
      mysql-test/t/trigger.test:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/sp_head.cc:
        Auto merged
      sql/sp_head.h:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_trigger.cc:
        Auto merged
      sql/sql_update.cc:
        Auto merged
      sql/table.cc:
        Auto merged
      sql/table.h:
        Auto merged
      e7362d5c
    • unknown's avatar
      Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/50 · 9baec333
      unknown authored
      into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/51
      
      
      BitKeeper/deleted/.del-bdb_gis.result:
        Use local
      9baec333
    • unknown's avatar
      Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/50 · 30c1622e
      unknown authored
      into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/50
      
      
      sql/mysqld.cc:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      30c1622e
    • unknown's avatar
      5501a291
    • unknown's avatar
      Merge recycle.(none):/src/bug25222/my50-bug25222 · 744ec30f
      unknown authored
      into  recycle.(none):/src/bug25222/my51-bug25222
      
      
      mysys/my_open.c:
        Auto merged
      744ec30f
    • unknown's avatar
      Bug#25222 Win32 HANDLE leak in my_sopen() · 83def161
      unknown authored
      - When attempting to associate a Windows File handle to a C run-time file
      handle there is an upper bound.  Once reached, the newly created handles
      will cause a memory leak since they are not properly associated with a
      handle that can later be cleaned up.
      
      
      mysys/my_open.c:
        Bug#25222 Win32 HANDLE leak in my_sopen()
        - Check for failure in _open_osfhandle and close allocated HANDLE on failure.
      83def161
    • unknown's avatar
      A post merge fix. · d203b18e
      unknown authored
      d203b18e
    • unknown's avatar
      Merge bodhi.local:/opt/local/work/mysql-5.0-runtime · db3e45e6
      unknown authored
      into  bodhi.local:/opt/local/work/mysql-5.1-runtime
      
      
      sql/sql_lex.cc:
        Auto merged
      db3e45e6
    • unknown's avatar
      A fix for the windows build (harmless warning). · 4d6e16f2
      unknown authored
      
      sql/sql_lex.cc:
        A fix for the windows build.
      4d6e16f2
    • unknown's avatar
      Merge bodhi.local:/opt/local/work/mysql-5.0-26750 · 676b59cf
      unknown authored
      into  bodhi.local:/opt/local/work/mysql-5.1-runtime
      
      
      mysql-test/r/trigger.result:
        Auto merged
      mysql-test/r/view.result:
        Auto merged
      mysql-test/t/trigger.test:
        Auto merged
      sql/log_event.cc:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/sp_head.cc:
        Auto merged
      sql/sp_head.h:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      sql/sql_lex.cc:
        Auto merged
      sql/sql_lex.h:
        Auto merged
      sql/sql_trigger.cc:
        Auto merged
      sql/sql_update.cc:
        Auto merged
      sql/table.cc:
        Auto merged
      sql/table.h:
        Auto merged
      sql/sql_class.cc:
        Manual merge.
      sql/sql_class.h:
        Manual merge.
      sql/sql_parse.cc:
        Manual merge.
      sql/sql_prepare.cc:
        Manual merge.
      sql/sql_yacc.yy:
        Manual merge.
      676b59cf
    • unknown's avatar
      Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/50 · 6bd3d05e
      unknown authored
      into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/51
      
      
      BitKeeper/etc/ignore:
        auto-union
      client/mysql_upgrade.c:
        Auto merged
      client/mysqltest.c:
        Auto merged
      extra/comp_err.c:
        Auto merged
      include/my_time.h:
        Auto merged
      libmysql/libmysql.c:
        Auto merged
      mysql-test/extra/binlog_tests/ctype_cp932.test:
        Auto merged
      mysql-test/lib/mtr_misc.pl:
        Auto merged
      mysql-test/r/binlog_stm_ctype_cp932.result:
        Auto merged
      mysql-test/r/func_time.result:
        Auto merged
      mysql-test/r/innodb.result:
        Auto merged
      mysql-test/r/mysqlbinlog.result:
        Auto merged
      mysql-test/r/mysqltest.result:
        Auto merged
      mysql-test/r/sp.result:
        Auto merged
      mysql-test/r/trigger.result:
        Auto merged
      mysql-test/r/type_blob.result:
        Auto merged
      mysql-test/r/view.result:
        Auto merged
      mysql-test/t/func_time.test:
        Auto merged
      mysql-test/t/mysql.test:
        Auto merged
      mysql-test/t/mysqltest.test:
        Auto merged
      mysql-test/t/sp.test:
        Auto merged
      mysql-test/t/trigger.test:
        Auto merged
      sql/field.cc:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      sql/item_cmpfunc.h:
        Auto merged
      sql/item_geofunc.cc:
        Auto merged
      sql/item_strfunc.cc:
        Auto merged
      sql/log.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/set_var.cc:
        Auto merged
      sql/sp_head.cc:
        Auto merged
      sql/sp_head.h:
        Auto merged
      sql/spatial.cc:
        Auto merged
      sql/spatial.h:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_load.cc:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/sql_update.cc:
        Auto merged
      sql/table.cc:
        Auto merged
      sql/table.h:
        Auto merged
      sql-common/my_time.c:
        Auto merged
      sql/tztime.cc:
        Auto merged
      mysql-test/mysql-test-run.pl:
        Use local
      mysql-test/t/mysqlbinlog.test:
        Use local
      6bd3d05e
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime · 7f69b747
      unknown authored
      into  bodhi.local:/opt/local/work/mysql-5.0-26750
      
      
      sql/mysqld.cc:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_class.h:
        Manual merge.
      7f69b747
    • unknown's avatar
      A fix for Bug#26750 "valgrind leak in sp_head" (and post-review · 053c6c01
      unknown authored
      fixes).
      
      The legend: on a replication slave, in case a trigger creation
      was filtered out because of application of replicate-do-table/
      replicate-ignore-table rule, the parsed definition of a trigger was not 
      cleaned up properly. LEX::sphead member was left around and leaked 
      memory. Until the actual implementation of support of 
      replicate-ignore-table rules for triggers by the patch for Bug 24478 it 
      was never the case that "case SQLCOM_CREATE_TRIGGER"
      was not executed once a trigger was parsed,
      so the deletion of lex->sphead there worked and the memory did not leak.
      
      The fix: 
      
      The real cause of the bug is that there is no 1 or 2 places where
      we can clean up the main LEX after parse. And the reason we 
      can not have just one or two places where we clean up the LEX is
      asymmetric behaviour of MYSQLparse in case of success or error. 
      
      One of the root causes of this behaviour is the code in Item::Item()
      constructor. There, a newly created item adds itself to THD::free_list
      - a single-linked list of Items used in a statement. Yuck. This code
      is unaware that we may have more than one statement active at a time,
      and always assumes that the free_list of the current statement is
      located in THD::free_list. One day we need to be able to explicitly
      allocate an item in a given Query_arena.
      Thus, when parsing a definition of a stored procedure, like
      CREATE PROCEDURE p1() BEGIN SELECT a FROM t1; SELECT b FROM t1; END;
      we actually need to reset THD::mem_root, THD::free_list and THD::lex
      to parse the nested procedure statement (SELECT *).
      The actual reset and restore is implemented in semantic actions
      attached to sp_proc_stmt grammar rule.
      The problem is that in case of a parsing error inside a nested statement
      Bison generated parser would abort immediately, without executing the
      restore part of the semantic action. This would leave THD in an 
      in-the-middle-of-parsing state.
      This is why we couldn't have had a single place where we clean up the LEX
      after MYSQLparse - in case of an error we needed to do a clean up
      immediately, in case of success a clean up could have been delayed.
      This left the door open for a memory leak.
      
      One of the following possibilities were considered when working on a fix:
      - patch the replication logic to do the clean up. Rejected
      as breaks module borders, replication code should not need to know the
      gory details of clean up procedure after CREATE TRIGGER.
      - wrap MYSQLparse with a function that would do a clean up.
      Rejected as ideally we should fix the problem when it happens, not
      adjust for it outside of the problematic code.
      - make sure MYSQLparse cleans up after itself by invoking the clean up
      functionality in the appropriate places before return. Implemented in 
      this patch.
      - use %destructor rule for sp_proc_stmt to restore THD - cleaner
      than the prevoius approach, but rejected
      because needs a careful analysis of the side effects, and this patch is 
      for 5.0, and long term we need to use the next alternative anyway
      - make sure that sp_proc_stmt doesn't juggle with THD - this is a 
      large work that will affect many modules.
      
      Cleanup: move main_lex and main_mem_root from Statement to its
      only two descendants Prepared_statement and THD. This ensures that
      when a Statement instance was created for purposes of statement backup,
      we do not involve LEX constructor/destructor, which is fairly expensive.
      In order to track that the transformation produces equivalent 
      functionality please check the respective constructors and destructors
      of Statement, Prepared_statement and THD - these members were
      used only there.
      This cleanup is unrelated to the patch.
      
      
      sql/log_event.cc:
        THD::main_lex is private and should not be used.
      sql/mysqld.cc:
        Move MYSQLerror to sql_yacc.yy as it depends on LEX headers now.
      sql/sql_class.cc:
        Cleanup: move main_lex and main_mem_root to THD and Prepared_statement
      sql/sql_class.h:
        Cleanup: move main_lex and main_mem_root to THD and Prepared_statement
      sql/sql_lex.cc:
        Implement st_lex::restore_lex()
      sql/sql_lex.h:
        Declare st_lex::restore_lex().
      sql/sql_parse.cc:
        Consolidate the calls to unit.cleanup() and deletion of lex->sphead
        in mysql_parse (COM_QUERY handler)
      sql/sql_prepare.cc:
        No need to delete lex->sphead to restore memory roots now in case of a 
        parse error - this is done automatically inside MYSQLparse
      sql/sql_trigger.cc:
        This code could lead to double deletion apparently, as in case
        of an error lex.sphead was never reset.
      sql/sql_yacc.yy:
        Trap all returns from the parser to ensure that MySQL-specific cleanup
        is invoked: we need to restore the global state of THD and LEX in 
        case of a parsing error. In case of a parsing success this happens as 
        part of normal grammar reduction process.
      053c6c01
    • unknown's avatar
      Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/41 · c4390d05
      unknown authored
      into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/50
      
      
      c4390d05
    • unknown's avatar
      Post-merge fix of mysqlbinlog.{test,result} · 142e778d
      unknown authored
      142e778d
    • unknown's avatar
      Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime · a69a96e2
      unknown authored
      into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/51
      
      
      client/mysqltest.c:
        Auto merged
      include/my_pthread.h:
        Auto merged
      mysql-test/mysql-test-run.pl:
        Auto merged
      mysql-test/r/sp.result:
        Auto merged
      mysql-test/t/disabled.def:
        Auto merged
      mysql-test/t/sp.test:
        Auto merged
      mysys/my_wincond.c:
        Auto merged
      sql/event_queue.cc:
        Auto merged
      sql/field.cc:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      sql/item_cmpfunc.h:
        Auto merged
      sql/log.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/set_var.cc:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_load.cc:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_trigger.cc:
        Auto merged
      client/mysql_upgrade.c:
        Manual merge; I chose to keep Magnus' changes because they make the code
        more simple; always use *only* the option file created by mysql_upgrade.
      mysql-test/extra/binlog_tests/ctype_cp932.test:
        Manual merge
      mysql-test/r/binlog_row_ctype_cp932.result:
        Manual merge
      mysql-test/r/binlog_stm_ctype_cp932.result:
        Manual merge
      mysql-test/r/mysqlbinlog.result:
        Manual merge
      mysql-test/r/rpl_switch_stm_row_mixed.result:
        Manual merge
      mysql-test/t/mysqlbinlog.test:
        Manual merge
      mysql-test/t/rpl_switch_stm_row_mixed.test:
        Manual merge
      a69a96e2
    • unknown's avatar
      Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-4.1-runtime · cd5140d3
      unknown authored
      into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/41
      
      
      cd5140d3
    • unknown's avatar
      Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime · a966b0b7
      unknown authored
      into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/50
      
      
      mysql-test/mysql-test-run.pl:
        Auto merged
      mysql-test/r/sp.result:
        Auto merged
      mysql-test/t/sp.test:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      sql/item_cmpfunc.h:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      a966b0b7
    • unknown's avatar
      Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-4.1 · b68519f7
      unknown authored
      into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/41
      
      
      b68519f7
  3. 06 Mar, 2007 17 commits
    • unknown's avatar
      Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.0-maint · 31fc397c
      unknown authored
      into  siva.hindu.god:/home/tsmith/m/bk/maint/50
      
      
      31fc397c
    • unknown's avatar
      Merge siva.hindu.god:/home/tsmith/m/bk/maint/mar05/51 · 01fc4d06
      unknown authored
      into  siva.hindu.god:/home/tsmith/m/bk/maint/51
      
      
      01fc4d06
    • unknown's avatar
      Merge siva.hindu.god:/home/tsmith/m/bk/maint/mar05/50 · 60997075
      unknown authored
      into  siva.hindu.god:/home/tsmith/m/bk/maint/50
      
      
      libmysql/libmysql.c:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      60997075
    • unknown's avatar
      Merge siva.hindu.god:/home/tsmith/m/bk/maint/mar05/50 · c2f48ff1
      unknown authored
      into  siva.hindu.god:/home/tsmith/m/bk/maint/mar05/51
      
      
      libmysql/libmysql.c:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      c2f48ff1
    • unknown's avatar
      Bug #25075: sql_class.cc doesn't compile with --without-query-cache · 5fdfea00
      unknown authored
      Wrap query_cache_init_query() call with #ifdef HAVE_QUERY_CACHE in THD::THD()
      
      
      5fdfea00
    • unknown's avatar
      Fix for bug #25595 "missing DBUG_RETURN in function "mysql_stat"" · 9a1ec4d3
      unknown authored
      
      libmysql/libmysql.c:
        Fix for bug #25595 "missing DBUG_RETURN in function "mysql_stat""
        
        Use DBUG_RETURN instead of return
      9a1ec4d3
    • unknown's avatar
      Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.1-maint · 59c0792d
      unknown authored
      into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/autopush/mar05-51
      
      
      59c0792d
    • unknown's avatar
      Manual merge · f7414b28
      unknown authored
      f7414b28
    • unknown's avatar
      Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime · 0ac63815
      unknown authored
      into  weblab.(none):/home/marcsql/TREE/mysql-5.1-8407-merge
      
      
      sql/sp_head.cc:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_base.cc:
        Manual merge
      0ac63815
    • unknown's avatar
      Manual merge · 71f90b7e
      unknown authored
      71f90b7e
    • unknown's avatar
      Post-merge fixes. · 9528ed5b
      unknown authored
      
      mysql-test/r/subselect.result:
        A post-merge fix: update test results.
      sql/sql_yacc.yy:
        Update to the number of conflicts in 5.1
      9528ed5b
    • unknown's avatar
      Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime · 307c9f1e
      unknown authored
      into  weblab.(none):/home/marcsql/TREE/mysql-5.0-8407_b
      
      
      mysql-test/r/view.result:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/sp_head.cc:
        Auto merged
      sql/sp_head.h:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_update.cc:
        Auto merged
      sql/table.cc:
        Auto merged
      sql/table.h:
        Auto merged
      sql/sql_base.cc:
        Manual merge
      307c9f1e
    • unknown's avatar
      Merge polly.local:/tmp/maint/bug20293/my51-bug20293 · e5a9a17b
      unknown authored
      into  polly.local:/home/kaa/src/maint/mysql-5.1-maint
      
      
      mysql-test/r/func_time.result:
        Manual merge.
      mysql-test/t/func_time.test:
        Manual merge.
      e5a9a17b
    • unknown's avatar
      Merge polly.local:/tmp/maint/bug20293/my50-bug20293 · 3e42ddda
      unknown authored
      into  polly.local:/home/kaa/src/maint/mysql-5.0-maint
      
      
      mysql-test/r/func_time.result:
        Manual merge.
      mysql-test/t/func_time.test:
        Manual merge.
      3e42ddda
    • unknown's avatar
      Bug #26598: Create variable to allow turning off of statistic gathering on metadata commands · 3602e293
      unknown authored
      Add innodb_stats_on_metadata option, which enables gathering
      index statistics when processing metadata commands such as
      SHOW TABLE STATUS.  Default behavior of the server does not
      change (this option is enabled by default).
      
      
      sql/mysqld.cc:
        Add innodb_stats_on_metadata option, which enables gathering
        index statistics when processing metadata commands such as
        SHOW TABLE STATUS.  Default behavior of the server does not
        change (this option is enabled by default).
      sql/set_var.cc:
        Add innodb_stats_on_metadata option, which enables gathering
        index statistics when processing metadata commands such as
        SHOW TABLE STATUS.  Default behavior of the server does not
        change (this option is enabled by default).
      storage/innobase/handler/ha_innodb.cc:
        Add innodb_stats_on_metadata option, which enables gathering
        index statistics when processing metadata commands such as
        SHOW TABLE STATUS.  Default behavior of the server does not
        change (this option is enabled by default).
      storage/innobase/handler/ha_innodb.h:
        Add innodb_stats_on_metadata option, which enables gathering
        index statistics when processing metadata commands such as
        SHOW TABLE STATUS.  Default behavior of the server does not
        change (this option is enabled by default).
      storage/innobase/include/srv0srv.h:
        Add innodb_stats_on_metadata option, which enables gathering
        index statistics when processing metadata commands such as
        SHOW TABLE STATUS.  Default behavior of the server does not
        change (this option is enabled by default).
      storage/innobase/srv/srv0srv.c:
        Add innodb_stats_on_metadata option, which enables gathering
        index statistics when processing metadata commands such as
        SHOW TABLE STATUS.  Default behavior of the server does not
        change (this option is enabled by default).
      3602e293
    • unknown's avatar
      Merge polly.local:/tmp/maint/bug20293/my50-bug20293 · aeb16245
      unknown authored
      into  polly.local:/tmp/maint/bug20293/my51-bug20293
      
      
      mysql-test/r/func_time.result:
        SCCS merged
      mysql-test/t/func_time.test:
        SCCS merged
      aeb16245
    • unknown's avatar
      Merge weblab.(none):/home/marcsql/TREE/mysql-5.0-8407_b · 0708859b
      unknown authored
      into  weblab.(none):/home/marcsql/TREE/mysql-5.1-8407-merge
      
      
      mysql-test/r/information_schema_db.result:
        Auto merged
      mysql-test/r/view.result:
        Auto merged
      mysql-test/t/sp.test:
        Auto merged
      sql/lock.cc:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/sp_head.cc:
        Auto merged
      sql/sp_head.h:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_update.cc:
        Auto merged
      sql/table.cc:
        Auto merged
      sql/table.h:
        Auto merged
      0708859b