1 /*****************************************************************************
2 
3 Copyright (c) 2007, 2021, Oracle and/or its affiliates.
4 
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License, version 2.0,
7 as published by the Free Software Foundation.
8 
9 This program is also distributed with certain software (including
10 but not limited to OpenSSL) that is licensed under separate terms,
11 as designated in a particular file or component or in included license
12 documentation.  The authors of MySQL hereby grant you an additional
13 permission to link the program and your derivative works with the
14 separately licensed software that they have included with MySQL.
15 
16 This program is distributed in the hope that it will be useful,
17 but WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19 GNU General Public License, version 2.0, for more details.
20 
21 You should have received a copy of the GNU General Public License along with
22 this program; if not, write to the Free Software Foundation, Inc.,
23 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
24 
25 *****************************************************************************/
26 
27 /**************************************************//**
28 @file handler/i_s.h
29 InnoDB INFORMATION SCHEMA tables interface to MySQL.
30 
31 Created July 18, 2007 Vasil Dimov
32 *******************************************************/
33 
34 #ifndef i_s_h
35 #define i_s_h
36 
37 const char plugin_author[] = "Oracle Corporation";
38 
39 extern struct st_mysql_plugin	i_s_innodb_trx;
40 extern struct st_mysql_plugin	i_s_innodb_locks;
41 extern struct st_mysql_plugin	i_s_innodb_lock_waits;
42 extern struct st_mysql_plugin	i_s_innodb_cmp;
43 extern struct st_mysql_plugin	i_s_innodb_cmp_reset;
44 extern struct st_mysql_plugin	i_s_innodb_cmp_per_index;
45 extern struct st_mysql_plugin	i_s_innodb_cmp_per_index_reset;
46 extern struct st_mysql_plugin	i_s_innodb_cmpmem;
47 extern struct st_mysql_plugin	i_s_innodb_cmpmem_reset;
48 extern struct st_mysql_plugin   i_s_innodb_metrics;
49 extern struct st_mysql_plugin	i_s_innodb_ft_default_stopword;
50 extern struct st_mysql_plugin	i_s_innodb_ft_deleted;
51 extern struct st_mysql_plugin	i_s_innodb_ft_being_deleted;
52 extern struct st_mysql_plugin	i_s_innodb_ft_index_cache;
53 extern struct st_mysql_plugin	i_s_innodb_ft_index_table;
54 extern struct st_mysql_plugin	i_s_innodb_ft_config;
55 extern struct st_mysql_plugin	i_s_innodb_buffer_page;
56 extern struct st_mysql_plugin	i_s_innodb_buffer_page_lru;
57 extern struct st_mysql_plugin	i_s_innodb_buffer_stats;
58 extern struct st_mysql_plugin	i_s_innodb_temp_table_info;
59 extern struct st_mysql_plugin	i_s_innodb_sys_tables;
60 extern struct st_mysql_plugin	i_s_innodb_sys_tablestats;
61 extern struct st_mysql_plugin	i_s_innodb_sys_indexes;
62 extern struct st_mysql_plugin	i_s_innodb_sys_columns;
63 extern struct st_mysql_plugin	i_s_innodb_sys_fields;
64 extern struct st_mysql_plugin	i_s_innodb_sys_foreign;
65 extern struct st_mysql_plugin	i_s_innodb_sys_foreign_cols;
66 extern struct st_mysql_plugin	i_s_innodb_sys_tablespaces;
67 extern struct st_mysql_plugin	i_s_innodb_sys_datafiles;
68 extern struct st_mysql_plugin	i_s_innodb_sys_virtual;
69 
70 /** Fill handlerton based INFORMATION_SCHEMA.FILES table.
71 @param[in,out]	thd	thread/connection descriptor
72 @param[in,out]	tables	information schema tables to fill
73 @retval 0 for success
74 @retval HA_ERR_OUT_OF_MEM when running out of memory
75 @return nonzero for failure */
76 int
77 i_s_files_table_fill(
78 	THD		*thd,
79 	TABLE_LIST	*tables);
80 
81 #endif /* i_s_h */
82