An error occurred fetching the project authors.
  1. 12 Aug, 2013 1 commit
  2. 25 Mar, 2013 1 commit
  3. 23 Jan, 2013 2 commits
    • Sergei Golubchik's avatar
      cleanup: use MYF() for mysys flags · 682da0aa
      Sergei Golubchik authored
      682da0aa
    • Michael Widenius's avatar
      MDEV-4011 Added per thread memory counting and usage · a260b155
      Michael Widenius authored
      Base code and idea from a patch from by plinux at Taobao.
      
      The idea is that we mark all memory that are thread specific with MY_THREAD_SPECIFIC.
      Memory counting is done per thread in the my_malloc_size_cb_func callback function from my_malloc().
      There are plenty of new asserts to ensure that for a debug server the counting is correct.
      
      Information_schema.processlist gets two new columns: MEMORY_USED and EXAMINED_ROWS.
      - The later is there mainly to show how query is progressing.
      
      The following changes in interfaces was needed to get this to work:
      - init_alloc_root() amd init_sql_alloc() has extra option so that one can mark memory with MY_THREAD_SPECIFIC
      - One now have to use alloc_root_set_min_malloc() to set min memory to be allocated by alloc_root()
      - my_init_dynamic_array()  has extra option so that one can mark memory with MY_THREAD_SPECIFIC
      - my_net_init() has extra option so that one can mark memory with MY_THREAD_SPECIFIC
      - Added flag for hash_init() so that one can mark hash table to be thread specific.
      - Added flags to init_tree() so that one can mark tree to be thread specific.
      - Removed with_delete option to init_tree(). Now one should instead use MY_TREE_WITH_DELETE_FLAG.
      - Added flag to Warning_info::Warning_info() if the structure should be fully initialized.
      - String elements can now be marked as thread specific.
      - Internal HEAP tables are now marking it's memory as MY_THREAD_SPECIFIC.
      - Changed type of myf from int to ulong, as this is always a set of bit flags.
      
      Other things:
      - Removed calls to net_end() and thd->cleanup() as these are now done in ~THD()
      - We now also show EXAMINED_ROWS in SHOW PROCESSLIST
      - Added new variable 'memory_used'
      - Fixed bug where kill_threads_for_user() was using the wrong mem_root to allocate memory.
      - Removed calls to the obsoleted function init_dynamic_array()
      - Use set_current_thd() instead of my_pthread_setspecific_ptr(THR_THD,...)
      
      
      client/completion_hash.cc:
        Updated call to init_alloc_root()
      client/mysql.cc:
        Updated call to init_alloc_root()
      client/mysqlbinlog.cc:
        init_dynamic_array() -> my_init_dynamic_array()
        Updated call to init_alloc_root()
      client/mysqlcheck.c:
        Updated call to my_init_dynamic_array()
      client/mysqldump.c:
        Updated call to init_alloc_root()
      client/mysqltest.cc:
        Updated call to init_alloc_root()
        Updated call to my_init_dynamic_array()
        Fixed compiler warnings
      extra/comp_err.c:
        Updated call to my_init_dynamic_array()
      extra/resolve_stack_dump.c:
        Updated call to my_init_dynamic_array()
      include/hash.h:
        Added HASH_THREAD_SPECIFIC
      include/heap.h:
        Added flag is internal temporary table.
      include/my_dir.h:
        Safety fix: Ensure that MY_DONT_SORT and MY_WANT_STAT don't interfer with other mysys flags
      include/my_global.h:
        Changed type of myf from int to ulong, as this is always a set of bit flags.
      include/my_sys.h:
        Added MY_THREAD_SPECIFIC and MY_THREAD_MOVE
        Added malloc_flags to DYNAMIC_ARRAY
        Added extra mysys flag argument to my_init_dynamic_array()
        Removed deprecated functions init_dynamic_array() and my_init_dynamic_array.._ci
        Updated paramaters for init_alloc_root()
      include/my_tree.h:
        Added my_flags to allow one to use MY_THREAD_SPECIFIC with hash tables.
        Removed with_delete. One should now instead use MY_TREE_WITH_DELETE_FLAG
        Updated parameters to init_tree()
      include/myisamchk.h:
        Added malloc_flags to allow one to use MY_THREAD_SPECIFIC for checks.
      include/mysql.h:
        Added MYSQL_THREAD_SPECIFIC_MALLOC
        Used 'unused1' to mark memory as thread specific.
      include/mysql.h.pp:
        Updated file
      include/mysql_com.h:
        Used 'unused1' to mark memory as thread specific.
        Updated parameters for my_net_init()
      libmysql/libmysql.c:
        Updated call to init_alloc_root() to mark memory thread specific.
      libmysqld/emb_qcache.cc:
        Updated call to init_alloc_root()
      libmysqld/lib_sql.cc:
        Updated call to init_alloc_root()
      mysql-test/r/create.result:
        Updated results
      mysql-test/r/user_var.result:
        Updated results
      mysql-test/suite/funcs_1/datadict/processlist_priv.inc:
        Update to handle new format of SHOW PROCESSLIST
      mysql-test/suite/funcs_1/datadict/processlist_val.inc:
        Update to handle new format of SHOW PROCESSLIST
      mysql-test/suite/funcs_1/r/is_columns_is.result:
        Update to handle new format of SHOW PROCESSLIST
      mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result:
        Updated results
      mysql-test/suite/funcs_1/r/processlist_val_no_prot.result:
        Updated results
      mysql-test/t/show_explain.test:
        Fixed usage of debug variable so that one can run test with --debug
      mysql-test/t/user_var.test:
        Added test of memory_usage variable.
      mysys/array.c:
        Added extra my_flags option to init_dynamic_array() and init_dynamic_array2() so that one can mark memory with MY_THREAD_SPECIFIC
        All allocated memory is marked with the given my_flags.
        Removed obsolete function init_dynamic_array()
      mysys/default.c:
        Updated call to init_alloc_root()
        Updated call to my_init_dynamic_array()
      mysys/hash.c:
        Updated call to my_init_dynamic_array_ci().
        Allocated memory is marked with MY_THREAD_SPECIFIC if HASH_THREAD_SPECIFIC is used.
      mysys/ma_dyncol.c:
        init_dynamic_array() -> my_init_dynamic_array()
        Added #if to get rid of compiler warnings
      mysys/mf_tempdir.c:
        Updated call to my_init_dynamic_array()
      mysys/my_alloc.c:
        Added extra parameter to init_alloc_root() so that one can mark memory with MY_THREAD_SPECIFIC
        Extend MEM_ROOT with a flag if memory is thread specific.
        This is stored in block_size, to keep the size of the MEM_ROOT object identical as before.
        Allocated memory is marked with MY_THREAD_SPECIFIC if used with init_alloc_root()
      mysys/my_chmod.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_chsize.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_copy.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_create.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_delete.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_error.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_fopen.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_fstream.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_getwd.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_lib.c:
        Updated call to init_alloc_root()
        Updated call to my_init_dynamic_array()
        Updated DBUG_PRINT because of change of myf type
      mysys/my_lock.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_malloc.c:
        Store at start of each allocated memory block the size of the block and if the block is thread specific.
        Call malloc_size_cb_func, if set, with the memory allocated/freed.
        Updated DBUG_PRINT because of change of myf type
      mysys/my_open.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_pread.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_read.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_redel.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_rename.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_seek.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_sync.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/my_thr_init.c:
        Ensure that one can call my_thread_dbug_id() even if thread is not properly initialized.
      mysys/my_write.c:
        Updated DBUG_PRINT because of change of myf type
      mysys/mysys_priv.h:
        Updated parameters to sf_malloc and sf_realloc()
      mysys/safemalloc.c:
        Added checking that for memory marked with MY_THREAD_SPECIFIC that it's the same thread that is allocation and freeing the memory.
        Added sf_malloc_dbug_id() to allow MariaDB to specify which THD is handling the memory.
        Added my_flags arguments to sf_malloc() and sf_realloc() to be able to mark memory with MY_THREAD_SPECIFIC.
        Added sf_report_leaked_memory() to get list of memory not freed by a thread.
      mysys/tree.c:
        Added flags to init_tree() so that one can mark tree to be thread specific.
        Removed with_delete option to init_tree(). Now one should instead use MY_TREE_WITH_DELETE_FLAG.
        Updated call to init_alloc_root()
        All allocated memory is marked with the given malloc flags
      mysys/waiting_threads.c:
        Updated call to my_init_dynamic_array()
      sql-common/client.c:
        Updated call to init_alloc_root() and my_net_init() to mark memory thread specific.
        Updated call to my_init_dynamic_array().
        Added MYSQL_THREAD_SPECIFIC_MALLOC so that client can mark memory as MY_THREAD_SPECIFIC.
      sql-common/client_plugin.c:
        Updated call to init_alloc_root()
      sql/debug_sync.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
      sql/event_scheduler.cc:
        Removed calls to net_end() as this is now done in ~THD()
        Call set_current_thd() to ensure that memory is assigned to right thread.
      sql/events.cc:
        my_pthread_setspecific_ptr(THR_THD,...) -> set_current_thd()
      sql/filesort.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
      sql/filesort_utils.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
      sql/ha_ndbcluster.cc:
        Updated call to init_alloc_root()
        Updated call to my_net_init()
        Removed calls to net_end() and thd->cleanup() as these are now done in ~THD()
      sql/ha_ndbcluster_binlog.cc:
        Updated call to my_net_init()
        Updated call to init_sql_alloc()
        Removed calls to net_end() and thd->cleanup() as these are now done in ~THD()
      sql/ha_partition.cc:
        Updated call to init_alloc_root()
      sql/handler.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
        Added missing call to my_dir_end()
      sql/item_func.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
      sql/item_subselect.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
      sql/item_sum.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
      sql/log.cc:
        More DBUG
        Updated call to init_alloc_root()
      sql/mdl.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
      sql/mysqld.cc:
        Added total_memory_used
        Updated call to init_alloc_root()
        Move mysql_cond_broadcast() before my_thread_end()
        Added mariadb_dbug_id() to count memory per THD instead of per thread.
        Added my_malloc_size_cb_func() callback function for my_malloc() to count memory.
        Move initialization of mysqld_server_started and mysqld_server_initialized earlier.
        Updated call to my_init_dynamic_array().
        Updated call to my_net_init().
        Call my_pthread_setspecific_ptr(THR_THD,...) to ensure that memory is assigned to right thread.
        Added status variable 'memory_used'.
        Updated call to init_alloc_root()
        my_pthread_setspecific_ptr(THR_THD,...) -> set_current_thd()
      sql/mysqld.h:
        Added set_current_thd()
      sql/net_serv.cc:
        Added new parameter to my_net_init() so that one can mark memory with MY_THREAD_SPECIFIC.
        Store in net->thread_specific_malloc if memory is thread specific.
        Mark memory to be thread specific if requested.
      sql/opt_range.cc:
        Updated call to my_init_dynamic_array()
        Updated call to init_sql_alloc()
        Added MY_THREAD_SPECIFIC to allocated memory.
      sql/opt_subselect.cc:
        Updated call to init_sql_alloc() to mark memory thread specific.
      sql/protocol.cc:
        Fixed compiler warning
      sql/records.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
      sql/rpl_filter.cc:
        Updated call to my_init_dynamic_array()
      sql/rpl_handler.cc:
        Updated call to my_init_dynamic_array2()
      sql/rpl_handler.h:
        Updated call to init_sql_alloc()
      sql/rpl_mi.cc:
        Updated call to my_init_dynamic_array()
      sql/rpl_tblmap.cc:
        Updated call to init_alloc_root()
      sql/rpl_utility.cc:
        Updated call to my_init_dynamic_array()
      sql/slave.cc:
        Initialize things properly before calling functions that allocate memory.
        Removed calls to net_end() as this is now done in ~THD()
      sql/sp_head.cc:
        Updated call to init_sql_alloc()
        Updated call to my_init_dynamic_array()
        Added parameter to warning_info() that it should be fully initialized.
      sql/sp_pcontext.cc:
        Updated call to my_init_dynamic_array()
      sql/sql_acl.cc:
        Updated call to init_sql_alloc()
        Updated call to my_init_dynamic_array()
        my_pthread_setspecific_ptr(THR_THD,...) -> set_current_thd()
      sql/sql_admin.cc:
        Added parameter to warning_info() that it should be fully initialized.
      sql/sql_analyse.h:
        Updated call to init_tree() to mark memory thread specific.
      sql/sql_array.h:
        Updated call to my_init_dynamic_array() to mark memory thread specific.
      sql/sql_audit.cc:
        Updated call to my_init_dynamic_array()
      sql/sql_base.cc:
        Updated call to init_sql_alloc()
        my_pthread_setspecific_ptr(THR_THD,...) -> set_current_thd()
      sql/sql_cache.cc:
        Updated comment
      sql/sql_class.cc:
        Added parameter to warning_info() that not initialize it until THD is fully created.
        Updated call to init_sql_alloc()
        Mark THD::user_vars has to be thread specific.
        Updated call to my_init_dynamic_array()
        Ensure that memory allocated by THD is assigned to the THD.
        More DBUG
        Always acll net_end() in ~THD()
        Assert that all memory signed to this THD is really deleted at ~THD.
        Fixed set_status_var_init() to not reset memory_used.
        my_pthread_setspecific_ptr(THR_THD,...) -> set_current_thd()
      sql/sql_class.h:
        Added MY_THREAD_SPECIFIC to allocated memory.
        Added malloc_size to THD to record allocated memory per THD.
      sql/sql_delete.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
      sql/sql_error.cc:
        Added 'initialize' parameter to Warning_info() to say if should allocate memory for it's structures.
        This is used by THD::THD() to not allocate memory until THD is ready.
        Added Warning_info::free_memory()
      sql/sql_error.h:
        Updated Warning_info() class.
      sql/sql_handler.cc:
        Updated call to init_alloc_root() to mark memory thread specific.
      sql/sql_insert.cc:
        More DBUG
      sql/sql_join_cache.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
      sql/sql_lex.cc:
        Updated call to my_init_dynamic_array()
      sql/sql_lex.h:
        Updated call to my_init_dynamic_array()
      sql/sql_load.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
      sql/sql_parse.cc:
        Removed calls to net_end() and thd->cleanup() as these are now done in ~THD()
        Ensure that examined_row_count() is reset before query.
        Fixed bug where kill_threads_for_user() was using the wrong mem_root to allocate memory.
        my_pthread_setspecific_ptr(THR_THD,...) -> set_current_thd()
        Don't restore thd->status_var.memory_used when restoring thd->status_var
      sql/sql_plugin.cc:
        Updated call to init_alloc_root()
        Updated call to my_init_dynamic_array()
        Don't allocate THD on the stack, as this causes problems with valgrind when doing thd memory counting.
        my_pthread_setspecific_ptr(THR_THD,...) -> set_current_thd()
      sql/sql_prepare.cc:
        Added parameter to warning_info() that it should be fully initialized.
        Updated call to init_sql_alloc() to mark memory thread specific.
      sql/sql_reload.cc:
        my_pthread_setspecific_ptr(THR_THD,...) -> set_current_thd()
      sql/sql_select.cc:
        Updated call to my_init_dynamic_array() and init_sql_alloc() to mark memory thread specific.
        Added MY_THREAD_SPECIFIC to allocated memory.
        More DBUG
      sql/sql_servers.cc:
        Updated call to init_sql_alloc() to mark memory some memory thread specific.
        my_pthread_setspecific_ptr(THR_THD,...) -> set_current_thd()
      sql/sql_show.cc:
        Updated call to my_init_dynamic_array()
        Mark my_dir() memory thread specific.
        Use my_pthread_setspecific_ptr(THR_THD,...) to mark that allocated memory should be allocated to calling thread.
        More DBUG.
        Added malloc_size and examined_row_count to SHOW PROCESSLIST.
        Added MY_THREAD_SPECIFIC to allocated memory.
        Updated call to init_sql_alloc()
        Added parameter to warning_info() that it should be fully initialized.
      sql/sql_statistics.cc:
        Fixed compiler warning
      sql/sql_string.cc:
        String elements can now be marked as thread specific.
      sql/sql_string.h:
        String elements can now be marked as thread specific.
      sql/sql_table.cc:
        Updated call to init_sql_alloc() and my_malloc() to mark memory thread specific
        my_pthread_setspecific_ptr(THR_THD,...) -> set_current_thd()
        Fixed compiler warning
      sql/sql_test.cc:
        Updated call to my_init_dynamic_array() to mark memory thread specific.
      sql/sql_trigger.cc:
        Updated call to init_sql_alloc()
      sql/sql_udf.cc:
        Updated call to init_sql_alloc()
        my_pthread_setspecific_ptr(THR_THD,...) -> set_current_thd()
      sql/sql_update.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
      sql/table.cc:
        Updated call to init_sql_alloc().
        Mark memory used by temporary tables, that are not for slave threads, as MY_THREAD_SPECIFIC
        Updated call to init_sql_alloc()
      sql/thr_malloc.cc:
        Added my_flags argument to init_sql_alloc() to be able to mark memory as MY_THREAD_SPECIFIC.
      sql/thr_malloc.h:
        Updated prototype for init_sql_alloc()
      sql/tztime.cc:
        Updated call to init_sql_alloc()
        Updated call to init_alloc_root() to mark memory thread specific.
        my_pthread_setspecific_ptr(THR_THD,...) -> set_current_thd()
      sql/uniques.cc:
        Updated calls to init_tree(), my_init_dynamic_array() and my_malloc() to mark memory thread specific.
      sql/unireg.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
      storage/csv/ha_tina.cc:
        Updated call to init_alloc_root()
      storage/federated/ha_federated.cc:
        Updated call to init_alloc_root()
        Updated call to my_init_dynamic_array()
        Ensure that memory allocated by fedarated is registered for the system, not for the thread.
      storage/federatedx/federatedx_io_mysql.cc:
        Updated call to my_init_dynamic_array()
      storage/federatedx/ha_federatedx.cc:
        Updated call to init_alloc_root()
        Updated call to my_init_dynamic_array()
      storage/heap/ha_heap.cc:
        Added MY_THREAD_SPECIFIC to allocated memory.
      storage/heap/heapdef.h:
        Added parameter to hp_get_new_block() to be able to do thread specific memory tagging.
      storage/heap/hp_block.c:
        Added parameter to hp_get_new_block() to be able to do thread specific memory tagging.
      storage/heap/hp_create.c:
        - Internal HEAP tables are now marking it's memory as MY_THREAD_SPECIFIC.
        - Use MY_TREE_WITH_DELETE instead of removed option 'with_delete'.
      storage/heap/hp_open.c:
        Internal HEAP tables are now marking it's memory as MY_THREAD_SPECIFIC.
      storage/heap/hp_write.c:
        Added new parameter to hp_get_new_block()
      storage/maria/ma_bitmap.c:
        Updated call to my_init_dynamic_array()
      storage/maria/ma_blockrec.c:
        Updated call to my_init_dynamic_array()
      storage/maria/ma_check.c:
        Updated call to init_alloc_root()
      storage/maria/ma_ft_boolean_search.c:
        Updated calls to init_tree() and init_alloc_root()
      storage/maria/ma_ft_nlq_search.c:
        Updated call to init_tree()
      storage/maria/ma_ft_parser.c:
        Updated call to init_tree()
        Updated call to init_alloc_root()
      storage/maria/ma_loghandler.c:
        Updated call to my_init_dynamic_array()
      storage/maria/ma_open.c:
        Updated call to my_init_dynamic_array()
      storage/maria/ma_sort.c:
        Updated call to my_init_dynamic_array()
      storage/maria/ma_write.c:
        Updated calls to my_init_dynamic_array() and init_tree()
      storage/maria/maria_pack.c:
        Updated call to init_tree()
      storage/maria/unittest/sequence_storage.c:
        Updated call to my_init_dynamic_array()
      storage/myisam/ft_boolean_search.c:
        Updated call to init_tree()
        Updated call to init_alloc_root()
      storage/myisam/ft_nlq_search.c:
        Updated call to init_tree()
      storage/myisam/ft_parser.c:
        Updated call to init_tree()
        Updated call to init_alloc_root()
      storage/myisam/ft_stopwords.c:
        Updated call to init_tree()
      storage/myisam/mi_check.c:
        Updated call to init_alloc_root()
      storage/myisam/mi_write.c:
        Updated call to my_init_dynamic_array()
        Updated call to init_tree()
      storage/myisam/myisamlog.c:
        Updated call to init_tree()
      storage/myisam/myisampack.c:
        Updated call to init_tree()
      storage/myisam/sort.c:
        Updated call to my_init_dynamic_array()
      storage/myisammrg/ha_myisammrg.cc:
        Updated call to init_sql_alloc()
      storage/perfschema/pfs_check.cc:
        Rest current_thd
      storage/perfschema/pfs_instr.cc:
        Removed DBUG_ENTER/DBUG_VOID_RETURN as at this point my_thread_var is not allocated anymore, which can cause problems.
      support-files/compiler_warnings.supp:
        Disable compiler warning from offsetof macro.
      a260b155
  4. 14 Aug, 2012 1 commit
  5. 07 Aug, 2012 1 commit
    • Nirbhay Choubey's avatar
      Bug#13928675 MYSQL CLIENT COPYRIGHT NOTICE MUST · 5ad8292c
      Nirbhay Choubey authored
                   SHOW 2012 INSTEAD OF 2011
      
      * Added a new macro to hold the current year :
        COPYRIGHT_NOTICE_CURRENT_YEAR
      * Modified ORACLE_WELCOME_COPYRIGHT_NOTICE macro
        to take the initial year as parameter and pick
        current year from the above mentioned macro.
      5ad8292c
  6. 23 Mar, 2012 1 commit
  7. 12 Dec, 2011 1 commit
    • Sergei Golubchik's avatar
      move safemalloc out of dbug. · 6cc9d0ff
      Sergei Golubchik authored
      remeber a real backtrace for every allocation.
      make safemalloc to tract C++ new/delete too.
      collateral fixes to make the test suite pass.
      6cc9d0ff
  8. 29 Oct, 2011 1 commit
  9. 22 Jul, 2011 1 commit
    • Alexander Nozdrin's avatar
      For for Bug#12696072: FIX OUTDATED COPYRIGHT NOTICES IN RUNTIME RELATED CLIENT · cb523995
      Alexander Nozdrin authored
      TOOLS
      
      Backport a fix for Bug 57094 from 5.5.
      The following revision was backported:
      
      # revision-id: alexander.nozdrin@oracle.com-20101006150613-ls60rb2tq5dpyb5c
      # parent: bar@mysql.com-20101006121559-am1e05ykeicwnx48
      # committer: Alexander Nozdrin <alexander.nozdrin@oracle.com>
      # branch nick: mysql-5.5-bugteam-bug57094
      # timestamp: Wed 2010-10-06 19:06:13 +0400
      # message:
      #   Fix for Bug 57094 (Copyright notice incorrect?).
      #   
      #   The fix is to:
      #     - introduce ORACLE_WELCOME_COPYRIGHT_NOTICE define to have a single place
      #       to specify copyright notice;
      #     - replace custom copyright notices with ORACLE_WELCOME_COPYRIGHT_NOTICE
      #       in programs.
      cb523995
  10. 10 Jul, 2011 2 commits
    • Sergei Golubchik's avatar
    • Sergei Golubchik's avatar
      fix memory leaks and other problems found by safemalloc · 49501b4c
      Sergei Golubchik authored
      client/mysql_upgrade.c:
        missing DBUG_RETURN
      client/mysqladmin.cc:
        client plugin memory wasn't freed
      client/mysqlcheck.c:
        client plugin memory, defaults, a result set, a command-line option value were not freed.
        missing DBUG_RETURN.
      client/mysqldump.c:
        client plugin memory wasn't freed
      client/mysqlslap.c:
        client plugin memory wasn't freed
      client/mysqltest.cc:
        hopeless. cannot be fixed.
      mysql-test/valgrind.supp:
        Bug#56666 is now fixed.
      mysys/array.c:
        really, don't allocate if the caller didn't ask to.
      mysys/my_init.c:
        safemalloc checks must be done at the very end
      mysys/my_thr_init.c:
        not needed anymore
      sql-common/client.c:
        memory leak
      sql/log.cc:
        log_file was not closed, memory leak.
      sql/mysqld.cc:
        fix bug#56666 (causing many P_S related memory leaks).
        close_active_mi() not called for --bootstrap, memory leak.
      sql/sql_lex.cc:
        redo Lex->mi handling
      sql/sql_lex.h:
        redo Lex->mi handling
      sql/sql_plugin.cc:
        plugins having PLUGIN_VAR_MEMALLOC string variables have this variables allocated in every THD.
        The memory was freed in ~THD but only if plugin was still active. If plugin was unloaded the
        variable was not found and the memory was lost. By loading and unloading plugins an arbitrary
        amount of memory can be lost.
      sql/sql_repl.cc:
        redo Lex->mi handling
      sql/sql_yacc.yy:
        completely wrong handling of Lex->mi - run-time memory leak, by repeating the statement
        arbitrary amount of memory can be lost.
        
        Lex->mi.repl_ignore_server_ids_opt was allocated when parsing CHANGE MASTER,
        and freed after executing the statement. if parser failed on syntax (or another)
        error the statement was never executed. Lex->mi was simply bzero-ed for the next
        CHANGE MASTER  statement.
      sql/table.cc:
        didn't compile
      storage/perfschema/pfs_lock.h:
        Bug#56666 is fixed
      49501b4c
  11. 02 Jul, 2011 1 commit
  12. 30 Jun, 2011 1 commit
  13. 11 Jun, 2011 1 commit
    • Michael Widenius's avatar
      Fixes BUG#60976 "Crash, valgrind warning and memory leak with partitioned archive tables" · 69ffc066
      Michael Widenius authored
      Noted that there was no memory leak, just a lot of used partitioned tables.
      Fixed old bug: 'show status' now shows memory usage when compiled with safemalloc.
      Added option --flush to mysqlcheck.c to run a 'flush tables' between each check to keep down memory usage.
      Changed '--safemalloc' options to mysqld so that one can use --safemalloc and --skip-safemalloc.
      Now skip-safemalloc is default (ie, we only do checking of memory overrun during free()) to speed up tests.
      
      
      client/client_priv.h:
        Added OPT_FLUSH_TABLES
      client/mysqlcheck.c:
        Added option --flush to mysqlcheck.c to run a 'flush tables' between each check to keep down memory usage.
      mysql-test/mysql-test-run.pl:
        Always run tests with --loose-skip-safemysqld for higher speed
      sql/mysqld.cc:
        Changed '--safemalloc' options so that one can use --safemalloc and --skip-safemalloc.
        Now skip-safemalloc is default (ie, we only do checking of memory overrun during free()) to speed up tests
      sql/sql_parse.cc:
        Fixed old bug: 'show status' now shows memory usage when compiled with safemalloc.
      storage/archive/archive_reader.c:
        Changed all malloc() calls to use my_malloc()/my_free()
        Added checks of malloc() calls.
      storage/archive/ha_archive.cc:
        Detect failure if init_archive_reader() and return errno. This fixed assert crash in my_seek().
        Changed all malloc() calls to use my_malloc()/my_free()
      69ffc066
  14. 06 Jun, 2011 1 commit
  15. 25 Apr, 2011 1 commit
  16. 18 Mar, 2011 1 commit
    • Michael Widenius's avatar
      Ensure that all clients reads the appropriate 'client', client-mariadb and... · 0fae0335
      Michael Widenius authored
      Ensure that all clients reads the appropriate 'client', client-mariadb and 'mariadb' sections from my.cnf
      The mysqld server and all clients now reads the new client-server section
      Fixed that mysqldumpslow supports new slow log formats and new mysqld --slow- options
      
      
      client/mysql.cc:
        Read also client-server and client-mariadb sections.
      client/mysql_upgrade.c:
        Read also client-server and client-mariadb sections.
      client/mysqladmin.cc:
        Read also client-server and client-mariadb sections.
      client/mysqlbinlog.cc:
        Read also client-server and client-mariadb sections.
      client/mysqlcheck.c:
        Read also client-server and client-mariadb sections.
      client/mysqldump.c:
        Read also client-server and client-mariadb sections.
      client/mysqlimport.c:
        Read also client-server and client-mariadb sections.
      client/mysqlshow.c:
        Read also client-server and client-mariadb sections.
      client/mysqltest.cc:
        Read also client-server and client-mariadb sections.
      extra/my_print_defaults.c:
        Updated help text
      scripts/mysql_fix_privilege_tables.sh:
        Read also sections client client-server client-mariadb
      scripts/mysql_install_db.pl.in:
        Also allow --data=* option
        Read also groups mariadb, server and client-server.
      scripts/mysql_install_db.sh:
        Also allow --data=* option
        Read also groups mariadb, server and client-server.
        Added --lose-skip-pbxt to bootstrap
      scripts/mysql_secure_installation.sh:
        Read also groups client-server and client-mariadb
      scripts/mysqld_multi.sh:
        Read also group mariadb
      scripts/mysqld_safe.sh:
        Read also groups mariadb server and client-server
      scripts/mysqldumpslow.sh:
        Fixed to support new slow log formats
        Added sorting on -ae (aggregated number of retreived rows) and e (retrieved rows)
        Read also group 'mariadb'
        If there is many instances of same option, use last one.
        Get slow log file from options log-slow-queries=filename or query-log-file=filename
        Added support for future --log-basename option
      sql-common/client.c:
        Read also groups 'client-server' and 'client-mariadb'
      tests/mysql_client_test.c:
        Read also groups 'client-server' and 'client-mariadb'
      tests/thread_test.c:
        Read also groups 'client-server' and 'client-mariadb'
      0fae0335
  17. 08 Mar, 2011 1 commit
    • Jon Olav Hauglid's avatar
      Bug #11755431 (former 47205) · 0db0e64f
      Jon Olav Hauglid authored
      MAP 'REPAIR TABLE' TO RECREATE +ANALYZE FOR ENGINES NOT
      SUPPORTING NATIVE REPAIR
      
      Executing 'mysqlcheck --check-upgrade --auto-repair ...' will first issue
      'CHECK TABLE FOR UPGRADE' for all tables in the database in order to check if the
      tables are compatible with the current version of MySQL. Any tables that are
      found incompatible are then upgraded using 'REPAIR TABLE'.
      
      The problem was that some engines (e.g. InnoDB) do not support 'REPAIR TABLE'.
      This caused any such tables to be left incompatible. As a result such tables were
      not properly fixed by the mysql_upgrade tool.
      
      This patch fixes the problem by first changing 'CHECK TABLE FOR UPGRADE' to return
      a different error message if the engine does not support REPAIR. Instead of
      "Table upgrade required. Please do "REPAIR TABLE ..." it will report
      "Table rebuild required. Please do "ALTER TABLE ... FORCE ..."
      
      Second, the patch changes mysqlcheck to do 'ALTER TABLE ... FORCE' instead of
      'REPAIR TABLE' in these cases.
      
      This patch also fixes 'ALTER TABLE ... FORCE' to actually rebuild the table.
      This change should be reflected in the documentation. Before this patch,
      'ALTER TABLE ... FORCE' was unused (See Bug#11746162)
      
      Test case added to mysqlcheck.test
      
      
      client/mysqlcheck.c:
        Changed mysqlcheck to do 'ALTER TABLE ... FORCE' if
        'CHECK TABLE FOR UPGRADE' reports ER_TABLE_NEEDS_REBUILD
        and not ER_TABLE_NEEDS_UPGRADE.
      mysql-test/r/mysqlcheck.result:
        Added regression test.
      mysql-test/std_data/bug47205.frm:
        InnoDB 5.0 FRM which contains a varchar primary key using
        utf8_general_ci. This is an incompatible FRM for 5.5.
      mysql-test/t/mysqlcheck.test:
        Added regression test.
      sql/handler.h:
        Added new HA_CAN_REPAIR flag.
      sql/share/errmsg-utf8.txt:
        Added new error message ER_TABLE_NEEDS_REBUILD
      sql/sql_admin.cc:
        Changed 'CHECK TABLE FOR UPDATE' to give ER_TABLE_NEEDS_REBUILD
        instead of ER_TABLE_NEEDS_UPGRADE if the engine does not support
        REPAIR (as indicated by the new HA_CAN_REPAIR flag).
      sql/sql_lex.h:
        Remove unused ALTER_FORCE flag.
      sql/sql_yacc.yy:
        Make sure ALTER TABLE ... FORCE recreates the table
        by setting the ALTER_RECREATE flag as the ALTER_FORCE
        flag was unused.
      storage/archive/ha_archive.h:
        Added new HA_CAN_REPAIR flag to Archive
      storage/csv/ha_tina.h:
        Added new HA_CAN_REPAIR flag to CSV
      storage/federated/ha_federated.h:
        Added new HA_CAN_REPAIR flag to Federated
      storage/myisam/ha_myisam.cc:
        Added new HA_CAN_REPAIR flag to MyISAM
      0db0e64f
  18. 16 Jan, 2011 1 commit
    • Nirbhay Choubey's avatar
      Bug#58139 : default-auth option not recognized in MySQL standard · 6d45683b
      Nirbhay Choubey authored
                  command line clients.
      
      Postfix covering other mysql standard clients like mysql_upgrade,
      mysqlbinlog, mysqlcheck, mysqlimport, mysqlshow and mysqlslap.
      
      
      client/client_priv.h:
        Bug#58139 : default-auth option not recognized in MySQL standard
                    command line clients
        
        Added an entry for 'default-auth' option.
      client/mysql.cc:
        Bug#58139 : default-auth option not recognized in MySQL standard
                    command line clients
        
        Updated the id entry for default_auth option.
      client/mysql_upgrade.c:
        Bug#58139 : default-auth option not recognized in MySQL standard
                    command line clients.
        
        Introduced two new variables to hold values from default-auth and
        plugin-dir options and further pushed them to client's st_mysql
        instance.
      client/mysqladmin.cc:
        Bug#58139 : default-auth option not recognized in MySQL standard
                    command line clients
        
        Updated the id entry for default_auth option.
      client/mysqlbinlog.cc:
        Bug#58139 : default-auth option not recognized in MySQL standard
                    command line clients.
        
        Introduced two new variables to hold values from default-auth and
        plugin-dir options and further pushed them to client's st_mysql
        instance.
      client/mysqlcheck.c:
        Bug#58139 : default-auth option not recognized in MySQL standard
                    command line clients.
        
        Introduced two new variables to hold values from default-auth and
        plugin-dir options and further pushed them to client's st_mysql
        instance.
      client/mysqldump.c:
        Bug#58139 : default-auth option not recognized in MySQL standard
                    command line clients
        
        Updated the id entry for default_auth option.
      client/mysqlimport.c:
        Bug#58139 : default-auth option not recognized in MySQL standard
                    command line clients.
        
        Introduced two new variables to hold values from default-auth and
        plugin-dir options and further pushed them to client's st_mysql
        instance.
      client/mysqlshow.c:
        Bug#58139 : default-auth option not recognized in MySQL standard
                    command line clients.
        
        Introduced two new variables to hold values from default-auth and
        plugin-dir options and further pushed them to client's st_mysql
        instance.
      client/mysqlslap.c:
        Bug#58139 : default-auth option not recognized in MySQL standard
                    command line clients.
        
        Introduced two new variables to hold values from default-auth and
        plugin-dir options and further pushed them to client's st_mysql
        instance.
      mysql-test/r/plugin_auth.result:
        Added test case for Bug#58139 for mysql_upgrade.
      mysql-test/t/plugin_auth.test:
        Added test case for Bug#58139 for mysql_upgrade.
      6d45683b
  19. 08 Oct, 2010 1 commit
    • Alexey Botchkov's avatar
      Bug#35269 mysqlcheck behaves different depending on order of parameters · 42dc7264
      Alexey Botchkov authored
              Issue an error if user specifies multiple commands to run.
              Also there was an unnoticed bug that DO_CHECK was actually 0 which lead
              to wrong actions in some cases.
              The mysqlcheck.test contained commands with the suspicious meaning
              for the above reason. Extra commands removed from there.
      
      per-file commands:
        client/mysqlcheck.c
      Bug#35269      mysqlcheck behaves different depending on order of parameters
              Drop with an error if multiple commands.
        mysql-test/r/mysqlcheck.result
      Bug#35269      mysqlcheck behaves different depending on order of parameters
              result completed.
        mysql-test/t/mysqlcheck.test
      Bug#35269      mysqlcheck behaves different depending on order of parameters
              testcase added.
              not-working commands removed from some mysqlcheck calls.
      42dc7264
  20. 06 Oct, 2010 1 commit
  21. 05 Sep, 2010 2 commits
    • Michael Widenius's avatar
      Fixed build failures · 4c7af343
      Michael Widenius authored
      Cleaned up mysql_upgrade --help and mysqlcheck --help
      
      client/mysql_upgrade.c:
        Increased version number.
        Marked all options that are not used 'Not used'.
        Don't write 'Looking for tool' if not using --verbose
      client/mysqlcheck.c:
        Cleanup output for --help
        Reset not initialzed variable
      mysql-test/r/log_tables_upgrade.result:
        Updated results
      mysql-test/r/mysql_upgrade.result:
        Updated results
      mysql-test/r/mysqlcheck.result:
        Updated results
      mysql-test/t/log_tables_upgrade.test:
        mysql_upgrade is now run without --skip-verbose
      mysql-test/t/mysql_upgrade.test:
        mysql_upgrade is now run without --skip-verbose
      4c7af343
    • Michael Widenius's avatar
      Nicer output for mysql_upgrade · 74af6dfa
      Michael Widenius authored
      Added --silent option to mysql_upgrade so that one can only get errors printed
      Don't write unnecessary warning about log tables during upgrade
      
      
      
      client/mysql_upgrade.c:
        Don't print connect arguments if not using --verbose --verbose
        Added option --silent to only print errors. This options is passed to mysqlcheck.
        Write out phase names
        The 'verbose' code is a bit strange as I wanted to keep compatibility with old mysql_upgrade
      client/mysqlcheck.c:
        Don't upgrade log tables (to avoid confusing warning message that they can't be locked)
      74af6dfa
  22. 03 Sep, 2010 1 commit
    • Michael Widenius's avatar
      Fix that one can run mysql_upgrade with long table names · a4fff491
      Michael Widenius authored
      Fall back to use ALTER TABLE for engines that doesn't support REPAIR when doing repair for upgrade.
      Nicer output from mysql_upgrade and mysql_check
      Updated all arrays that used NAME_LEN to use SAFE_NAME_LEN to ensure that we don't break things accidently as names can now have a #mysql50# prefix.
      
      client/mysql_upgrade.c:
        If we are using verbose, also run mysqlcheck in verbose mode.
      client/mysqlcheck.c:
        Add more information if running in verbose mode
        Print 'Needs upgrade' instead of complex error if table needs to be upgraded
        Don't write connect information if verbose is not 2 or above
      mysql-test/r/drop.result:
        Updated test and results as we now support full table names
      mysql-test/r/grant.result:
        Now you get a correct error message if using #mysql with paths
      mysql-test/r/show_check.result:
        Update results as table names can temporarly be bigger than NAME_LEN (during upgrade)
      mysql-test/r/upgrade.result:
        Test upgrade for long table names.
      mysql-test/suite/funcs_1/r/is_tables_is.result:
        Updated old test result (had note been updated in a while)
      mysql-test/t/drop.test:
        Updated test and results as we now support full table names
      mysql-test/t/grant.test:
        Now you get a correct error message if using #mysql with paths
      mysql-test/t/upgrade.test:
        Test upgrade for long table names.
      sql/ha_partition.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/item.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/log_event.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/mysql_priv.h:
        Added SAFE_NAME_LEN
      sql/rpl_filter.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/sp.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/sp_head.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/sql_acl.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/sql_base.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/sql_connect.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/sql_parse.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/sql_prepare.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/sql_select.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/sql_show.cc:
        NAME_LEN -> SAFE_NAME_LEN
        Enlarge table names for SHOW TABLES to also include optional #mysql50#
      sql/sql_table.cc:
        Fall back to use ALTER TABLE for engines that doesn't support REPAIR when doing repair for upgrade.
      sql/sql_trigger.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/sql_udf.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/sql_view.cc:
        NAME_LEN -> SAFE_NAME_LEN
      sql/table.cc:
        Fixed check_table_name() to not count #mysql50# as part of name
        If #mysql50# is part of the name, don't allow path characters in name.
      a4fff491
  23. 11 Aug, 2010 1 commit
    • Michael Widenius's avatar
      Fixed compiler warnings from Windows compiler · 236478ce
      Michael Widenius authored
      client/mysqlcheck.c:
        Added missing casts
      client/mysqldump.c:
        Added missing casts
      client/mysqlimport.c:
        Added missing casts
      extra/my_print_defaults.c:
        Added missing casts
      mysql-test/mysql-test-run.pl:
        Added suppression for non-critical warning on windows
      storage/maria/maria_pack.c:
        Added missing casts
      storage/xtradb/buf/buf0lru.c:
        Added missing casts
      storage/xtradb/fil/fil0fil.c:
        Added missing casts
      storage/xtradb/handler/i_s.cc:
        Added extra argument to call store() function for longlong.
      storage/xtradb/srv/srv0srv.c:
        Added cast to suppress compiler warning
      support-files/compiler_warnings.supp:
        Added suppression for some non critical compiler warnings on Windows
      unittest/mytap/tap.h:
        Fixed prototypes to be same as the actual functions
      236478ce
  24. 15 Jul, 2010 1 commit
  25. 09 Jul, 2010 1 commit
    • Davi Arnaut's avatar
      Bug#45288: pb2 returns a lot of compilation warnings on linux · 11fae045
      Davi Arnaut authored
      Although the C standard mandates that sprintf return the number
      of bytes written, some very ancient systems (i.e. SunOS 4)
      returned a pointer to the buffer instead. Since these systems
      are not supported anymore and are hopefully long dead by now,
      simply remove the portability wrapper that dealt with this
      discrepancy. The autoconf check was causing trouble with GCC.
      11fae045
  26. 08 Jul, 2010 1 commit
    • Davi Arnaut's avatar
      Bug#34043: Server loops excessively in _checkchunk() when safemalloc is enabled · f56dd32b
      Davi Arnaut authored
      Essentially, the problem is that safemalloc is excruciatingly
      slow as it checks all allocated blocks for overrun at each
      memory management primitive, yielding a almost exponential
      slowdown for the memory management functions (malloc, realloc,
      free). The overrun check basically consists of verifying some
      bytes of a block for certain magic keys, which catches some
      simple forms of overrun. Another minor problem is violation
      of aliasing rules and that its own internal list of blocks
      is prone to corruption.
      
      Another issue with safemalloc is rather the maintenance cost
      as the tool has a significant impact on the server code.
      Given the magnitude of memory debuggers available nowadays,
      especially those that are provided with the platform malloc
      implementation, maintenance of a in-house and largely obsolete
      memory debugger becomes a burden that is not worth the effort
      due to its slowness and lack of support for detecting more
      common forms of heap corruption.
      
      Since there are third-party tools that can provide the same
      functionality at a lower or comparable performance cost, the
      solution is to simply remove safemalloc. Third-party tools
      can provide the same functionality at a lower or comparable
      performance cost. 
      
      The removal of safemalloc also allows a simplification of the
      malloc wrappers, removing quite a bit of kludge: redefinition
      of my_malloc, my_free and the removal of the unused second
      argument of my_free. Since free() always check whether the
      supplied pointer is null, redudant checks are also removed.
      
      Also, this patch adds unit testing for my_malloc and moves
      my_realloc implementation into the same file as the other
      memory allocation primitives.
      
      client/mysqldump.c:
        Pass my_free directly as its signature is compatible with the
        callback type -- which wasn't the case for free_table_ent.
      f56dd32b
  27. 10 Jun, 2010 1 commit
    • Davi Arnaut's avatar
      Bug#42733: Type-punning warnings when compiling MySQL -- · 6f3a540c
      Davi Arnaut authored
                 strict aliasing violations.
      
      Essentially, the problem is that large parts of the server were
      developed in simpler times (last decades, pre C99 standard) when
      strict aliasing and compilers supporting such optimizations were
      rare to non-existent. Thus, when compiling the server with a modern
      compiler that uses strict aliasing rules to perform optimizations,
      there are several places in the code that might trigger undefined
      behavior.
      
      As evinced by some recent bugs, GCC does a somewhat good of job
      misoptimizing such code, but on the other hand also gives warnings
      about suspicious code. One problem is that the warnings aren't
      always accurate, yet we can't afford to just shut them off as we
      might miss real cases. False-positive cases are aggravated mostly
      by casts that are likely to trigger undefined behavior.
      
      The solution is to start a cleanup process focused on fixing and
      reducing the amount of strict-aliasing related warnings produced
      by GCC and others compilers. A good deal of noise reduction can
      be achieved by just removing useless casts that are product of
      historical cruft and are likely to trigger undefined behavior if
      dereferenced.
      
      client/mysql.cc:
        Remove now-unnecessary casts.
        Break up large strings.
      client/mysql_upgrade.c:
        Remove now-unnecessary casts.
      client/mysqladmin.cc:
        Remove now-unnecessary casts.
        Break up large strings.
      client/mysqlbinlog.cc:
        Remove now-unnecessary casts.
      client/mysqlcheck.c:
        Remove now-unnecessary casts.
      client/mysqldump.c:
        Remove now-unnecessary casts.
      client/mysqlimport.c:
        Remove now-unnecessary casts.
      client/mysqlshow.c:
        Remove now-unnecessary casts.
      client/mysqlslap.c:
        Remove now-unnecessary casts.
      client/mysqltest.cc:
        Remove now-unnecessary casts.
      extra/comp_err.c:
        Remove now-unnecessary casts.
      extra/my_print_defaults.c:
        Remove now-unnecessary casts.
        Break up large strings.
      extra/mysql_waitpid.c:
        Remove now-unnecessary casts.
      extra/perror.c:
        Remove now-unnecessary casts.
      extra/resolve_stack_dump.c:
        Remove now-unnecessary casts.
      extra/resolveip.c:
        Remove now-unnecessary casts.
      include/my_getopt.h:
        Use a void pointer type as the opaque type to avoid problems with type
        incompatibility -- GCC issues warnings when the type name is not type
        compatible with a operand. As a side bonus, a explicit cast won't be
        necessary anymore.
      include/sslopt-longopts.h:
        Remove now-unnecessary casts.
        Break up large strings.
      mysys/my_getopt.c:
        Update opaque type and introduce a type definition for the
        argument to my_getopt_register_get_addr.
      server-tools/instance-manager/options.cc:
        Remove now-unnecessary casts.
      sql/mysqld.cc:
        Remove now-unnecessary casts.
        Break up large strings.
        Update mysql_getopt_value prototype (the old prototype
        was different from the definition anyway).
      sql/sql_plugin.cc:
        The type of a pointer to a function must be compatible with the
        pointed-to function type, otherwise the behavior is undefined.
      sql/table.cc:
        The variable buf pointer to pointer to pointer to constant char
        could improperly alias a incompatible type in call to fix_type_
        pointers. Since this was actually dead code, it is simply removed.
      sql/unireg.cc:
        Remove call to get_form_pos. The code creates a new FRM file which
        is always truncated and writes the form position as 0. Hence, no
        need to retrieve it, we now for sure it is 0.
      storage/archive/archive_reader.c:
        Remove now-unnecessary casts.
      storage/myisam/ft_nlq_search.c:
        Read weight directly from the buffer.
      storage/myisam/fulltext.h:
        Add explanation about the type duality of a key buffer.
        Add accessor macro to retrieve a FT float value.
      storage/myisam/mi_test1.c:
        Remove now-unnecessary casts.
      storage/myisam/myisam_ftdump.c:
        Read weight directly from the buffer.
      storage/myisam/myisamchk.c:
        Remove now-unnecessary casts.
      storage/myisam/myisamlog.c:
        A pointer to char was used to alias a pointer to pointer to
        unsigned char, thus violating strict aliasing rules.
      storage/myisam/myisampack.c:
        Remove now-unnecessary casts.
      strings/decimal.c:
        Remove aliasing violation, printing the value is enough for
        debugging purposes.
      tests/mysql_client_test.c:
        Remove now-unnecessary casts.
      6f3a540c
  28. 04 Feb, 2010 1 commit
  29. 10 Dec, 2009 1 commit
  30. 03 Nov, 2009 1 commit
    • Magne Mahre's avatar
      Bug#35224: mysqldump --help is very confusing · 0dae88ca
      Magne Mahre authored
        
      The presence of "--skip" parameters is obscure, when it should be
      obvious from the text.
        
      Now, for boolean options, when they're default to ON and the --skip
      is more useful parameter, then tell the user of its existence.
      
      Backported from 6.0-codebase, revid  2572.14.1
      0dae88ca
  31. 21 Oct, 2009 1 commit
  32. 09 Oct, 2009 1 commit
    • Alexey Botchkov's avatar
      Bug#47216 programs should quit if the file specified by --defaults-file option isn't found · 760d42e7
      Alexey Botchkov authored
          added code to exit a tool if the forced config file wasn't found
      
      per-file comments:
        client/mysql.cc
      Bug#47216      programs should quit if the file specified by --defaults-file option isn't found
          added code to exit a tool if the forced config file wasn't found
        client/mysql_upgrade.c
      Bug#47216      programs should quit if the file specified by --defaults-file option isn't found
          added code to exit a tool if the forced config file wasn't found
        client/mysqladmin.cc
      Bug#47216      programs should quit if the file specified by --defaults-file option isn't found
          added code to exit a tool if the forced config file wasn't found
        client/mysqlcheck.c
      Bug#47216      programs should quit if the file specified by --defaults-file option isn't found
          added code to exit a tool if the forced config file wasn't found
        client/mysqldump.c
      Bug#47216      programs should quit if the file specified by --defaults-file option isn't found
          added code to exit a tool if the forced config file wasn't found
        client/mysqlimport.c
      Bug#47216      programs should quit if the file specified by --defaults-file option isn't found
          added code to exit a tool if the forced config file wasn't found
        client/mysqlshow.c
      Bug#47216      programs should quit if the file specified by --defaults-file option isn't found
          added code to exit a tool if the forced config file wasn't found
        client/mysqlslap.c
      Bug#47216      programs should quit if the file specified by --defaults-file option isn't found
          added code to exit a tool if the forced config file wasn't found
        mysql-test/t/mysql.test
      Bug#47216      programs should quit if the file specified by --defaults-file option isn't found
         test added
        sql/mysqld.cc
      Bug#47216      programs should quit if the file specified by --defaults-file option isn't found
          added code to exit a tool if the forced config file wasn't found
        storage/myisam/myisamchk.c
      Bug#47216      programs should quit if the file specified by --defaults-file option isn't found
          added code to exit a tool if the forced config file wasn't found
        storage/myisam/myisampack.c
      Bug#47216      programs should quit if the file specified by --defaults-file option isn't found
          added code to exit a tool if the forced config file wasn't found
      760d42e7
  33. 28 Sep, 2009 1 commit
    • unknown's avatar
      BUG#43579 mysql_upgrade tries to alter log tables on replicated database · 96665fd9
      unknown authored
      All statements executed by mysql_upgrade are binlogged and then are replicated to slave.
      This will result in some errors. The report of this bug has demonstrated some examples.
      
      Master and slave should be upgraded separately. All statements executed by
      mysql_upgrade will not be binlogged. 
      --write-binlog and --skip-write-binlog options are added into mysql_upgrade. 
      These options control whether sql statements are binlogged or not. 
      96665fd9
  34. 03 Jun, 2009 1 commit
  35. 21 May, 2009 1 commit
  36. 07 May, 2009 1 commit
  37. 10 Feb, 2009 1 commit