From: Christopher Powers Date: June 15 2010 8:08pm Subject: Re: bzr commit into mysql-next-mr-bugfixing branch (marc.alff:3245) Bug#54467 List-Archive: http://lists.mysql.com/commits/111193 Message-Id: <4C17DDA4.2000905@oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Ok to push. On 6/15/10 2:06 PM, Marc Alff wrote: > #At file:///Users/malff/BZR_TREE/mysql-next-mr-bugfixing-54467/ based on revid:alik@stripped > > 3245 Marc Alff 2010-06-15 > Bug#54467 performance schema complains of wrong structure in bootstrap mode > > Prior to this fix, the installation script: > - did print [Note] messages in the server log, > related to the performance schema. > > - did print [ERROR] messages in the server log, > complaining about performance schema tables. > These errors are not justified during bootstrap. > > With this fix: > - notes are no longer printed, > this reduces the server verbosity. > > - integrity checks for the performance schema tables > are not performed when tables are not expected to be there, > to avoid un justified [ERROR] messages. > > Tested the mysql_install_db script manually: > > Installing MySQL system tables... > OK > Filling help tables... > OK > > modified: > sql/mysqld.cc > === modified file 'sql/mysqld.cc' > --- a/sql/mysqld.cc 2010-06-04 20:20:13 +0000 > +++ b/sql/mysqld.cc 2010-06-15 19:06:04 +0000 > @@ -782,7 +782,15 @@ void Buffered_log::print() > sql_print_warning("Buffered warning: %s\n", m_message.c_ptr_safe()); > break; > case INFORMATION_LEVEL: > - sql_print_information("Buffered information: %s\n", m_message.c_ptr_safe()); > + /* > + Messages printed as "information" still end up in the mysqld *error* log, > + but with a [Note] tag instead of an [ERROR] tag. > + While this is probably fine for a human reading the log, > + it is upsetting existing automated scripts used to parse logs, > + because such scripts are likely to not already handle [Note] properly. > + INFORMATION_LEVEL messages are simply silenced, on purpose, > + to avoid un needed verbosity. > + */ > break; > } > } > @@ -4540,16 +4548,6 @@ int mysqld_main(int argc, char **argv) > buffered_logs.buffer(WARNING_LEVEL, > "Performance schema disabled (reason: init failed)."); > } > - else > - { > - buffered_logs.buffer(INFORMATION_LEVEL, > - "Performance schema enabled."); > - } > - } > - else > - { > - buffered_logs.buffer(INFORMATION_LEVEL, > - "Performance schema disabled (reason: start parameters)."); > } > } > #else > @@ -4817,7 +4815,14 @@ int mysqld_main(int argc, char **argv) > > #ifdef WITH_PERFSCHEMA_STORAGE_ENGINE > initialize_performance_schema_acl(opt_bootstrap); > - check_performance_schema(); > + /* > + Do not check the structure of the performance schema tables > + during bootstrap: > + - the tables are not supposed to exist yet, bootstrap will create them > + - a check would print spurious error messages > + */ > + if (! opt_bootstrap) > + check_performance_schema(); > #endif > > initialize_information_schema_acl(); > > > > >