-
Dmitry Shulga authored
This worklog provides support for: * retrieving P_S table definitions from performance schema engine and * for versioning of P_S table definitions. To implement it the following modifications are done within the worklog: * A version of performance schema supported by server is stored in the table mysql.dd_properties as a value of property with the name "PS_version"; * For every created P_S table a boolean property with the name "server_p_s_table" and the value "true" is stored in the column "options" of the table mysql.tables; * The P_S tables are recreated only in case a value of the property PS_version stored in Data Dictionary is different from the version of performance schema supported by server; * To recreate P_S tables, the "old" P_S tables are dropped and new ones are created; * To drop "old" P_S tables the metadata about all P_S tables stored in DD are fetched and those tables that contains the property with name "server_p_s_table" are dropped; * New P_S tables to be created are supplied by performance schema storage engine; * Every P_S table is defined in terms of instance of the class Plugin_table and embedded into server code; * The class Plugin_table is used to produce SQL statements for creation of P_S tables; * The classes Plugin_table, Plugin_table_impl were modified to allow optional setting of tablespace name for a table being created; * DDL SQL-statements for creation of server P_S tables were removed from the file mysql_system_tables.sql.
Dmitry Shulga authoredThis worklog provides support for: * retrieving P_S table definitions from performance schema engine and * for versioning of P_S table definitions. To implement it the following modifications are done within the worklog: * A version of performance schema supported by server is stored in the table mysql.dd_properties as a value of property with the name "PS_version"; * For every created P_S table a boolean property with the name "server_p_s_table" and the value "true" is stored in the column "options" of the table mysql.tables; * The P_S tables are recreated only in case a value of the property PS_version stored in Data Dictionary is different from the version of performance schema supported by server; * To recreate P_S tables, the "old" P_S tables are dropped and new ones are created; * To drop "old" P_S tables the metadata about all P_S tables stored in DD are fetched and those tables that contains the property with name "server_p_s_table" are dropped; * New P_S tables to be created are supplied by performance schema storage engine; * Every P_S table is defined in terms of instance of the class Plugin_table and embedded into server code; * The class Plugin_table is used to produce SQL statements for creation of P_S tables; * The classes Plugin_table, Plugin_table_impl were modified to allow optional setting of tablespace name for a table being created; * DDL SQL-statements for creation of server P_S tables were removed from the file mysql_system_tables.sql.
Loading