Bug #54467 performance schema complains of wrong structure in bootstrap mode
Submitted: 13 Jun 2010 12:47 Modified: 20 Apr 2011 13:48
Reporter: Giuseppe Maxia Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Performance Schema Severity:S2 (Serious)
Version:5.6.99 OS:Any (Linux and Mac OSX)
Assigned to: Marc ALFF CPU Architecture:Any
Tags: build, compiling, performance_schema, SOURCE

[13 Jun 2010 12:47] Giuseppe Maxia
Description:
Building the MySQL server using the source code from lp:mysql-server/trunk (rev. 3153, version 5.6.99), Performance_schema complains about wrong table structure:

100613 14:38:43 [Note] Buffered information: Performance schema disabled (reason: start parameters).

100613 14:38:43 [ERROR] Native table 'performance_schema'.'EVENTS_WAITS_CURRENT' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'EVENTS_WAITS_HISTORY' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'EVENTS_WAITS_HISTORY_LONG' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'SETUP_CONSUMERS' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'SETUP_INSTRUMENTS' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'SETUP_OBJECTS' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'SETUP_TIMERS' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'PERFORMANCE_TIMERS' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'PROCESSLIST' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'EVENTS_WAITS_SUMMARY_BY_EVENT_NAME' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'EVENTS_WAITS_SUMMARY_BY_INSTANCE' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'FILE_SUMMARY_BY_EVENT_NAME' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'FILE_SUMMARY_BY_INSTANCE' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'MUTEX_INSTANCES' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'RWLOCK_INSTANCES' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'COND_INSTANCES' has the wrong structure
100613 14:38:43 [ERROR] Native table 'performance_schema'.'FILE_INSTANCES' has the wrong structure
100613 14:38:44 [Note] Buffered information: Performance schema disabled (reason: start parameters).

How to repeat:
get the source code from the Bazaar repository.
bzr branch lp:mysql-server/trunk

Compile it using either a ./BUILD script or cmake.
cmake . && make && ./scripts/make_binary_distribution

create a MySQL Sandbox, or use mysql_install_db directly.
[14 Jun 2010 9:05] Valeriy Kravchuk
Verified just as described:

valeriy-kravchuks-macbook-pro:next-mr openxs$ bin/mysql_install_db 
WARNING: The host 'macbook-pro' could not be looked up with resolveip.
This probably means that your libc libraries are not 100 % compatible
with this binary MySQL version. The MySQL daemon, mysqld, should work
normally with the exception that host name resolving will not work.
This means that you should use IP addresses instead of hostnames
when specifying MySQL privileges !
Installing MySQL system tables...
100614 12:02:58 [Note] Buffered information: Performance schema disabled (reason: start parameters).

100614 12:02:58 [ERROR] Native table 'performance_schema'.'EVENTS_WAITS_CURRENT' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'EVENTS_WAITS_HISTORY' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'EVENTS_WAITS_HISTORY_LONG' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'SETUP_CONSUMERS' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'SETUP_INSTRUMENTS' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'SETUP_OBJECTS' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'SETUP_TIMERS' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'PERFORMANCE_TIMERS' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'PROCESSLIST' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'EVENTS_WAITS_SUMMARY_BY_EVENT_NAME' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'EVENTS_WAITS_SUMMARY_BY_INSTANCE' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'FILE_SUMMARY_BY_EVENT_NAME' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'FILE_SUMMARY_BY_INSTANCE' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'MUTEX_INSTANCES' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'RWLOCK_INSTANCES' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'COND_INSTANCES' has the wrong structure
100614 12:02:58 [ERROR] Native table 'performance_schema'.'FILE_INSTANCES' has the wrong structure
OK
Filling help tables...
100614 12:03:03 [Note] Buffered information: Performance schema disabled (reason: start parameters).
[15 Jun 2010 17:08] Marc ALFF
Analysis
========

From the context provided in the logs (Thanks Valeriy),
it seems this happens during bootstrap itself (See !! annotations) :

!! Installing MySQL system tables...

100614 12:02:58 [Note] Buffered information: Performance schema disabled (reason: start
parameters).

100614 12:02:58 [ERROR] Native table 'performance_schema'.'EVENTS_WAITS_CURRENT' has the
wrong structure
(...)

OK

!! Filling help tables...

100614 12:03:03 [Note] Buffered information: Performance schema disabled (reason: start
parameters).

---------

This is still a verified bug, but the severity is less critical than reported:
- the error message itself is spurious,
- the performance schema tables are created with the proper structure

To Fix: the server should not attempt to validate the performance schema
tables structure *when started in bootstrap mode*, since by definition these
tables are about to be created/replaced by the installation scripts.
[15 Jun 2010 17:34] Giuseppe Maxia
Since we are talking about this problem, I must say that the performance schema is too loud.
The "[Note] Buffered information" messages should not appear unless the server is compiled with DEBUG options.
The output of mysql_install_db (or mysqld --bootstrap) should report real errors, not "Note".
[15 Jun 2010 19:07] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/111191

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
[15 Jun 2010 20:09] Christopher Powers
Changes reviewed.
[16 Jun 2010 12:37] Marc ALFF
Pushed into:
- mysql-next-mr-bugfixing
[22 Jun 2010 13:10] Bugs System
Pushed into mysql-next-mr (revid:alik@sun.com-20100622130623-r7yhm89fz9n5t9nb) (version source revid:marko.makela@oracle.com-20100603095032-v5ptkkzt1bhz0m1d) (pib:16)
[16 Jul 2010 13:02] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/113756

