3096 Kristofer Pettersson 2010-10-25 [merge]
automerge
removed:
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
storage/innobase/handler/mysql_addons.cc
storage/innobase/include/mysql_addons.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
added:
include/welcome_copyright_notice.h
mysql-test/extra/rpl_tests/rpl_stop_slave.test
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_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/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_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_bug57252.test
mysql-test/suite/rpl/r/rpl_stop_slave.result
mysql-test/suite/rpl/t/rpl_stop_slave.test
mysql-test/t/lowercase_table4-master.opt
mysql-test/t/lowercase_table4.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/qa_auth_client.c
plugin/auth/qa_auth_interface.c
plugin/auth/qa_auth_server.c
renamed:
config/ac-macros/ha_ndbcluster.m4 => storage/ndb/ndb_configure.m4
modified:
BUILD/SETUP.sh
CMakeLists.txt
Makefile.am
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
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/ac-macros/maintainer.m4
configure.cmake
configure.in
dbug/dbug.c
include/my_compiler.h
include/my_dbug.h
include/my_pthread.h
include/mysql/client_plugin.h
include/mysql/client_plugin.h.pp
mysql-test/collections/default.experimental
mysql-test/extra/rpl_tests/rpl_binlog_max_cache_size.test
mysql-test/extra/rpl_tests/rpl_row_sp003.test
mysql-test/extra/rpl_tests/rpl_start_stop_slave.test
mysql-test/include/index_merge2.inc
mysql-test/include/mtr_warnings.sql
mysql-test/mysql-test-run.pl
mysql-test/r/cache_innodb.result
mysql-test/r/delete.result
mysql-test/r/func_math.result
mysql-test/r/func_time.result
mysql-test/r/grant.result
mysql-test/r/grant3.result
mysql-test/r/index_merge_myisam.result
mysql-test/r/information_schema.result
mysql-test/r/ipv4_as_ipv6.result
mysql-test/r/lock_sync.result
mysql-test/r/mdl_sync.result
mysql-test/r/merge.result
mysql-test/r/mysqlcheck.result
mysql-test/r/query_cache_debug.result
mysql-test/r/select.result
mysql-test/r/sp-security.result
mysql-test/r/sp_trans.result
mysql-test/r/trigger-trans.result
mysql-test/r/type_datetime.result
mysql-test/suite/funcs_1/r/innodb_storedproc_06.result
mysql-test/suite/funcs_1/r/is_columns_is.result
mysql-test/suite/funcs_1/r/memory_storedproc_06.result
mysql-test/suite/funcs_1/r/myisam_storedproc_06.result
mysql-test/suite/funcs_1/storedproc/storedproc_06.inc
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_mysql.result
mysql-test/suite/innodb/t/innodb.test
mysql-test/suite/innodb/t/innodb_mysql.test
mysql-test/suite/parts/inc/partition_check.inc
mysql-test/suite/parts/r/partition_alter3_innodb.result
mysql-test/suite/parts/r/partition_basic_innodb.result
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_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_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/rpl_do_grant.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/foreign_key_checks_func.test
mysql-test/t/cache_innodb.test
mysql-test/t/delete.test
mysql-test/t/disabled.def
mysql-test/t/func_math.test
mysql-test/t/func_time.test
mysql-test/t/grant.test
mysql-test/t/grant3.test
mysql-test/t/information_schema.test
mysql-test/t/lock_sync.test
mysql-test/t/mdl_sync.test
mysql-test/t/merge.test
mysql-test/t/mysqlcheck.test
mysql-test/t/query_cache_debug.test
mysql-test/t/select.test
mysql-test/t/sp-security.test
mysql-test/t/sp_trans.test
mysql-test/t/trigger-trans.test
mysql-test/t/type_datetime.test
mysys/my_gethostbyname.c
mysys/my_gethwaddr.c
mysys/my_sync.c
mysys/thr_mutex.c
plugin/auth/CMakeLists.txt
plugin/auth/Makefile.am
plugin/auth/dialog.c
regex/main.c
sql-common/client.c
sql/field.cc
sql/ha_ndbcluster.cc
sql/ha_partition.cc
sql/ha_partition.h
sql/handler.cc
sql/handler.h
sql/item.cc
sql/item_func.cc
sql/item_strfunc.cc
sql/item_timefunc.cc
sql/item_timefunc.h
sql/key.cc
sql/log.cc
sql/log_event.cc
sql/log_event.h
sql/my_decimal.h
sql/mysqld.cc
sql/repl_failsafe.cc
sql/repl_failsafe.h
sql/rpl_rli.h
sql/scheduler.h
sql/share/errmsg-utf8.txt
sql/slave.cc
sql/sp.cc
sql/sp.h
sql/sp_head.cc
sql/sql_acl.cc
sql/sql_base.cc
sql/sql_cache.cc
sql/sql_class.cc
sql/sql_class.h
sql/sql_delete.cc
sql/sql_help.cc
sql/sql_insert.cc
sql/sql_lex.h
sql/sql_parse.cc
sql/sql_partition.cc
sql/sql_partition_admin.cc
sql/sql_partition_admin.h
sql/sql_plugin.cc
sql/sql_plugin.h
sql/sql_show.cc
sql/sql_show.h
sql/sql_string.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/sys_vars.cc
sql/sys_vars.h
sql/table.h
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/Makefile.am
storage/innobase/btr/btr0cur.c
storage/innobase/buf/buf0buddy.c
storage/innobase/buf/buf0buf.c
storage/innobase/buf/buf0flu.c
storage/innobase/buf/buf0lru.c
storage/innobase/handler/ha_innodb.cc
storage/innobase/handler/ha_innodb.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/buf0flu.h
storage/innobase/include/data0type.h
storage/innobase/include/ibuf0ibuf.h
storage/innobase/include/os0sync.h
storage/innobase/include/rem0rec.h
storage/innobase/include/row0mysql.h
storage/innobase/include/row0row.h
storage/innobase/include/row0upd.h
storage/innobase/include/srv0srv.h
storage/innobase/include/trx0trx.h
storage/innobase/lock/lock0lock.c
storage/innobase/log/log0log.c
storage/innobase/os/os0file.c
storage/innobase/os/os0sync.c
storage/innobase/plug.in
storage/innobase/rem/rem0rec.c
storage/innobase/row/row0mysql.c
storage/innobase/row/row0sel.c
storage/innobase/row/row0upd.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/trx0trx.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
unittest/examples/skip-t.c
unittest/examples/skip_all-t.c
unittest/examples/todo-t.c
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:15:58 +0000
+++ b/mysys/my_getopt.c 2010-10-25 12:30:07 +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).
| Thread |
|---|
| • bzr push into mysql-5.5-bugteam branch (kristofer.pettersson:3096) | Kristofer Pettersson | 25 Oct |