From: Marc Alff Date: October 26 2010 10:13am Subject: bzr push into mysql-trunk-bugfixing branch (marc.alff:3288 to 3289) List-Archive: http://lists.mysql.com/commits/121909 Message-Id: <201010261014.o9Q737rQ014038@acsinet15.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit 3289 Marc Alff 2010-10-26 [merge] Merge mysql-5.5-bugteam --> mysql-trunk-bugfixing modified: include/my_getopt.h mysys/my_getopt.c 3288 Alexander Nozdrin 2010-10-26 [merge] Auto-merge from mysql-trunk-merge. removed: mysql-test/suite/innodb/r/innodb-system-table-view.result mysql-test/suite/innodb/t/innodb-system-table-view-master.opt mysql-test/suite/innodb/t/innodb-system-table-view.test mysql-test/suite/rpl/t/rpl_mixed_binlog_max_cache_size-master.opt mysql-test/suite/rpl/t/rpl_row_binlog_max_cache_size-master.opt mysql-test/suite/rpl/t/rpl_stm_binlog_max_cache_size-master.opt pstack/ pstack/Makefile.am pstack/aout/ pstack/aout/Makefile.am pstack/aout/aout64.h pstack/aout/stab.def pstack/aout/stab_gnu.h pstack/bucomm.c pstack/bucomm.h pstack/budbg.h pstack/debug.c pstack/debug.h pstack/demangle.h pstack/filemode.c pstack/ieee.c pstack/ieee.h pstack/libiberty.h pstack/linuxthreads.c pstack/linuxthreads.h pstack/pstack.c pstack/pstack.h pstack/pstacktrace.h pstack/rddbg.c pstack/stabs.c storage/innobase/COPYING storage/innobase/COPYING.Sun_Microsystems storage/innobase/handler/mysql_addons.cc storage/innobase/include/mysql_addons.h storage/innobase/include/ut0auxconf.h storage/innobase/mysql-test/ storage/innobase/mysql-test/patches/ storage/innobase/mysql-test/patches/README storage/innobase/mysql-test/patches/index_merge_innodb-explain.diff storage/innobase/mysql-test/patches/information_schema.diff storage/innobase/mysql-test/patches/innodb_change_buffering_basic.diff storage/innobase/mysql-test/patches/innodb_file_per_table.diff storage/innobase/mysql-test/patches/innodb_lock_wait_timeout.diff storage/innobase/mysql-test/patches/innodb_thread_concurrency_basic.diff storage/innobase/mysql-test/patches/partition_innodb.diff storage/innobase/ut/ut0auxconf_atomic_pthread_t_gcc.c storage/innobase/ut/ut0auxconf_atomic_pthread_t_solaris.c storage/innobase/ut/ut0auxconf_have_gcc_atomics.c storage/innobase/ut/ut0auxconf_have_solaris_atomics.c storage/innobase/ut/ut0auxconf_pause.c storage/innobase/ut/ut0auxconf_sizeof_pthread_t.c added: include/mysql/client_plugin.h include/mysql/client_plugin.h.pp include/mysql/plugin_auth.h include/mysql/plugin_auth.h.pp include/mysql/plugin_auth_common.h include/welcome_copyright_notice.h mysql-test/extra/rpl_tests/rpl_stop_slave.test mysql-test/include/have_plugin_auth.inc mysql-test/include/have_plugin_interface.inc mysql-test/include/have_plugin_server.inc mysql-test/r/lowercase_table4.result mysql-test/r/plugin_auth.result mysql-test/r/plugin_auth_qa.result mysql-test/r/plugin_auth_qa_1.result mysql-test/r/plugin_auth_qa_2.result mysql-test/r/plugin_auth_qa_3.result mysql-test/r/plugin_load_option.result mysql-test/std_data/parts/t1TIMESTAMP.frm mysql-test/suite/innodb/r/innodb-truncate.result mysql-test/suite/innodb/r/innodb_bug56143.result mysql-test/suite/innodb/r/innodb_bug56632.result mysql-test/suite/innodb/r/innodb_bug56680.result mysql-test/suite/innodb/r/innodb_bug56716.result mysql-test/suite/innodb/r/innodb_bug57252.result mysql-test/suite/innodb/t/innodb-truncate.test mysql-test/suite/innodb/t/innodb_bug56143.test mysql-test/suite/innodb/t/innodb_bug56632.test mysql-test/suite/innodb/t/innodb_bug56680.test mysql-test/suite/innodb/t/innodb_bug56716.test mysql-test/suite/innodb/t/innodb_bug57252.test mysql-test/suite/rpl/r/rpl_stop_slave.result mysql-test/suite/rpl/t/rpl_stop_slave.test mysql-test/suite/sys_vars/r/external_user_basic.result mysql-test/suite/sys_vars/r/proxy_user_basic.result mysql-test/suite/sys_vars/t/external_user_basic.test mysql-test/suite/sys_vars/t/proxy_user_basic.test mysql-test/t/lowercase_table4-master.opt mysql-test/t/lowercase_table4.test mysql-test/t/plugin_auth-master.opt mysql-test/t/plugin_auth.test mysql-test/t/plugin_auth_qa-master.opt mysql-test/t/plugin_auth_qa.test mysql-test/t/plugin_auth_qa_1-master.opt mysql-test/t/plugin_auth_qa_1.test mysql-test/t/plugin_auth_qa_2-master.opt mysql-test/t/plugin_auth_qa_2.test mysql-test/t/plugin_auth_qa_3-master.opt mysql-test/t/plugin_auth_qa_3.test mysql-test/t/plugin_load_option-master.opt mysql-test/t/plugin_load_option.test plugin/auth/ plugin/auth/CMakeLists.txt plugin/auth/Makefile.am plugin/auth/auth_socket.c plugin/auth/dialog.c plugin/auth/plug.in plugin/auth/qa_auth_client.c plugin/auth/qa_auth_interface.c plugin/auth/qa_auth_server.c plugin/auth/test_plugin.c sql-common/client_plugin.c storage/innobase/include/dict0priv.h storage/innobase/include/dict0priv.ic unittest/gunit/dbug-t.cc renamed: config/ac-macros/ha_ndbcluster.m4 => storage/ndb/ndb_configure.m4 modified: BUILD/SETUP.sh CMakeLists.txt Doxyfile-wl4895 Makefile.am README client/CMakeLists.txt client/client_priv.h client/mysql.cc client/mysql_upgrade.c client/mysqladmin.cc client/mysqlbinlog.cc client/mysqlcheck.c client/mysqldump.c client/mysqlimport.c client/mysqlshow.c client/mysqlslap.c client/mysqltest.cc client/sql_string.h cmake/abi_check.cmake cmake/build_configurations/mysql_release.cmake cmake/install_layout.cmake cmake/os/Linux.cmake cmake/os/WindowsCache.cmake cmd-line-utils/libedit/common.c cmd-line-utils/libedit/readline.c cmd-line-utils/libedit/vi.c cmd-line-utils/readline/complete.c cmd-line-utils/readline/histexpand.c cmd-line-utils/readline/histfile.c cmd-line-utils/readline/isearch.c cmd-line-utils/readline/parens.c cmd-line-utils/readline/readline.c cmd-line-utils/readline/terminal.c cmd-line-utils/readline/text.c config.h.cmake config/ac-macros/maintainer.m4 configure.cmake configure.in dbug/dbug.c include/Makefile.am include/errmsg.h include/my_compiler.h include/my_dbug.h include/my_global.h include/my_no_pthread.h include/my_pthread.h include/my_sys.h include/mysql.h include/mysql.h.pp include/mysql/plugin.h include/mysql/psi/mysql_thread.h include/mysql_com.h include/mysql_embed.h include/sha1.h include/sql_common.h libmysql/CMakeLists.txt libmysql/Makefile.shared libmysql/client_settings.h libmysql/errmsg.c libmysql/libmysql.c libmysql/libmysql.def libmysqld/CMakeLists.txt libmysqld/Makefile.am libmysqld/embedded_priv.h libmysqld/lib_sql.cc libmysqld/libmysqld.c mysql-test/collections/default.daily mysql-test/collections/default.experimental mysql-test/collections/default.weekly mysql-test/extra/binlog_tests/implicit.test mysql-test/extra/rpl_tests/create_recursive_construct.inc mysql-test/extra/rpl_tests/rpl_binlog_max_cache_size.test mysql-test/extra/rpl_tests/rpl_get_master_version_and_clock.test mysql-test/extra/rpl_tests/rpl_loaddata.test mysql-test/extra/rpl_tests/rpl_row_sp003.test mysql-test/extra/rpl_tests/rpl_start_stop_slave.test mysql-test/include/check_concurrent_insert.inc mysql-test/include/check_no_concurrent_insert.inc mysql-test/include/ctype_numconv.inc mysql-test/include/get_relay_log_pos.inc mysql-test/include/handler.inc mysql-test/include/index_merge2.inc mysql-test/include/kill_query.inc mysql-test/include/kill_query_and_diff_master_slave.inc mysql-test/include/mtr_warnings.sql mysql-test/include/mysqld--help.inc mysql-test/include/setup_fake_relay_log.inc mysql-test/include/show_events.inc mysql-test/include/show_rpl_debug_info.inc mysql-test/include/wait_for_slave_io_error.inc mysql-test/include/wait_for_slave_param.inc mysql-test/include/wait_for_slave_sql_error.inc mysql-test/include/wait_for_status_var.inc mysql-test/lib/mtr_cases.pm mysql-test/lib/mtr_misc.pl mysql-test/lib/mtr_process.pl mysql-test/lib/mtr_report.pm mysql-test/mysql-test-run.pl mysql-test/r/1st.result mysql-test/r/cache_innodb.result mysql-test/r/change_user.result mysql-test/r/check.result mysql-test/r/connect.result mysql-test/r/ctype_ucs.result mysql-test/r/delayed.result mysql-test/r/delete.result mysql-test/r/events_bugs.result mysql-test/r/flush.result mysql-test/r/func_math.result mysql-test/r/func_misc.result mysql-test/r/func_time.result mysql-test/r/gis.result mysql-test/r/grant.result mysql-test/r/grant2.result mysql-test/r/grant3.result mysql-test/r/grant_cache_no_prot.result mysql-test/r/grant_cache_ps_prot.result mysql-test/r/handler_innodb.result mysql-test/r/handler_myisam.result mysql-test/r/index_merge_myisam.result mysql-test/r/information_schema.result mysql-test/r/ipv4_as_ipv6.result mysql-test/r/join.result mysql-test/r/lock_sync.result mysql-test/r/log_tables_upgrade.result mysql-test/r/lowercase_fs_off.result mysql-test/r/mdl_sync.result mysql-test/r/merge.result mysql-test/r/myisampack.result mysql-test/r/mysql_upgrade.result mysql-test/r/mysql_upgrade_ssl.result mysql-test/r/mysqlcheck.result mysql-test/r/mysqld--help-notwin.result mysql-test/r/mysqld--help-win.result mysql-test/r/mysqlshow.result mysql-test/r/mysqltest.result mysql-test/r/partition.result mysql-test/r/partition_error.result mysql-test/r/partition_exchange.result mysql-test/r/ps.result mysql-test/r/ps_2myisam.result mysql-test/r/ps_3innodb.result mysql-test/r/ps_4heap.result mysql-test/r/ps_5merge.result mysql-test/r/query_cache_debug.result mysql-test/r/select.result mysql-test/r/sp-destruct.result mysql-test/r/sp-security.result mysql-test/r/sp_notembedded.result mysql-test/r/sp_trans.result mysql-test/r/system_mysql_db.result mysql-test/r/timezone2.result mysql-test/r/trigger-trans.result mysql-test/r/type_datetime.result mysql-test/r/user_var.result mysql-test/r/variables_debug.result mysql-test/r/xa.result mysql-test/suite/binlog/t/binlog_unsafe.test mysql-test/suite/federated/federated.result mysql-test/suite/funcs_1/r/innodb_storedproc_06.result mysql-test/suite/funcs_1/r/innodb_trig_03e.result mysql-test/suite/funcs_1/r/is_columns_is.result mysql-test/suite/funcs_1/r/is_columns_mysql.result mysql-test/suite/funcs_1/r/is_key_column_usage.result mysql-test/suite/funcs_1/r/is_statistics.result mysql-test/suite/funcs_1/r/is_statistics_mysql.result mysql-test/suite/funcs_1/r/is_table_constraints.result mysql-test/suite/funcs_1/r/is_table_constraints_mysql.result mysql-test/suite/funcs_1/r/is_tables_mysql.result mysql-test/suite/funcs_1/r/is_user_privileges.result mysql-test/suite/funcs_1/r/memory_storedproc_06.result mysql-test/suite/funcs_1/r/memory_trig_03e.result mysql-test/suite/funcs_1/r/myisam_storedproc_06.result mysql-test/suite/funcs_1/r/myisam_trig_03e.result mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result mysql-test/suite/funcs_1/r/processlist_priv_ps.result mysql-test/suite/funcs_1/storedproc/storedproc_06.inc mysql-test/suite/funcs_1/t/is_user_privileges.test mysql-test/suite/innodb/r/innodb-autoinc.result mysql-test/suite/innodb/r/innodb-index.result mysql-test/suite/innodb/r/innodb-zip.result mysql-test/suite/innodb/r/innodb.result mysql-test/suite/innodb/r/innodb_bug52745.result mysql-test/suite/innodb/r/innodb_bug53591.result mysql-test/suite/innodb/r/innodb_file_format.result mysql-test/suite/innodb/r/innodb_monitor.result mysql-test/suite/innodb/r/innodb_mysql.result mysql-test/suite/innodb/t/innodb-autoinc.test mysql-test/suite/innodb/t/innodb.test mysql-test/suite/innodb/t/innodb_monitor.test mysql-test/suite/innodb/t/innodb_mysql.test mysql-test/suite/parts/inc/partition_check.inc mysql-test/suite/parts/inc/partition_check_drop.inc mysql-test/suite/parts/inc/partition_crash.inc mysql-test/suite/parts/inc/partition_fail.inc mysql-test/suite/parts/inc/partition_layout.inc mysql-test/suite/parts/inc/partition_layout_check1.inc mysql-test/suite/parts/inc/partition_layout_check2.inc mysql-test/suite/parts/r/partition_alter3_innodb.result mysql-test/suite/parts/r/partition_basic_innodb.result mysql-test/suite/parts/r/partition_debug_innodb.result mysql-test/suite/parts/r/partition_debug_myisam.result mysql-test/suite/parts/r/partition_special_innodb.result mysql-test/suite/parts/r/partition_special_myisam.result mysql-test/suite/parts/t/part_supported_sql_func_innodb.test mysql-test/suite/parts/t/partition_alter1_1_2_innodb.test mysql-test/suite/parts/t/partition_alter1_2_innodb.test mysql-test/suite/parts/t/partition_alter2_1_1_innodb.test mysql-test/suite/parts/t/partition_alter2_1_2_innodb.test mysql-test/suite/parts/t/partition_alter2_2_2_innodb.test mysql-test/suite/parts/t/partition_alter4_innodb.test mysql-test/suite/parts/t/partition_debug_sync_innodb.test mysql-test/suite/parts/t/partition_special_innodb.test mysql-test/suite/parts/t/partition_special_myisam.test mysql-test/suite/perfschema/r/column_privilege.result mysql-test/suite/perfschema/r/dml_setup_instruments.result mysql-test/suite/perfschema/r/merge_table_io.result mysql-test/suite/perfschema/r/pfs_upgrade_lc0.result mysql-test/suite/perfschema/r/pfs_upgrade_lc1.result mysql-test/suite/perfschema/r/pfs_upgrade_lc2.result mysql-test/suite/perfschema/r/privilege.result mysql-test/suite/perfschema/r/privilege_table_io.result mysql-test/suite/perfschema/t/disabled.def mysql-test/suite/rpl/r/rpl_do_grant.result mysql-test/suite/rpl/r/rpl_heartbeat.result mysql-test/suite/rpl/r/rpl_heartbeat_basic.result mysql-test/suite/rpl/r/rpl_ignore_table.result mysql-test/suite/rpl/r/rpl_mixed_binlog_max_cache_size.result mysql-test/suite/rpl/r/rpl_row_binlog_max_cache_size.result mysql-test/suite/rpl/r/rpl_row_sp003.result mysql-test/suite/rpl/r/rpl_stm_000001.result mysql-test/suite/rpl/r/rpl_stm_binlog_max_cache_size.result mysql-test/suite/rpl/r/rpl_stm_start_stop_slave.result mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result mysql-test/suite/rpl/t/disabled.def mysql-test/suite/rpl/t/rpl_do_grant.test mysql-test/suite/rpl/t/rpl_drop.test mysql-test/suite/rpl/t/rpl_killed_ddl.test mysql-test/suite/rpl/t/rpl_row_tbl_metadata.test mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test mysql-test/suite/sys_vars/r/all_vars.result mysql-test/suite/sys_vars/r/foreign_key_checks_func.result mysql-test/suite/sys_vars/r/innodb_file_format_basic.result mysql-test/suite/sys_vars/t/all_vars.test mysql-test/suite/sys_vars/t/div_precision_increment_func.test mysql-test/suite/sys_vars/t/foreign_key_checks_func.test mysql-test/t/cache_innodb.test mysql-test/t/change_user.test mysql-test/t/check.test mysql-test/t/delayed.test mysql-test/t/delete.test mysql-test/t/disabled.def mysql-test/t/flush.test mysql-test/t/func_gconcat.test mysql-test/t/func_math.test mysql-test/t/func_misc.test mysql-test/t/func_time.test mysql-test/t/gis.test mysql-test/t/grant.test mysql-test/t/grant2.test mysql-test/t/grant3.test mysql-test/t/information_schema.test mysql-test/t/join.test mysql-test/t/lock_sync.test mysql-test/t/lowercase_fs_off.test mysql-test/t/mdl_sync.test mysql-test/t/merge.test mysql-test/t/mysqlcheck.test mysql-test/t/mysqltest.test mysql-test/t/partition.test mysql-test/t/partition_binlog_stmt.test mysql-test/t/partition_error.test mysql-test/t/query_cache_debug.test mysql-test/t/select.test mysql-test/t/server_uuid_embedded.test mysql-test/t/sp-security.test mysql-test/t/sp_trans.test mysql-test/t/system_mysql_db_fix40123.test mysql-test/t/system_mysql_db_fix50030.test mysql-test/t/system_mysql_db_fix50117.test mysql-test/t/timezone2.test mysql-test/t/trigger-trans.test mysql-test/t/type_datetime.test mysql-test/t/user_var.test mysql-test/t/variables_debug.test mysql-test/t/wait_timeout.test mysql-test/t/xa.test mysys/my_gethostbyname.c mysys/my_gethwaddr.c mysys/my_sync.c mysys/my_wincond.c mysys/my_winfile.c mysys/my_winthread.c mysys/sha1.c mysys/thr_mutex.c mysys/thr_rwlock.c regex/CMakeLists.txt regex/main.c scripts/CMakeLists.txt scripts/mysql_system_tables.sql scripts/mysql_system_tables_data.sql scripts/mysql_system_tables_fix.sql sql-common/Makefile.am sql-common/client.c sql/CMakeLists.txt sql/Makefile.am sql/binlog.cc sql/client_settings.h sql/events.cc sql/events.h sql/field.cc sql/ha_ndbcluster.cc sql/ha_ndbcluster_binlog.cc sql/ha_partition.cc sql/ha_partition.h sql/handler.cc sql/handler.h sql/item.cc sql/item_cmpfunc.cc sql/item_func.cc sql/item_func.h sql/item_geofunc.h sql/item_strfunc.cc sql/item_timefunc.cc sql/item_timefunc.h sql/key.cc sql/lex.h sql/log.cc sql/log_event.cc sql/log_event.h sql/mdl.cc sql/mdl.h sql/my_decimal.h sql/mysqld.cc sql/partition_info.cc sql/partition_info.h sql/password.c sql/protocol.cc sql/protocol.h sql/rpl_rli.h sql/rpl_slave.cc sql/scheduler.h sql/set_var.cc sql/share/errmsg-utf8.txt sql/sp.cc sql/sp.h sql/sp_head.cc sql/sp_head.h sql/sql_acl.cc sql/sql_acl.h sql/sql_admin.cc sql/sql_alter.cc sql/sql_audit.h sql/sql_base.cc sql/sql_base.h sql/sql_builtin.cc.in sql/sql_cache.cc sql/sql_class.cc sql/sql_class.h sql/sql_connect.cc sql/sql_connect.h sql/sql_delete.cc sql/sql_help.cc sql/sql_insert.cc sql/sql_lex.cc sql/sql_lex.h sql/sql_load.cc sql/sql_parse.cc sql/sql_parse.h sql/sql_partition.cc sql/sql_partition.h sql/sql_partition_admin.cc sql/sql_partition_admin.h sql/sql_plugin.cc sql/sql_plugin.h sql/sql_reload.cc sql/sql_rename.cc sql/sql_select.cc sql/sql_select.h sql/sql_show.cc sql/sql_show.h sql/sql_string.h sql/sql_table.cc sql/sql_trigger.cc sql/sql_trigger.h sql/sql_truncate.cc sql/sql_truncate.h sql/sql_union.cc sql/sql_update.cc sql/sql_update.h sql/sql_yacc.yy sql/structs.h sql/sys_vars.cc sql/sys_vars.h sql/table.cc sql/table.h sql/transaction.cc sql/tztime.cc storage/archive/ha_archive.cc storage/archive/ha_archive.h storage/blackhole/ha_blackhole.cc storage/blackhole/ha_blackhole.h storage/example/ha_example.cc storage/example/ha_example.h storage/federated/ha_federated.cc storage/federated/ha_federated.h storage/heap/ha_heap.cc storage/heap/ha_heap.h storage/ibmdb2i/db2i_constraints.cc storage/ibmdb2i/ha_ibmdb2i.cc storage/innobase/CMakeLists.txt storage/innobase/Doxyfile storage/innobase/Makefile.am storage/innobase/btr/btr0btr.c storage/innobase/btr/btr0cur.c storage/innobase/btr/btr0pcur.c storage/innobase/btr/btr0sea.c storage/innobase/buf/buf0buddy.c storage/innobase/buf/buf0buf.c storage/innobase/buf/buf0flu.c storage/innobase/buf/buf0lru.c storage/innobase/buf/buf0rea.c storage/innobase/compile-innodb storage/innobase/dict/dict0boot.c storage/innobase/dict/dict0crea.c storage/innobase/dict/dict0dict.c storage/innobase/dict/dict0load.c storage/innobase/eval/eval0eval.c storage/innobase/fil/fil0fil.c storage/innobase/handler/ha_innodb.cc storage/innobase/handler/ha_innodb.h storage/innobase/handler/handler0alter.cc storage/innobase/handler/i_s.cc storage/innobase/handler/i_s.h storage/innobase/ibuf/ibuf0ibuf.c storage/innobase/include/btr0cur.h storage/innobase/include/buf0buddy.h storage/innobase/include/buf0buddy.ic storage/innobase/include/buf0buf.h storage/innobase/include/buf0buf.ic storage/innobase/include/buf0flu.h storage/innobase/include/buf0types.h storage/innobase/include/data0type.h storage/innobase/include/dict0boot.h storage/innobase/include/dict0dict.h storage/innobase/include/dict0dict.ic storage/innobase/include/dict0mem.h storage/innobase/include/dict0types.h storage/innobase/include/fil0fil.h storage/innobase/include/ha_prototypes.h storage/innobase/include/ibuf0ibuf.h storage/innobase/include/lock0lock.h storage/innobase/include/os0sync.h storage/innobase/include/pars0sym.h storage/innobase/include/rem0rec.h storage/innobase/include/row0mysql.h storage/innobase/include/row0row.h storage/innobase/include/row0upd.h storage/innobase/include/srv0mon.h storage/innobase/include/srv0srv.h storage/innobase/include/trx0trx.h storage/innobase/include/ut0rbt.h storage/innobase/include/ut0rnd.ic storage/innobase/lock/lock0lock.c storage/innobase/log/log0log.c storage/innobase/log/log0recv.c storage/innobase/os/os0file.c storage/innobase/os/os0sync.c storage/innobase/pars/pars0pars.c storage/innobase/pars/pars0sym.c storage/innobase/plug.in storage/innobase/que/que0que.c storage/innobase/rem/rem0rec.c storage/innobase/row/row0ins.c storage/innobase/row/row0merge.c storage/innobase/row/row0mysql.c storage/innobase/row/row0purge.c storage/innobase/row/row0sel.c storage/innobase/row/row0uins.c storage/innobase/row/row0umod.c storage/innobase/row/row0upd.c storage/innobase/row/row0vers.c storage/innobase/srv/srv0mon.c storage/innobase/srv/srv0srv.c storage/innobase/srv/srv0start.c storage/innobase/sync/sync0sync.c storage/innobase/trx/trx0i_s.c storage/innobase/trx/trx0purge.c storage/innobase/trx/trx0roll.c storage/innobase/trx/trx0sys.c storage/innobase/trx/trx0trx.c storage/innobase/trx/trx0undo.c storage/myisam/ha_myisam.cc storage/myisam/ha_myisam.h storage/myisam/myisamchk.c storage/myisammrg/ha_myisammrg.cc storage/myisammrg/ha_myisammrg.h storage/ndb/plug.in storage/perfschema/ha_perfschema.cc storage/perfschema/ha_perfschema.h strings/ctype-ucs2.c strings/my_vsnprintf.c tests/mysql_client_test.c unittest/examples/skip-t.c unittest/examples/skip_all-t.c unittest/examples/todo-t.c unittest/gunit/CMakeLists.txt unittest/mysys/CMakeLists.txt unittest/mytap/t/basic-t.c unittest/mytap/tap.c unittest/mytap/tap.h storage/ndb/ndb_configure.m4 === modified file 'include/my_getopt.h' --- a/include/my_getopt.h 2010-06-11 01:30:49 +0000 +++ b/include/my_getopt.h 2010-10-25 12:30:07 +0000 @@ -39,6 +39,13 @@ C_MODE_START #define GET_ASK_ADDR 128 #define GET_TYPE_MASK 127 +/** + Enumeration of the my_option::arg_type attributes. + It should be noted that for historical reasons variables with the combination + arg_type=NO_ARG, my_option::var_type=GET_BOOL still accepts + arguments. This is someone counter intuitive and care should be taken + if the code is refactored. +*/ enum get_opt_arg_type { NO_ARG, OPT_ARG, REQUIRED_ARG }; struct st_typelib; === modified file 'mysys/my_getopt.c' --- a/mysys/my_getopt.c 2010-09-28 15:29:26 +0000 +++ b/mysys/my_getopt.c 2010-10-26 10:11:56 +0000 @@ -360,14 +360,6 @@ int handle_options(int *argc, char ***ar } return EXIT_OPTION_DISABLED; } - if (must_be_var && optp->arg_type == NO_ARG) - { - if (my_getopt_print_errors) - my_getopt_error_reporter(ERROR_LEVEL, - "%s: option '%s' cannot take an argument", - my_progname, optp->name); - return EXIT_NO_ARGUMENT_ALLOWED; - } error= 0; value= optp->var_type & GET_ASK_ADDR ? (*getopt_get_addr)(key_name, (uint) strlen(key_name), optp, &error) : @@ -377,6 +369,11 @@ int handle_options(int *argc, char ***ar if (optp->arg_type == NO_ARG) { + /* + Due to historical reasons GET_BOOL var_types still accepts arguments + despite the NO_ARG arg_type attribute. This can seems a bit unintuitive + and care should be taken when refactoring this code. + */ if (optend && (optp->var_type & GET_TYPE_MASK) != GET_BOOL) { if (my_getopt_print_errors) @@ -391,7 +388,7 @@ int handle_options(int *argc, char ***ar Set bool to 1 if no argument or if the user has used --enable-'option-name'. *optend was set to '0' if one used --disable-option - */ + */ (*argc)--; if (!optend || *optend == '1' || !my_strcasecmp(&my_charset_latin1, optend, "true")) @@ -418,10 +415,9 @@ int handle_options(int *argc, char ***ar else if (optp->arg_type == REQUIRED_ARG && !optend) { /* Check if there are more arguments after this one, - - Note: options loaded from config file that requires value - should always be in the form '--option=value'. - */ + Note: options loaded from config file that requires value + should always be in the form '--option=value'. + */ if (!is_cmdline_arg || !*++pos) { if (my_getopt_print_errors) No bundle (reason: useless for push emails).