github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/libraries/pingcap/tidb/perfschema/const.go (about)

     1  // Copyright 2016 PingCAP, Inc.
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // See the License for the specific language governing permissions and
    12  // limitations under the License.
    13  
    14  package perfschema
    15  
    16  // Performance Schema Name.
    17  const (
    18  	Name = "PERFORMANCE_SCHEMA"
    19  )
    20  
    21  // Definition order same as MySQL's reference manual, so don't bother to
    22  // adjust according to alphabetical order.
    23  const (
    24  	TableSetupActors            = "SETUP_ACTORS"
    25  	TableSetupObjects           = "SETUP_OBJECTS"
    26  	TableSetupInstruments       = "SETUP_INSTRUMENTS"
    27  	TableSetupConsumers         = "SETUP_CONSUMERS"
    28  	TableSetupTimers            = "SETUP_TIMERS"
    29  	TableStmtsCurrent           = "EVENTS_STATEMENTS_CURRENT"
    30  	TableStmtsHistory           = "EVENTS_STATEMENTS_HISTORY"
    31  	TableStmtsHistoryLong       = "EVENTS_STATEMENTS_HISTORY_LONG"
    32  	TablePreparedStmtsInstances = "PREPARED_STATEMENTS_INSTANCES"
    33  	TableTransCurrent           = "EVENTS_TRANSACTIONS_CURRENT"
    34  	TableTransHistory           = "EVENTS_TRANSACTIONS_HISTORY"
    35  	TableTransHistoryLong       = "EVENTS_TRANSACTIONS_HISTORY_LONG"
    36  	TableStagesCurrent          = "EVENTS_STAGES_CURRENT"
    37  	TableStagesHistory          = "EVENTS_STAGES_HISTORY"
    38  	TableStagesHistoryLong      = "EVENTS_STAGES_HISTORY_LONG"
    39  )
    40  
    41  // PerfSchemaTables is a shortcut to involve all table names.
    42  var PerfSchemaTables = []string{
    43  	TableSetupActors,
    44  	TableSetupObjects,
    45  	TableSetupInstruments,
    46  	TableSetupConsumers,
    47  	TableSetupTimers,
    48  	TableStmtsCurrent,
    49  	TableStmtsHistory,
    50  	TableStmtsHistoryLong,
    51  	TablePreparedStmtsInstances,
    52  	TableTransCurrent,
    53  	TableTransHistory,
    54  	TableTransHistoryLong,
    55  	TableStagesCurrent,
    56  	TableStagesHistory,
    57  	TableStagesHistoryLong,
    58  }
    59  
    60  // ColumnSetupActors contains the column name definitions for table setup_actors, same as MySQL.
    61  //
    62  // CREATE TABLE if not exists performance_schema.setup_actors (
    63  // 		HOST			CHAR(60) NOT NULL  DEFAULT '%',
    64  // 		USER			CHAR(32) NOT NULL  DEFAULT '%',
    65  // 		ROLE			CHAR(16) NOT NULL  DEFAULT '%',
    66  // 		ENABLED			ENUM('YES','NO') NOT NULL  DEFAULT 'YES',
    67  // 		HISTORY			ENUM('YES','NO') NOT NULL  DEFAULT 'YES');
    68  var ColumnSetupActors = []string{"HOST", "USER", "ROLE", "ENABLED", "HISTORY"}
    69  
    70  // ColumnSetupObjects contains the column name definitions for table setup_objects, same as MySQL.
    71  //
    72  // CREATE TABLE if not exists performance_schema.setup_objects (
    73  // 		OBJECT_TYPE		ENUM('EVENT','FUNCTION','TABLE') NOT NULL  DEFAULT 'TABLE',
    74  // 		OBJECT_SCHEMA	VARCHAR(64)  DEFAULT '%',
    75  // 		OBJECT_NAME		VARCHAR(64) NOT NULL  DEFAULT '%',
    76  // 		ENABLED			ENUM('YES','NO') NOT NULL  DEFAULT 'YES',
    77  // 		TIMED			ENUM('YES','NO') NOT NULL  DEFAULT 'YES');
    78  var ColumnSetupObjects = []string{"OBJECT_TYPE", "OBJECT_SCHEMA", "OBJECT_NAME", "ENABLED", "TIMED"}
    79  
    80  // ColumnSetupInstruments contains the column name definitions for table setup_instruments, same as MySQL.
    81  //
    82  // CREATE TABLE if not exists performance_schema.setup_instruments (
    83  // 		NAME			VARCHAR(128) NOT NULL,
    84  // 		ENABLED			ENUM('YES','NO') NOT NULL,
    85  // 		TIMED			ENUM('YES','NO') NOT NULL);
    86  var ColumnSetupInstruments = []string{"NAMED", "ENABLED", "TIMED"}
    87  
    88  // ColumnSetupConsumers contains the column name definitions for table setup_consumers, same as MySQL.
    89  //
    90  // CREATE TABLE if not exists performance_schema.setup_consumers (
    91  // 		NAME			VARCHAR(64) NOT NULL,
    92  // 		ENABLED			ENUM('YES','NO') NOT NULL);
    93  var ColumnSetupConsumers = []string{"NAMED", "ENABLED"}
    94  
    95  // ColumnSetupTimers contains the column name definitions for table setup_timers, same as MySQL.
    96  //
    97  // CREATE TABLE if not exists performance_schema.setup_timers (
    98  // 		NAME			VARCHAR(64) NOT NULL,
    99  // 		TIMER_NAME		ENUM('NANOSECOND','MICROSECOND','MILLISECOND') NOT NULL);
   100  var ColumnSetupTimers = []string{"NAME", "TIMER_NAME"}
   101  
   102  // ColumnStmtsCurrent contains the column name definitions for table events_statements_current, same as MySQL.
   103  //
   104  // CREATE TABLE if not exists performance_schema.events_statements_current (
   105  // 		THREAD_ID		BIGINT(20) UNSIGNED NOT NULL,
   106  // 		EVENT_ID		BIGINT(20) UNSIGNED NOT NULL,
   107  // 		END_EVENT_ID	BIGINT(20) UNSIGNED,
   108  // 		EVENT_NAME		VARCHAR(128) NOT NULL,
   109  // 		SOURCE			VARCHAR(64),
   110  // 		TIMER_START		BIGINT(20) UNSIGNED,
   111  // 		TIMER_END		BIGINT(20) UNSIGNED,
   112  // 		TIMER_WAIT		BIGINT(20) UNSIGNED,
   113  // 		LOCK_TIME		BIGINT(20) UNSIGNED NOT NULL,
   114  // 		SQL_TEXT		LONGTEXT,
   115  // 		DIGEST			VARCHAR(32),
   116  // 		DIGEST_TEXT		LONGTEXT,
   117  // 		CURRENT_SCHEMA	VARCHAR(64),
   118  // 		OBJECT_TYPE		VARCHAR(64),
   119  // 		OBJECT_SCHEMA	VARCHAR(64),
   120  // 		OBJECT_NAME		VARCHAR(64),
   121  // 		OBJECT_INSTANCE_BEGIN	BIGINT(20) UNSIGNED,
   122  // 		MYSQL_ERRNO		INT(11),
   123  // 		RETURNED_SQLSTATE		VARCHAR(5),
   124  // 		MESSAGE_TEXT	VARCHAR(128),
   125  // 		ERRORS			BIGINT(20) UNSIGNED NOT NULL,
   126  // 		WARNINGS		BIGINT(20) UNSIGNED NOT NULL,
   127  // 		ROWS_AFFECTED	BIGINT(20) UNSIGNED NOT NULL,
   128  // 		ROWS_SENT		BIGINT(20) UNSIGNED NOT NULL,
   129  // 		ROWS_EXAMINED	BIGINT(20) UNSIGNED NOT NULL,
   130  // 		CREATED_TMP_DISK_TABLES	BIGINT(20) UNSIGNED NOT NULL,
   131  // 		CREATED_TMP_TABLES		BIGINT(20) UNSIGNED NOT NULL,
   132  // 		SELECT_FULL_JOIN		BIGINT(20) UNSIGNED NOT NULL,
   133  // 		SELECT_FULL_RANGE_JOIN	BIGINT(20) UNSIGNED NOT NULL,
   134  // 		SELECT_RANGE	BIGINT(20) UNSIGNED NOT NULL,
   135  // 		SELECT_RANGE_CHECK		BIGINT(20) UNSIGNED NOT NULL,
   136  // 		SELECT_SCAN		BIGINT(20) UNSIGNED NOT NULL,
   137  // 		SORT_MERGE_PASSES		BIGINT(20) UNSIGNED NOT NULL,
   138  // 		SORT_RANGE		BIGINT(20) UNSIGNED NOT NULL,
   139  // 		SORT_ROWS		BIGINT(20) UNSIGNED NOT NULL,
   140  // 		SORT_SCAN		BIGINT(20) UNSIGNED NOT NULL,
   141  // 		NO_INDEX_USED	BIGINT(20) UNSIGNED NOT NULL,
   142  // 		NO_GOOD_INDEX_USED		BIGINT(20) UNSIGNED NOT NULL,
   143  // 		NESTING_EVENT_ID		BIGINT(20) UNSIGNED,
   144  // 		NESTING_EVENT_TYPE		ENUM('TRANSACTION','STATEMENT','STAGE'),
   145  // 		NESTING_EVENT_LEVEL		INT(11));
   146  var ColumnStmtsCurrent = []string{
   147  	"THREAD_ID",
   148  	"EVENT_ID",
   149  	"END_EVENT_ID",
   150  	"EVENT_NAME",
   151  	"SOURCE",
   152  	"TIMER_START",
   153  	"TIMER_END",
   154  	"TIMER_WAIT",
   155  	"LOCK_TIME",
   156  	"SQL_TEXT",
   157  	"DIGEST",
   158  	"DIGEST_TEXT",
   159  	"CURRENT_SCHEMA",
   160  	"OBJECT_TYPE",
   161  	"OBJECT_SCHEMA",
   162  	"OBJECT_NAME",
   163  	"OBJECT_INSTANCE_BEGIN",
   164  	"MYSQL_ERRNO",
   165  	"RETURNED_SQLSTATE",
   166  	"MESSAGE_TEXT",
   167  	"ERRORS",
   168  	"WARNINGS",
   169  	"ROWS_AFFECTED",
   170  	"ROWS_SENT",
   171  	"ROWS_EXAMINED",
   172  	"CREATED_TMP_DISK_TABLES",
   173  	"CREATED_TMP_TABLES",
   174  	"SELECT_FULL_JOIN",
   175  	"SELECT_FULL_RANGE_JOIN",
   176  	"SELECT_RANGE",
   177  	"SELECT_RANGE_CHECK",
   178  	"SELECT_SCAN",
   179  	"SORT_MERGE_PASSES",
   180  	"SORT_RANGE",
   181  	"SORT_ROWS",
   182  	"SORT_SCAN",
   183  	"NO_INDEX_USED",
   184  	"NO_GOOD_INDEX_USED",
   185  	"NESTING_EVENT_ID",
   186  	"NESTING_EVENT_TYPE",
   187  	"NESTING_EVENT_LEVEL",
   188  }
   189  
   190  // ColumnStmtsHistory contains the column name definitions for table events_statements_history, same as MySQL.
   191  //
   192  // CREATE TABLE if not exists performance_schema.events_statements_history (
   193  // 		THREAD_ID		BIGINT(20) UNSIGNED NOT NULL,
   194  // 		EVENT_ID		BIGINT(20) UNSIGNED NOT NULL,
   195  // 		END_EVENT_ID	BIGINT(20) UNSIGNED,
   196  // 		EVENT_NAME		VARCHAR(128) NOT NULL,
   197  // 		SOURCE			VARCHAR(64),
   198  // 		TIMER_START		BIGINT(20) UNSIGNED,
   199  // 		TIMER_END		BIGINT(20) UNSIGNED,
   200  // 		TIMER_WAIT		BIGINT(20) UNSIGNED,
   201  // 		LOCK_TIME		BIGINT(20) UNSIGNED NOT NULL,
   202  // 		SQL_TEXT		LONGTEXT,
   203  // 		DIGEST			VARCHAR(32),
   204  // 		DIGEST_TEXT		LONGTEXT,
   205  // 		CURRENT_SCHEMA	VARCHAR(64),
   206  // 		OBJECT_TYPE		VARCHAR(64),
   207  // 		OBJECT_SCHEMA	VARCHAR(64),
   208  // 		OBJECT_NAME		VARCHAR(64),
   209  // 		OBJECT_INSTANCE_BEGIN	BIGINT(20) UNSIGNED,
   210  // 		MYSQL_ERRNO		INT(11),
   211  // 		RETURNED_SQLSTATE		VARCHAR(5),
   212  // 		MESSAGE_TEXT	VARCHAR(128),
   213  // 		ERRORS			BIGINT(20) UNSIGNED NOT NULL,
   214  // 		WARNINGS		BIGINT(20) UNSIGNED NOT NULL,
   215  // 		ROWS_AFFECTED	BIGINT(20) UNSIGNED NOT NULL,
   216  // 		ROWS_SENT		BIGINT(20) UNSIGNED NOT NULL,
   217  // 		ROWS_EXAMINED	BIGINT(20) UNSIGNED NOT NULL,
   218  // 		CREATED_TMP_DISK_TABLES	BIGINT(20) UNSIGNED NOT NULL,
   219  // 		CREATED_TMP_TABLES		BIGINT(20) UNSIGNED NOT NULL,
   220  // 		SELECT_FULL_JOIN		BIGINT(20) UNSIGNED NOT NULL,
   221  // 		SELECT_FULL_RANGE_JOIN	BIGINT(20) UNSIGNED NOT NULL,
   222  // 		SELECT_RANGE	BIGINT(20) UNSIGNED NOT NULL,
   223  // 		SELECT_RANGE_CHECK		BIGINT(20) UNSIGNED NOT NULL,
   224  // 		SELECT_SCAN		BIGINT(20) UNSIGNED NOT NULL,
   225  // 		SORT_MERGE_PASSES		BIGINT(20) UNSIGNED NOT NULL,
   226  // 		SORT_RANGE		BIGINT(20) UNSIGNED NOT NULL,
   227  // 		SORT_ROWS		BIGINT(20) UNSIGNED NOT NULL,
   228  // 		SORT_SCAN		BIGINT(20) UNSIGNED NOT NULL,
   229  // 		NO_INDEX_USED	BIGINT(20) UNSIGNED NOT NULL,
   230  // 		NO_GOOD_INDEX_USED		BIGINT(20) UNSIGNED NOT NULL,
   231  // 		NESTING_EVENT_ID		BIGINT(20) UNSIGNED,
   232  // 		NESTING_EVENT_TYPE		ENUM('TRANSACTION','STATEMENT','STAGE'),
   233  // 		NESTING_EVENT_LEVEL		INT(11));
   234  var ColumnStmtsHistory = []string{
   235  	"THREAD_ID",
   236  	"EVENT_ID",
   237  	"END_EVENT_ID",
   238  	"EVENT_NAME",
   239  	"SOURCE",
   240  	"TIMER_START",
   241  	"TIMER_END",
   242  	"TIMER_WAIT",
   243  	"LOCK_TIME",
   244  	"SQL_TEXT",
   245  	"DIGEST",
   246  	"DIGEST_TEXT",
   247  	"CURRENT_SCHEMA",
   248  	"OBJECT_TYPE",
   249  	"OBJECT_SCHEMA",
   250  	"OBJECT_NAME",
   251  	"OBJECT_INSTANCE_BEGIN",
   252  	"MYSQL_ERRNO",
   253  	"RETURNED_SQLSTATE",
   254  	"MESSAGE_TEXT",
   255  	"ERRORS",
   256  	"WARNINGS",
   257  	"ROWS_AFFECTED",
   258  	"ROWS_SENT",
   259  	"ROWS_EXAMINED",
   260  	"CREATED_TMP_DISK_TABLES",
   261  	"CREATED_TMP_TABLES",
   262  	"SELECT_FULL_JOIN",
   263  	"SELECT_FULL_RANGE_JOIN",
   264  	"SELECT_RANGE",
   265  	"SELECT_RANGE_CHECK",
   266  	"SELECT_SCAN",
   267  	"SORT_MERGE_PASSES",
   268  	"SORT_RANGE",
   269  	"SORT_ROWS",
   270  	"SORT_SCAN",
   271  	"NO_INDEX_USED",
   272  	"NO_GOOD_INDEX_USED",
   273  	"NESTING_EVENT_ID",
   274  	"NESTING_EVENT_TYPE",
   275  	"NESTING_EVENT_LEVEL",
   276  }
   277  
   278  // ColumnStmtsHistoryLong contains the column name definitions for table events_statements_history_long, same as MySQL.
   279  //
   280  // CREATE TABLE if not exists performance_schema.events_statements_history_long (
   281  // 		THREAD_ID		BIGINT(20) UNSIGNED NOT NULL,
   282  // 		EVENT_ID		BIGINT(20) UNSIGNED NOT NULL,
   283  // 		END_EVENT_ID	BIGINT(20) UNSIGNED,
   284  // 		EVENT_NAME		VARCHAR(128) NOT NULL,
   285  // 		SOURCE			VARCHAR(64),
   286  // 		TIMER_START		BIGINT(20) UNSIGNED,
   287  // 		TIMER_END		BIGINT(20) UNSIGNED,
   288  // 		TIMER_WAIT		BIGINT(20) UNSIGNED,
   289  // 		LOCK_TIME		BIGINT(20) UNSIGNED NOT NULL,
   290  // 		SQL_TEXT		LONGTEXT,
   291  // 		DIGEST			VARCHAR(32),
   292  // 		DIGEST_TEXT		LONGTEXT,
   293  // 		CURRENT_SCHEMA	VARCHAR(64),
   294  // 		OBJECT_TYPE		VARCHAR(64),
   295  // 		OBJECT_SCHEMA	VARCHAR(64),
   296  // 		OBJECT_NAME		VARCHAR(64),
   297  // 		OBJECT_INSTANCE_BEGIN	BIGINT(20) UNSIGNED,
   298  // 		MYSQL_ERRNO		INT(11),
   299  // 		RETURNED_SQLSTATE		VARCHAR(5),
   300  // 		MESSAGE_TEXT	VARCHAR(128),
   301  // 		ERRORS			BIGINT(20) UNSIGNED NOT NULL,
   302  // 		WARNINGS		BIGINT(20) UNSIGNED NOT NULL,
   303  // 		ROWS_AFFECTED	BIGINT(20) UNSIGNED NOT NULL,
   304  // 		ROWS_SENT		BIGINT(20) UNSIGNED NOT NULL,
   305  // 		ROWS_EXAMINED	BIGINT(20) UNSIGNED NOT NULL,
   306  // 		CREATED_TMP_DISK_TABLES	BIGINT(20) UNSIGNED NOT NULL,
   307  // 		CREATED_TMP_TABLES		BIGINT(20) UNSIGNED NOT NULL,
   308  // 		SELECT_FULL_JOIN		BIGINT(20) UNSIGNED NOT NULL,
   309  // 		SELECT_FULL_RANGE_JOIN	BIGINT(20) UNSIGNED NOT NULL,
   310  // 		SELECT_RANGE	BIGINT(20) UNSIGNED NOT NULL,
   311  // 		SELECT_RANGE_CHECK		BIGINT(20) UNSIGNED NOT NULL,
   312  // 		SELECT_SCAN		BIGINT(20) UNSIGNED NOT NULL,
   313  // 		SORT_MERGE_PASSES		BIGINT(20) UNSIGNED NOT NULL,
   314  // 		SORT_RANGE		BIGINT(20) UNSIGNED NOT NULL,
   315  // 		SORT_ROWS		BIGINT(20) UNSIGNED NOT NULL,
   316  // 		SORT_SCAN		BIGINT(20) UNSIGNED NOT NULL,
   317  // 		NO_INDEX_USED	BIGINT(20) UNSIGNED NOT NULL,
   318  // 		NO_GOOD_INDEX_USED		BIGINT(20) UNSIGNED NOT NULL,
   319  // 		NESTING_EVENT_ID		BIGINT(20) UNSIGNED,
   320  // 		NESTING_EVENT_TYPE		ENUM('TRANSACTION','STATEMENT','STAGE'),
   321  // 		NESTING_EVENT_LEVEL		INT(11));
   322  var ColumnStmtsHistoryLong = []string{
   323  	"THREAD_ID",
   324  	"EVENT_ID",
   325  	"END_EVENT_ID",
   326  	"EVENT_NAME",
   327  	"SOURCE",
   328  	"TIMER_START",
   329  	"TIMER_END",
   330  	"TIMER_WAIT",
   331  	"LOCK_TIME",
   332  	"SQL_TEXT",
   333  	"DIGEST",
   334  	"DIGEST_TEXT",
   335  	"CURRENT_SCHEMA",
   336  	"OBJECT_TYPE",
   337  	"OBJECT_SCHEMA",
   338  	"OBJECT_NAME",
   339  	"OBJECT_INSTANCE_BEGIN",
   340  	"MYSQL_ERRNO",
   341  	"RETURNED_SQLSTATE",
   342  	"MESSAGE_TEXT",
   343  	"ERRORS",
   344  	"WARNINGS",
   345  	"ROWS_AFFECTED",
   346  	"ROWS_SENT",
   347  	"ROWS_EXAMINED",
   348  	"CREATED_TMP_DISK_TABLES",
   349  	"CREATED_TMP_TABLES",
   350  	"SELECT_FULL_JOIN",
   351  	"SELECT_FULL_RANGE_JOIN",
   352  	"SELECT_RANGE",
   353  	"SELECT_RANGE_CHECK",
   354  	"SELECT_SCAN",
   355  	"SORT_MERGE_PASSES",
   356  	"SORT_RANGE",
   357  	"SORT_ROWS",
   358  	"SORT_SCAN",
   359  	"NO_INDEX_USED",
   360  	"NO_GOOD_INDEX_USED",
   361  	"NESTING_EVENT_ID",
   362  	"NESTING_EVENT_TYPE",
   363  	"NESTING_EVENT_LEVEL",
   364  }
   365  
   366  // ColumnPreparedStmtsInstances contains the column name definitions for table prepared_statements_instances, same as MySQL.
   367  //
   368  // CREATE TABLE if not exists performance_schema.prepared_statements_instances (
   369  // 		OBJECT_INSTANCE_BEGIN	BIGINT(20) UNSIGNED NOT NULL,
   370  // 		STATEMENT_ID	BIGINT(20) UNSIGNED NOT NULL,
   371  // 		STATEMENT_NAME	VARCHAR(64),
   372  // 		SQL_TEXT		LONGTEXT NOT NULL,
   373  // 		OWNER_THREAD_ID	BIGINT(20) UNSIGNED NOT NULL,
   374  // 		OWNER_EVENT_ID	BIGINT(20) UNSIGNED NOT NULL,
   375  // 		OWNER_OBJECT_TYPE		ENUM('EVENT','FUNCTION','TABLE'),
   376  // 		OWNER_OBJECT_SCHEMA		VARCHAR(64),
   377  // 		OWNER_OBJECT_NAME		VARCHAR(64),
   378  // 		TIMER_PREPARE	BIGINT(20) UNSIGNED NOT NULL,
   379  // 		COUNT_REPREPARE	BIGINT(20) UNSIGNED NOT NULL,
   380  // 		COUNT_EXECUTE	BIGINT(20) UNSIGNED NOT NULL,
   381  // 		SUM_TIMER_EXECUTE		BIGINT(20) UNSIGNED NOT NULL,
   382  // 		MIN_TIMER_EXECUTE		BIGINT(20) UNSIGNED NOT NULL,
   383  // 		AVG_TIMER_EXECUTE		BIGINT(20) UNSIGNED NOT NULL,
   384  // 		MAX_TIMER_EXECUTE		BIGINT(20) UNSIGNED NOT NULL,
   385  // 		SUM_LOCK_TIME	BIGINT(20) UNSIGNED NOT NULL,
   386  // 		SUM_ERRORS		BIGINT(20) UNSIGNED NOT NULL,
   387  // 		SUM_WARNINGS	BIGINT(20) UNSIGNED NOT NULL,
   388  // 		SUM_ROWS_AFFECTED		BIGINT(20) UNSIGNED NOT NULL,
   389  // 		SUM_ROWS_SENT	BIGINT(20) UNSIGNED NOT NULL,
   390  // 		SUM_ROWS_EXAMINED		BIGINT(20) UNSIGNED NOT NULL,
   391  // 		SUM_CREATED_TMP_DISK_TABLES	BIGINT(20) UNSIGNED NOT NULL,
   392  // 		SUM_CREATED_TMP_TABLES	BIGINT(20) UNSIGNED NOT NULL,
   393  // 		SUM_SELECT_FULL_JOIN	BIGINT(20) UNSIGNED NOT NULL,
   394  // 		SUM_SELECT_FULL_RANGE_JOIN	BIGINT(20) UNSIGNED NOT NULL,
   395  // 		SUM_SELECT_RANGE		BIGINT(20) UNSIGNED NOT NULL,
   396  // 		SUM_SELECT_RANGE_CHECK	BIGINT(20) UNSIGNED NOT NULL,
   397  // 		SUM_SELECT_SCAN	BIGINT(20) UNSIGNED NOT NULL,
   398  // 		SUM_SORT_MERGE_PASSES	BIGINT(20) UNSIGNED NOT NULL,
   399  // 		SUM_SORT_RANGE	BIGINT(20) UNSIGNED NOT NULL,
   400  // 		SUM_SORT_ROWS	BIGINT(20) UNSIGNED NOT NULL,
   401  // 		SUM_SORT_SCAN	BIGINT(20) UNSIGNED NOT NULL,
   402  // 		SUM_NO_INDEX_USED		BIGINT(20) UNSIGNED NOT NULL,
   403  // 		SUM_NO_GOOD_INDEX_USED	BIGINT(20) UNSIGNED NOT NULL);
   404  var ColumnPreparedStmtsInstances = []string{
   405  	"OBJECT_INSTANCE_BEGIN",
   406  	"STATEMENT_ID",
   407  	"STATEMENT_NAME",
   408  	"SQL_TEXT",
   409  	"OWNER_THREAD_ID",
   410  	"OWNER_EVENT_ID",
   411  	"OWNER_OBJECT_TYPE",
   412  	"OWNER_OBJECT_SCHEMA",
   413  	"OWNER_OBJECT_NAME",
   414  	"TIMER_PREPARE",
   415  	"COUNT_REPREPARE",
   416  	"COUNT_EXECUTE",
   417  	"SUM_TIMER_EXECUTE",
   418  	"MIN_TIMER_EXECUTE",
   419  	"AVG_TIMER_EXECUTE",
   420  	"MAX_TIMER_EXECUTE",
   421  	"SUM_LOCK_TIME",
   422  	"SUM_ERRORS",
   423  	"SUM_WARNINGS",
   424  	"SUM_ROWS_AFFECTED",
   425  	"SUM_ROWS_SENT",
   426  	"SUM_ROWS_EXAMINED",
   427  	"SUM_CREATED_TMP_DISK_TABLES",
   428  	"SUM_CREATED_TMP_TABLES",
   429  	"SUM_SELECT_FULL_JOIN",
   430  	"SUM_SELECT_FULL_RANGE_JOIN",
   431  	"SUM_SELECT_RANGE",
   432  	"SUM_SELECT_RANGE_CHECK",
   433  	"SUM_SELECT_SCAN",
   434  	"SUM_SORT_MERGE_PASSES",
   435  	"SUM_SORT_RANGE",
   436  	"SUM_SORT_ROWS",
   437  	"SUM_SORT_SCAN",
   438  	"SUM_NO_INDEX_USED",
   439  	"SUM_NO_GOOD_INDEX_USED",
   440  }
   441  
   442  // ColumnTransCurrent contains the column name definitions for table events_transactions_current, same as MySQL.
   443  //
   444  // CREATE TABLE if not exists performance_schema.events_transactions_current (
   445  // 		THREAD_ID		BIGINT(20) UNSIGNED NOT NULL,
   446  // 		EVENT_ID		BIGINT(20) UNSIGNED NOT NULL,
   447  // 		END_EVENT_ID	BIGINT(20) UNSIGNED,
   448  // 		EVENT_NAME		VARCHAR(128) NOT NULL,
   449  // 		STATE			ENUM('ACTIVE','COMMITTED',"ROLLED BACK"),
   450  // 		TRX_ID			BIGINT(20) UNSIGNED,
   451  // 		GTID			VARCHAR(64),
   452  // 		XID_FORMAT_ID	INT(11),
   453  // 		XID_GTRID		VARCHAR(130),
   454  // 		XID_BQUAL		VARCHAR(130),
   455  // 		XA_STATE		VARCHAR(64),
   456  // 		SOURCE			VARCHAR(64),
   457  // 		TIMER_START		BIGINT(20) UNSIGNED,
   458  // 		TIMER_END		BIGINT(20) UNSIGNED,
   459  // 		TIMER_WAIT		BIGINT(20) UNSIGNED,
   460  // 		ACCESS_MODE		ENUM('READ ONLY','READ WRITE'),
   461  // 		ISOLATION_LEVEL	VARCHAR(64),
   462  // 		AUTOCOMMIT		ENUM('YES','NO') NOT NULL,
   463  // 		NUMBER_OF_SAVEPOINTS	BIGINT(20) UNSIGNED,
   464  // 		NUMBER_OF_ROLLBACK_TO_SAVEPOINT	BIGINT(20) UNSIGNED,
   465  // 		NUMBER_OF_RELEASE_SAVEPOINT		BIGINT(20) UNSIGNED,
   466  // 		OBJECT_INSTANCE_BEGIN	BIGINT(20) UNSIGNED,
   467  // 		NESTING_EVENT_ID		BIGINT(20) UNSIGNED,
   468  // 		NESTING_EVENT_TYPE		ENUM('TRANSACTION','STATEMENT','STAGE'));
   469  var ColumnTransCurrent = []string{
   470  	"THREAD_ID",
   471  	"EVENT_ID",
   472  	"END_EVENT_ID",
   473  	"EVENT_NAME",
   474  	"STATE",
   475  	"TRX_ID",
   476  	"GTID",
   477  	"XID_FORMAT_ID",
   478  	"XID_GTRID",
   479  	"XID_BQUAL",
   480  	"XA_STATE",
   481  	"SOURCE",
   482  	"TIMER_START",
   483  	"TIMER_END",
   484  	"TIMER_WAIT",
   485  	"ACCESS_MODE",
   486  	"ISOLATION_LEVEL",
   487  	"AUTOCOMMIT",
   488  	"NUMBER_OF_SAVEPOINTS",
   489  	"NUMBER_OF_ROLLBACK_TO_SAVEPOINT",
   490  	"NUMBER_OF_RELEASE_SAVEPOINT",
   491  	"OBJECT_INSTANCE_BEGIN",
   492  	"NESTING_EVENT_ID",
   493  	"NESTING_EVENT_TYPE",
   494  }
   495  
   496  // ColumnTransHistory contains the column name definitions for table events_transactions_history, same as MySQL.
   497  //
   498  // CREATE TABLE if not exists performance_schema.events_transactions_history (
   499  // 		THREAD_ID		BIGINT(20) UNSIGNED NOT NULL,
   500  // 		EVENT_ID		BIGINT(20) UNSIGNED NOT NULL,
   501  // 		END_EVENT_ID	BIGINT(20) UNSIGNED,
   502  // 		EVENT_NAME		VARCHAR(128) NOT NULL,
   503  // 		STATE			ENUM('ACTIVE','COMMITTED',"ROLLED BACK"),
   504  // 		TRX_ID			BIGINT(20) UNSIGNED,
   505  // 		GTID			VARCHAR(64),
   506  // 		XID_FORMAT_ID	INT(11),
   507  // 		XID_GTRID		VARCHAR(130),
   508  // 		XID_BQUAL		VARCHAR(130),
   509  // 		XA_STATE		VARCHAR(64),
   510  // 		SOURCE			VARCHAR(64),
   511  // 		TIMER_START		BIGINT(20) UNSIGNED,
   512  // 		TIMER_END		BIGINT(20) UNSIGNED,
   513  // 		TIMER_WAIT		BIGINT(20) UNSIGNED,
   514  // 		ACCESS_MODE		ENUM('READ ONLY','READ WRITE'),
   515  // 		ISOLATION_LEVEL	VARCHAR(64),
   516  // 		AUTOCOMMIT		ENUM('YES','NO') NOT NULL,
   517  // 		NUMBER_OF_SAVEPOINTS	BIGINT(20) UNSIGNED,
   518  // 		NUMBER_OF_ROLLBACK_TO_SAVEPOINT	BIGINT(20) UNSIGNED,
   519  // 		NUMBER_OF_RELEASE_SAVEPOINT		BIGINT(20) UNSIGNED,
   520  // 		OBJECT_INSTANCE_BEGIN	BIGINT(20) UNSIGNED,
   521  // 		NESTING_EVENT_ID		BIGINT(20) UNSIGNED,
   522  // 		NESTING_EVENT_TYPE		ENUM('TRANSACTION','STATEMENT','STAGE'));
   523  var ColumnTransHistory = []string{
   524  	"THREAD_ID",
   525  	"EVENT_ID",
   526  	"END_EVENT_ID",
   527  	"EVENT_NAME",
   528  	"STATE",
   529  	"TRX_ID",
   530  	"GTID",
   531  	"XID_FORMAT_ID",
   532  	"XID_GTRID",
   533  	"XID_BQUAL",
   534  	"XA_STATE",
   535  	"SOURCE",
   536  	"TIMER_START",
   537  	"TIMER_END",
   538  	"TIMER_WAIT",
   539  	"ACCESS_MODE",
   540  	"ISOLATION_LEVEL",
   541  	"AUTOCOMMIT",
   542  	"NUMBER_OF_SAVEPOINTS",
   543  	"NUMBER_OF_ROLLBACK_TO_SAVEPOINT",
   544  	"NUMBER_OF_RELEASE_SAVEPOINT",
   545  	"OBJECT_INSTANCE_BEGIN",
   546  	"NESTING_EVENT_ID",
   547  	"NESTING_EVENT_TYPE",
   548  }
   549  
   550  // ColumnTransHistoryLong contains the column name definitions for table events_transactions_history_long, same as MySQL.
   551  //
   552  // CREATE TABLE if not exists performance_schema.events_transactions_history_long (
   553  // 		THREAD_ID		BIGINT(20) UNSIGNED NOT NULL,
   554  // 		EVENT_ID		BIGINT(20) UNSIGNED NOT NULL,
   555  // 		END_EVENT_ID	BIGINT(20) UNSIGNED,
   556  // 		EVENT_NAME		VARCHAR(128) NOT NULL,
   557  // 		STATE			ENUM('ACTIVE','COMMITTED',"ROLLED BACK"),
   558  // 		TRX_ID			BIGINT(20) UNSIGNED,
   559  // 		GTID			VARCHAR(64),
   560  // 		XID_FORMAT_ID	INT(11),
   561  // 		XID_GTRID		VARCHAR(130),
   562  // 		XID_BQUAL		VARCHAR(130),
   563  // 		XA_STATE		VARCHAR(64),
   564  // 		SOURCE			VARCHAR(64),
   565  // 		TIMER_START		BIGINT(20) UNSIGNED,
   566  // 		TIMER_END		BIGINT(20) UNSIGNED,
   567  // 		TIMER_WAIT		BIGINT(20) UNSIGNED,
   568  // 		ACCESS_MODE		ENUM('READ ONLY','READ WRITE'),
   569  // 		ISOLATION_LEVEL	VARCHAR(64),
   570  // 		AUTOCOMMIT		ENUM('YES','NO') NOT NULL,
   571  // 		NUMBER_OF_SAVEPOINTS	BIGINT(20) UNSIGNED,
   572  // 		NUMBER_OF_ROLLBACK_TO_SAVEPOINT	BIGINT(20) UNSIGNED,
   573  // 		NUMBER_OF_RELEASE_SAVEPOINT		BIGINT(20) UNSIGNED,
   574  // 		OBJECT_INSTANCE_BEGIN	BIGINT(20) UNSIGNED,
   575  // 		NESTING_EVENT_ID		BIGINT(20) UNSIGNED,
   576  // 		NESTING_EVENT_TYPE		ENUM('TRANSACTION','STATEMENT','STAGE'));
   577  var ColumnTransHistoryLong = []string{
   578  	"THREAD_ID",
   579  	"EVENT_ID",
   580  	"END_EVENT_ID",
   581  	"EVENT_NAME",
   582  	"STATE",
   583  	"TRX_ID",
   584  	"GTID",
   585  	"XID_FORMAT_ID",
   586  	"XID_GTRID",
   587  	"XID_BQUAL",
   588  	"XA_STATE",
   589  	"SOURCE",
   590  	"TIMER_START",
   591  	"TIMER_END",
   592  	"TIMER_WAIT",
   593  	"ACCESS_MODE",
   594  	"ISOLATION_LEVEL",
   595  	"AUTOCOMMIT",
   596  	"NUMBER_OF_SAVEPOINTS",
   597  	"NUMBER_OF_ROLLBACK_TO_SAVEPOINT",
   598  	"NUMBER_OF_RELEASE_SAVEPOINT",
   599  	"OBJECT_INSTANCE_BEGIN",
   600  	"NESTING_EVENT_ID",
   601  	"NESTING_EVENT_TYPE",
   602  }
   603  
   604  // ColumnStagesCurrent contains the column name definitions for table events_stages_current, same as MySQL.
   605  //
   606  // CREATE TABLE if not exists performance_schema.events_stages_current (
   607  // 		THREAD_ID		BIGINT(20) UNSIGNED NOT NULL,
   608  // 		EVENT_ID		BIGINT(20) UNSIGNED NOT NULL,
   609  // 		END_EVENT_ID	BIGINT(20) UNSIGNED,
   610  // 		EVENT_NAME		VARCHAR(128) NOT NULL,
   611  // 		SOURCE			VARCHAR(64),
   612  // 		TIMER_START		BIGINT(20) UNSIGNED,
   613  // 		TIMER_END		BIGINT(20) UNSIGNED,
   614  // 		TIMER_WAIT		BIGINT(20) UNSIGNED,
   615  // 		WORK_COMPLETED	BIGINT(20) UNSIGNED,
   616  // 		WORK_ESTIMATED	BIGINT(20) UNSIGNED,
   617  // 		NESTING_EVENT_ID		BIGINT(20) UNSIGNED,
   618  // 		NESTING_EVENT_TYPE		ENUM('TRANSACTION','STATEMENT','STAGE'));
   619  var ColumnStagesCurrent = []string{
   620  	"THREAD_ID",
   621  	"EVENT_ID",
   622  	"END_EVENT_ID",
   623  	"EVENT_NAME",
   624  	"SOURCE",
   625  	"TIMER_START",
   626  	"TIMER_END",
   627  	"TIMER_WAIT",
   628  	"WORK_COMPLETED",
   629  	"WORK_ESTIMATED",
   630  	"NESTING_EVENT_ID",
   631  	"NESTING_EVENT_TYPE",
   632  }
   633  
   634  // ColumnStagesHistory contains the column name definitions for table events_stages_history, same as MySQL.
   635  //
   636  // CREATE TABLE if not exists performance_schema.events_stages_history (
   637  // 		THREAD_ID		BIGINT(20) UNSIGNED NOT NULL,
   638  // 		EVENT_ID		BIGINT(20) UNSIGNED NOT NULL,
   639  // 		END_EVENT_ID	BIGINT(20) UNSIGNED,
   640  // 		EVENT_NAME		VARCHAR(128) NOT NULL,
   641  // 		SOURCE			VARCHAR(64),
   642  // 		TIMER_START		BIGINT(20) UNSIGNED,
   643  // 		TIMER_END		BIGINT(20) UNSIGNED,
   644  // 		TIMER_WAIT		BIGINT(20) UNSIGNED,
   645  // 		WORK_COMPLETED	BIGINT(20) UNSIGNED,
   646  // 		WORK_ESTIMATED	BIGINT(20) UNSIGNED,
   647  // 		NESTING_EVENT_ID		BIGINT(20) UNSIGNED,
   648  // 		NESTING_EVENT_TYPE		ENUM('TRANSACTION','STATEMENT','STAGE'));
   649  var ColumnStagesHistory = []string{
   650  	"THREAD_ID",
   651  	"EVENT_ID",
   652  	"END_EVENT_ID",
   653  	"EVENT_NAME",
   654  	"SOURCE",
   655  	"TIMER_START",
   656  	"TIMER_END",
   657  	"TIMER_WAIT",
   658  	"WORK_COMPLETED",
   659  	"WORK_ESTIMATED",
   660  	"NESTING_EVENT_ID",
   661  	"NESTING_EVENT_TYPE",
   662  }
   663  
   664  // ColumnStagesHistoryLong contains the column name definitions for table events_stages_history_long, same as MySQL.
   665  //
   666  // CREATE TABLE if not exists performance_schema.events_stages_history_long (
   667  // 		THREAD_ID		BIGINT(20) UNSIGNED NOT NULL,
   668  // 		EVENT_ID		BIGINT(20) UNSIGNED NOT NULL,
   669  // 		END_EVENT_ID	BIGINT(20) UNSIGNED,
   670  // 		EVENT_NAME		VARCHAR(128) NOT NULL,
   671  // 		SOURCE			VARCHAR(64),
   672  // 		TIMER_START		BIGINT(20) UNSIGNED,
   673  // 		TIMER_END		BIGINT(20) UNSIGNED,
   674  // 		TIMER_WAIT		BIGINT(20) UNSIGNED,
   675  // 		WORK_COMPLETED	BIGINT(20) UNSIGNED,
   676  // 		WORK_ESTIMATED	BIGINT(20) UNSIGNED,
   677  // 		NESTING_EVENT_ID		BIGINT(20) UNSIGNED,
   678  // 		NESTING_EVENT_TYPE		ENUM('TRANSACTION','STATEMENT','STAGE'));
   679  var ColumnStagesHistoryLong = []string{
   680  	"THREAD_ID",
   681  	"EVENT_ID",
   682  	"END_EVENT_ID",
   683  	"EVENT_NAME",
   684  	"SOURCE",
   685  	"TIMER_START",
   686  	"TIMER_END",
   687  	"TIMER_WAIT",
   688  	"WORK_COMPLETED",
   689  	"WORK_ESTIMATED",
   690  	"NESTING_EVENT_ID",
   691  	"NESTING_EVENT_TYPE",
   692  }