23#ifndef PLUGIN_PFS_TABLE_PLUGIN_pfs_example_employee_name_H_
24#define PLUGIN_PFS_TABLE_PLUGIN_pfs_example_employee_name_H_
38#define EMPLOYEE_NAME_LEN 20 * 4
41#define EMPLOYEEE_NAME_MAX_ROWS 100
150 unsigned int idx,
int find_flag);
Definition: pfs_example_employee_name.h:71
void set_at(Ename_POS *pos)
Definition: pfs_example_employee_name.h:91
unsigned int get_index()
Definition: pfs_example_employee_name.h:87
unsigned int m_index
Definition: pfs_example_employee_name.h:73
void set_at(unsigned int index)
Definition: pfs_example_employee_name.h:89
void next()
Definition: pfs_example_employee_name.h:83
bool has_more()
Definition: pfs_example_employee_name.h:79
Ename_POS()
Definition: pfs_example_employee_name.h:77
void set_after(Ename_POS *pos)
Definition: pfs_example_employee_name.h:93
void reset()
Definition: pfs_example_employee_name.h:85
Definition: pfs_example_employee_name.h:113
bool match(Ename_Record *record) override
Definition: pfs_example_employee_name.h:118
PSI_plugin_key_string m_emp_fname
Definition: pfs_example_employee_name.h:115
char m_emp_fname_buffer[EMPLOYEE_NAME_LEN]
Definition: pfs_example_employee_name.h:116
Definition: pfs_example_employee_name.h:103
PSI_plugin_key_integer m_emp_num
Definition: pfs_example_employee_name.h:105
bool match(Ename_Record *record) override
Definition: pfs_example_employee_name.h:107
Definition: pfs_example_employee_name.h:96
virtual bool match(Ename_Record *record)=0
virtual ~Ename_index()=default
static int record
Definition: mysqltest.cc:194
static int handle(int sql_errno, const char *sqlstate, const char *message, void *state)
Bridge function between the C++ API offered by this module and the C API of the parser service.
Definition: services.cc:63
int ename_delete_all_rows(void)
Definition: pfs_example_employee_name.cc:380
#define EMPLOYEEE_NAME_MAX_ROWS
Definition: pfs_example_employee_name.h:41
int ename_write_row_values(PSI_table_handle *handle)
Definition: pfs_example_employee_name.cc:248
PSI_table_handle * ename_open_table(PSI_pos **pos)
Instantiate Ename_Table_Handle at plugin code when corresponding table in performance schema is opene...
Definition: pfs_example_employee_name.cc:63
int ename_rnd_init(PSI_table_handle *h, bool scan)
Definition: pfs_example_employee_name.cc:110
int ename_read_column_value(PSI_table_handle *handle, PSI_field *field, uint index)
Definition: pfs_example_employee_name.cc:223
int ename_update_row_values(PSI_table_handle *handle)
Definition: pfs_example_employee_name.cc:318
PFS_engine_table_share_proxy ename_st_share
Definition: pfs_example_employee_name.cc:27
const mysql_service_pfs_plugin_column_integer_v1_t * col_int_svc
Definition: pfs_example_plugin_employee.cc:89
unsigned long long ename_get_row_count(void)
Definition: pfs_example_employee_name.cc:390
int ename_update_column_value(PSI_table_handle *handle, PSI_field *field, unsigned int index)
Definition: pfs_example_employee_name.cc:337
void ename_close_table(PSI_table_handle *handle)
Destroy the Ename_Table_Handle at plugin code when corresponding table in performance schema is close...
Definition: pfs_example_employee_name.cc:77
const mysql_service_pfs_plugin_column_string_v2_t * col_string_svc
Definition: pfs_example_plugin_employee.cc:91
void init_ename_share(PFS_engine_table_share_proxy *share)
Definition: pfs_example_employee_name.cc:392
Ename_Record ename_records_array[EMPLOYEEE_NAME_MAX_ROWS]
An array to keep rows of the tables.
Definition: pfs_example_employee_name.cc:36
void ename_reset_position(PSI_table_handle *handle)
Definition: pfs_example_employee_name.cc:215
int ename_write_column_value(PSI_table_handle *handle, PSI_field *field, unsigned int index)
Definition: pfs_example_employee_name.cc:290
int ename_index_next(PSI_table_handle *handle)
Definition: pfs_example_employee_name.cc:183
int ename_delete_row_values(PSI_table_handle *handle)
Definition: pfs_example_employee_name.cc:365
int ename_rnd_pos(PSI_table_handle *handle)
Definition: pfs_example_employee_name.cc:116
int ename_index_init(PSI_table_handle *handle, uint idx, bool sorted, PSI_index_handle **index)
Definition: pfs_example_employee_name.cc:129
#define EMPLOYEE_NAME_LEN
Definition: pfs_example_employee_name.h:38
int ename_index_read(PSI_index_handle *index, PSI_key_reader *reader, unsigned int idx, int find_flag)
Definition: pfs_example_employee_name.cc:161
int ename_rnd_next(PSI_table_handle *handle)
Definition: pfs_example_employee_name.cc:93
mysql_mutex_t LOCK_ename_records_array
Definition: pfs_example_employee_name.cc:28
struct PSI_table_handle PSI_table_handle
This is an opaque structure to denote table handle in plugin/component code.
Definition: pfs_plugin_table_service.h:96
struct PSI_pos PSI_pos
This is an opaque structure to denote cursor position in plugin/component code.
Definition: pfs_plugin_table_service.h:101
#define PSI_int
Definition: pfs_plugin_table_service.h:147
struct PSI_key_reader PSI_key_reader
This is an opaque structure to denote Key Reader in plugin/component code.
Definition: pfs_plugin_table_service.h:105
struct PSI_index_handle PSI_index_handle
This is an opaque structure to denote Index Handle in plugin/component code.
Definition: pfs_plugin_table_service.h:109
struct PSI_field PSI_field
This is an opaque structure to denote filed in plugin/component code.
Definition: pfs_plugin_table_service.h:92
#define SERVICE_TYPE(name)
Generates the standard Service type name.
Definition: service.h:75
Specifies macros to define Service Implementations.
Definition: pfs_example_employee_name.h:51
char l_name[EMPLOYEE_NAME_LEN]
Definition: pfs_example_employee_name.h:56
unsigned int l_name_length
Definition: pfs_example_employee_name.h:57
bool m_exist
Definition: pfs_example_employee_name.h:60
PSI_int e_number
Definition: pfs_example_employee_name.h:53
char f_name[EMPLOYEE_NAME_LEN]
Definition: pfs_example_employee_name.h:54
unsigned int f_name_length
Definition: pfs_example_employee_name.h:55
Definition: pfs_example_employee_name.h:125
Ename_POS m_next_pos
Definition: pfs_example_employee_name.h:129
Ename_index_by_emp_fname m_emp_fname_index
Definition: pfs_example_employee_name.h:136
Ename_POS m_pos
Definition: pfs_example_employee_name.h:127
Ename_index_by_emp_num m_emp_num_index
Definition: pfs_example_employee_name.h:135
Ename_Record current_row
Definition: pfs_example_employee_name.h:132
unsigned int index_num
Definition: pfs_example_employee_name.h:139
A share to be initialized by plugin/component code and to be provided to add_table() service method o...
Definition: pfs_plugin_table_service.h:462
A structure to denote a key of type long in an index.
Definition: pfs_plugin_table_service.h:159
A structure to denote a key of type string in an index.
Definition: pfs_plugin_table_service.h:225
An instrumented mutex structure.
Definition: mysql_mutex_bits.h:49
bool(* match_key)(bool record_null, long record_value, PSI_plugin_key_integer *key)
Definition: pfs_plugin_table_service.h:569
bool(* match_key_string)(bool record_null, const char *record_string_value, unsigned int record_string_length, PSI_plugin_key_string *key)
Definition: pfs_plugin_table_service.h:623