3121 Marc Alff	2010-07-16
      Bug#54467 performance schema complains of wrong structure in bootstrap mode
      
      Backport from mysql-next-mr (5.6) to mysql-trunk (5.5)
[16 Jul 2010 19:28] Marc ALFF
Now also queued in mysql-trunk-bugfixing (5.5)
[23 Jul 2010 12:28] Bugs System
Pushed into mysql-trunk 5.5.6-m3 (revid:alik@sun.com-20100723121820-jryu2fuw3pc53q9w) (version source revid:vasil.dimov@oracle.com-20100531152341-x2d4hma644icamh1) (merge vers: 5.5.5-m3) (pib:18)
[23 Jul 2010 12:35] Bugs System
Pushed into mysql-next-mr (revid:alik@sun.com-20100723121929-90e9zemk3jkr2ocy) (version source revid:vasil.dimov@oracle.com-20100531152341-x2d4hma644icamh1) (pib:18)
[29 Jul 2010 18:56] Paul DuBois
Noted in 5.5.6 changelog.

Performance Schema displayed spurious startup error messages when the
server was run in bootstrap mode.
[4 Aug 2010 8:10] Bugs System
Pushed into mysql-trunk 5.6.1-m4 (revid:alik@ibmvm-20100804080001-bny5271e65xo34ig) (version source revid:marko.makela@oracle.com-20100603095032-v5ptkkzt1bhz0m1d) (merge vers: 5.1.48) (pib:18)
[4 Aug 2010 8:26] Bugs System
Pushed into mysql-trunk 5.6.1-m4 (revid:alik@ibmvm-20100804081533-c1d3rbipo9e8rt1s) (version source revid:marko.makela@oracle.com-20100603095032-v5ptkkzt1bhz0m1d) (merge vers: 5.1.48) (pib:18)
[4 Aug 2010 20:06] Paul DuBois
Bug is not present in any released 5.6.x version.
[20 Apr 2011 11:28] Giuseppe Maxia
Apparently, the fix was reverted, and now (5.6.2) the installer is still verbose without being asked.

./scripts/mysql_install_db --no-defaults  --basedir=$PWD --datadir=$PWD/data 
Installing MySQL system tables...
110420 13:24:50 [Note] Binlog end
110420 13:24:50 [Note] Shutting down plugin 'partition'
110420 13:24:50 [Note] Shutting down plugin 'PERFORMANCE_SCHEMA'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_SYS_FOREIGN_COLS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_SYS_FOREIGN'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_SYS_FIELDS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_SYS_COLUMNS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_SYS_INDEXES'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_SYS_TABLESTATS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_SYS_TABLES'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_METRICS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_BUFFER_POOL_STATS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_BUFFER_PAGE_LRU'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_BUFFER_PAGE'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_CMPMEM_RESET'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_CMPMEM'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_CMP_RESET'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_CMP'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_LOCK_WAITS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_LOCKS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_TRX'
110420 13:24:50 [Note] Shutting down plugin 'BLACKHOLE'
110420 13:24:50 [Note] Shutting down plugin 'ARCHIVE'
110420 13:24:50 [Note] Shutting down plugin 'MRG_MYISAM'
110420 13:24:50 [Note] Shutting down plugin 'MyISAM'
110420 13:24:50 [Note] Shutting down plugin 'MEMORY'
110420 13:24:50 [Note] Shutting down plugin 'CSV'
110420 13:24:50 [Note] Shutting down plugin 'mysql_old_password'
110420 13:24:50 [Note] Shutting down plugin 'mysql_native_password'
110420 13:24:50 [Note] Shutting down plugin 'binlog'
OK
Filling help tables...
110420 13:24:50 [Note] Binlog end
110420 13:24:50 [Note] Shutting down plugin 'partition'
110420 13:24:50 [Note] Shutting down plugin 'PERFORMANCE_SCHEMA'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_SYS_FOREIGN_COLS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_SYS_FOREIGN'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_SYS_FIELDS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_SYS_COLUMNS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_SYS_INDEXES'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_SYS_TABLESTATS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_SYS_TABLES'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_METRICS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_BUFFER_POOL_STATS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_BUFFER_PAGE_LRU'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_BUFFER_PAGE'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_CMPMEM_RESET'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_CMPMEM'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_CMP_RESET'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_CMP'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_LOCK_WAITS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_LOCKS'
110420 13:24:50 [Note] Shutting down plugin 'INNODB_TRX'
110420 13:24:50 [Note] Shutting down plugin 'BLACKHOLE'
110420 13:24:50 [Note] Shutting down plugin 'ARCHIVE'
110420 13:24:50 [Note] Shutting down plugin 'MRG_MYISAM'
110420 13:24:50 [Note] Shutting down plugin 'MyISAM'
110420 13:24:50 [Note] Shutting down plugin 'MEMORY'
110420 13:24:50 [Note] Shutting down plugin 'CSV'
110420 13:24:50 [Note] Shutting down plugin 'mysql_old_password'
110420 13:24:50 [Note] Shutting down plugin 'mysql_native_password'
110420 13:24:50 [Note] Shutting down plugin 'binlog'
OK
[20 Apr 2011 13:48] Marc ALFF
Hi Giuseppe

The fix for "performance schema complains of wrong structure in bootstrap mode" was not reverted.

The "Shutting down plugin" message is not related to the performance schema, and is different issue that the problem originally reported.
Similar, yes, but different.

Please enter a separate bug report for this.

Re closing bug#54467.

Thanks for trying 5.6.2.

Regards,
-- Marc Alff