List:Commits« Previous MessageNext Message »
From:Magnus Blåudd Date:September 22 2010 9:11am
Subject:Re: bzr commit into mysql-5.1-mtr branch (bjorn.munch:2934) Bug#56921
View as plain text  
OK

On 09/22/2010 10:59 AM, Bjorn Munch wrote:
> #At file:///home/bm136801/my/ecl-51/ based on
> revid:bjorn.munch@stripped
>
>   2934 Bjorn Munch	2010-09-22
>        Bug #56921 It should be possible to log connection statements in mysqltest
>        Added --enable-connect-log, somewhet similar to --enable-query-log
>        If query log is disabled, disable connect log too
>        Also some related cleanup in mysqltest.test: removing duplicate test loop
>
>      modified:
>        client/mysqltest.cc
>        mysql-test/r/mysqltest.result
>        mysql-test/t/mysqltest.test
> === modified file 'client/mysqltest.cc'
> --- a/client/mysqltest.cc	2010-09-20 09:21:27 +0000
> +++ b/client/mysqltest.cc	2010-09-22 08:57:10 +0000
> @@ -103,6 +103,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;
> @@ -275,6 +276,7 @@ enum enum_commands {
>     Q_DISABLE_RPL_PARSE, 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,
> @@ -342,6 +344,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",
> @@ -4793,6 +4797,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;
>   }
>
> @@ -4880,6 +4894,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;
>   }
>
> @@ -5014,6 +5038,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))
>     {
> @@ -8071,6 +8102,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/r/mysqltest.result'
> --- a/mysql-test/r/mysqltest.result	2010-09-15 12:56:22 +0000
> +++ b/mysql-test/r/mysqltest.result	2010-09-22 08:57:10 +0000
> @@ -452,12 +452,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-21 09:16:20 +0000
> +++ b/mysql-test/t/mysqltest.test	2010-09-22 08:57:10 +0000
> @@ -1467,19 +1467,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)
>   {
> @@ -1487,9 +1474,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;
>
> @@ -1530,6 +1516,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
>   # ----------------------------------------------------------------------------
>
>
>
>
>

Thread
bzr commit into mysql-5.1-mtr branch (bjorn.munch:2934) Bug#56921Bjorn Munch22 Sep
  • Re: bzr commit into mysql-5.1-mtr branch (bjorn.munch:2934) Bug#56921Magnus Blåudd22 Sep
    • Re: bzr commit into mysql-5.1-mtr branch (bjorn.munch:2934)Bug#56921Bjorn Munch22 Sep