From: Bjorn Munch Date: September 28 2010 2:00pm Subject: bzr commit into mysql-5.5-mtr branch (bjorn.munch:3094) List-Archive: http://lists.mysql.com/commits/119284 Message-Id: <201009281400.o8SE0lDQ015861@khepri15.norway.sun.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0029961422==" --===============0029961422== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///home/bm136801/my/ifexpr-55/ based on revid:bjorn.munch@stripped 3094 Bjorn Munch 2010-09-28 [merge] upmerge 56125,56921 modified: client/mysqltest.cc mysql-test/mysql-test-run.pl mysql-test/r/mysqltest.result mysql-test/t/mysqltest.test === modified file 'client/mysqltest.cc' --- a/client/mysqltest.cc 2010-09-27 12:36:16 +0000 +++ b/client/mysqltest.cc 2010-09-28 14:00:11 +0000 @@ -112,6 +112,7 @@ static my_bool parsing_disabled= 0; static my_bool display_result_vertically= FALSE, display_result_lower= FALSE, display_metadata= FALSE, display_result_sorted= FALSE; static my_bool disable_query_log= 0, disable_result_log= 0; +static my_bool disable_connect_log= 1; static my_bool disable_warnings= 0; static my_bool disable_info= 1; static my_bool abort_on_error= 1; @@ -285,6 +286,7 @@ enum enum_commands { Q_EVAL_RESULT, Q_ENABLE_QUERY_LOG, Q_DISABLE_QUERY_LOG, Q_ENABLE_RESULT_LOG, Q_DISABLE_RESULT_LOG, + Q_ENABLE_CONNECT_LOG, Q_DISABLE_CONNECT_LOG, Q_WAIT_FOR_SLAVE_TO_STOP, Q_ENABLE_WARNINGS, Q_DISABLE_WARNINGS, Q_ENABLE_INFO, Q_DISABLE_INFO, @@ -350,6 +352,8 @@ const char *command_names[]= /* Enable/disable that the _result_ from a query is logged to result file */ "enable_result_log", "disable_result_log", + "enable_connect_log", + "disable_connect_log", "wait_for_slave_to_stop", "enable_warnings", "disable_warnings", @@ -4836,6 +4840,16 @@ void select_connection_name(const char * set_current_connection(con); + /* Connection logging if enabled */ + if (!disable_connect_log && !disable_query_log) + { + DYNAMIC_STRING *ds= &ds_res; + + dynstr_append_mem(ds, "connection ", 11); + replace_dynstr_append(ds, name); + dynstr_append_mem(ds, ";\n", 2); + } + DBUG_VOID_RETURN; } @@ -4923,6 +4937,16 @@ void do_close_connection(struct st_comma var_set_string("$CURRENT_CONNECTION", con->name); } + /* Connection logging if enabled */ + if (!disable_connect_log && !disable_query_log) + { + DYNAMIC_STRING *ds= &ds_res; + + dynstr_append_mem(ds, "disconnect ", 11); + replace_dynstr_append(ds, ds_connection.str); + dynstr_append_mem(ds, ";\n", 2); + } + DBUG_VOID_RETURN; } @@ -5057,6 +5081,13 @@ int connect_n_handle_errors(struct st_co dynstr_append_mem(ds, delimiter, delimiter_length); dynstr_append_mem(ds, "\n", 1); } + /* Simlified logging if enabled */ + if (!disable_connect_log && !disable_query_log) + { + replace_dynstr_append(ds, command->query); + dynstr_append_mem(ds, ";\n", 2); + } + while (!mysql_real_connect(con, host, user, pass, db, port, sock ? sock: 0, CLIENT_MULTI_STATEMENTS)) { @@ -8127,6 +8158,8 @@ int main(int argc, char **argv) case Q_DISABLE_ABORT_ON_ERROR: abort_on_error=0; break; case Q_ENABLE_RESULT_LOG: disable_result_log=0; break; case Q_DISABLE_RESULT_LOG: disable_result_log=1; break; + case Q_ENABLE_CONNECT_LOG: disable_connect_log=0; break; + case Q_DISABLE_CONNECT_LOG: disable_connect_log=1; break; case Q_ENABLE_WARNINGS: disable_warnings=0; break; case Q_DISABLE_WARNINGS: disable_warnings=1; break; case Q_ENABLE_INFO: disable_info=0; break; === modified file 'mysql-test/mysql-test-run.pl' --- a/mysql-test/mysql-test-run.pl 2010-09-01 13:52:31 +0000 +++ b/mysql-test/mysql-test-run.pl 2010-09-28 14:00:11 +0000 @@ -126,12 +126,24 @@ my $path_vardir_trace; # unix f my $opt_tmpdir; # Path to use for tmp/ dir my $opt_tmpdir_pid; +my $opt_start; +my $opt_start_dirty; +my $opt_start_exit; +my $start_only; + END { if ( defined $opt_tmpdir_pid and $opt_tmpdir_pid == $$ ) { - # Remove the tempdir this process has created - mtr_verbose("Removing tmpdir '$opt_tmpdir"); - rmtree($opt_tmpdir); + if (!$opt_start_exit) + { + # Remove the tempdir this process has created + mtr_verbose("Removing tmpdir $opt_tmpdir"); + rmtree($opt_tmpdir); + } + else + { + mtr_warning("tmpdir $opt_tmpdir should be removed after the server has finished"); + } } } @@ -234,10 +246,6 @@ my $opt_start_timeout = $ENV{MTR_START sub suite_timeout { return $opt_suite_timeout * 60; }; sub check_timeout { return $opt_testcase_timeout * 6; }; -my $opt_start; -my $opt_start_dirty; -my $opt_start_exit; -my $start_only; my $opt_wait_all; my $opt_user_args; my $opt_repeat= 1; === modified file 'mysql-test/r/mysqltest.result' --- a/mysql-test/r/mysqltest.result 2010-09-27 12:36:16 +0000 +++ b/mysql-test/r/mysqltest.result 2010-09-28 14:00:11 +0000 @@ -453,12 +453,16 @@ mysqltest: At line 1: Missing required a mysqltest: At line 1: query 'connect con2,localhost,root,,illegal_db' failed: 1049: Unknown database 'illegal_db' mysqltest: At line 1: Illegal argument for port: 'illegal_port' mysqltest: At line 1: Illegal option to connect: SMTP -OK -mysqltest: The test didn't produce any output +200 connects succeeded mysqltest: In included file "MYSQLTEST_VARDIR/tmp/mysqltest.sql": At line 3: connection 'test_con1' not found in connection pool mysqltest: In included file "MYSQLTEST_VARDIR/tmp/mysqltest.sql": At line 2: Connection test_con1 already exists show tables; ERROR 3D000: No database selected +connect con1,localhost,root,,; +connection default; +connection con1; +disconnect con1; +connection default; Output from mysqltest-x.inc Output from mysqltest-x.inc Output from mysqltest-x.inc === modified file 'mysql-test/t/mysqltest.test' --- a/mysql-test/t/mysqltest.test 2010-09-27 12:36:16 +0000 +++ b/mysql-test/t/mysqltest.test 2010-09-28 14:00:11 +0000 @@ -1470,19 +1470,6 @@ eval select "$long_rep" as x; # Repeat connect/disconnect --write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql -let $i=100; -while ($i) -{ - connect (test_con1,localhost,root,,); - disconnect test_con1; - dec $i; -} -EOF ---exec echo "source $MYSQLTEST_VARDIR/tmp/mysqltest.sql; echo OK; exit;" | $MYSQL_TEST 2>&1 -remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql; - -# Repeat connect/disconnect ---write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql let $i=200; while ($i) { @@ -1490,9 +1477,8 @@ while ($i) disconnect test_con1; dec $i; } +echo 200 connects succeeded; EOF ---replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR ---error 1 --exec echo "source $MYSQLTEST_VARDIR/tmp/mysqltest.sql;" | $MYSQL_TEST 2>&1 remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql; @@ -1533,6 +1519,22 @@ show tables; disconnect con2; connection default; +# Test enable_connect_log +--enable_connect_log +connect (con1,localhost,root,,); +connection default; +connection con1; +--disable_query_log +# These should not be logged +connect (con2,localhost,root,,*NO-ONE*); +connection con2; +disconnect con2; +connection con1; +--enable_query_log +disconnect con1; +connection default; +--disable_connect_log + # ---------------------------------------------------------------------------- # Test mysqltest arguments # ---------------------------------------------------------------------------- --===============0029961422== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/bjorn.munch@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: bjorn.munch@stripped # target_branch: file:///home/bm136801/my/ifexpr-55/ # testament_sha1: b1c1ac711953bd2e5adb83e6d3156f5c7a0e11f2 # timestamp: 2010-09-28 16:00:47 +0200 # source_branch: file:///home/bm136801/my/ecl-51/ # base_revision_id: bjorn.munch@stripped\ # 2dz7eapdp7ndo3j5 # # Begin bundle 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 C82hwXyGGZv/i7kinChIQbWmXwA= --===============0029961422==--