24#ifndef TABLE_UVAR_BY_THREAD_H
25#define TABLE_UVAR_BY_THREAD_H
84 assert(
pfs !=
nullptr);
172 int rnd_pos(
const void *pos)
override;
174 int index_init(uint idx,
bool sorted)
override;
179 bool read_all)
override;
Kerberos Client Authentication nullptr
Definition: auth_kerberos_client_plugin.cc:251
Definition: pfs_engine_table.h:301
An abstract PERFORMANCE_SCHEMA table.
Definition: pfs_engine_table.h:70
Definition: table_uvar_by_thread.h:142
PFS_key_thread_id m_key_1
Definition: table_uvar_by_thread.h:155
PFS_key_variable_name m_key_2
Definition: table_uvar_by_thread.h:156
~PFS_index_uvar_by_thread() override=default
PFS_index_uvar_by_thread()
Definition: table_uvar_by_thread.h:144
virtual bool match(PFS_thread *pfs)
Definition: table_uvar_by_thread.cc:152
Definition: table_helper.h:1279
Definition: table_helper.h:1592
Class to hold information regarding a table to be created on behalf of a plugin.
Definition: plugin_table.h:40
void clear()
Removes (and destroys) all elements.
Definition: prealloced_array.h:610
Element_type & at(size_t n)
Definition: prealloced_array.h:231
size_t size() const
Definition: prealloced_array.h:227
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:36
Definition: table_uvar_by_thread.h:68
void reset()
Definition: table_uvar_by_thread.h:75
PFS_thread * m_pfs
Definition: table_uvar_by_thread.h:104
User_variables()
Definition: table_uvar_by_thread.h:72
bool is_materialized(PFS_thread *pfs)
Definition: table_uvar_by_thread.h:83
User_variable_array m_array
Definition: table_uvar_by_thread.h:106
void materialize(PFS_thread *pfs, THD *thd)
Definition: table_uvar_by_thread.cc:67
Prealloced_array< User_variable, 100 > User_variable_array
Definition: table_uvar_by_thread.h:69
ulonglong m_thread_internal_id
Definition: table_uvar_by_thread.h:105
const User_variable * get(uint index) const
Definition: table_uvar_by_thread.h:94
Table PERFORMANCE_SCHEMA.USER_VARIABLES_BY_THREAD.
Definition: table_uvar_by_thread.h:160
int rnd_pos(const void *pos) override
Fetch a row by position.
Definition: table_uvar_by_thread.cc:218
int index_init(uint idx, bool sorted) override
Definition: table_uvar_by_thread.cc:236
static THR_LOCK m_table_lock
Table share lock.
Definition: table_uvar_by_thread.h:192
pos_uvar_by_thread pos_t
Definition: table_uvar_by_thread.h:161
int rnd_next() override
Fetch the next row in this cursor.
Definition: table_uvar_by_thread.cc:195
int make_row(PFS_thread *thread, const User_variable *uvar)
Definition: table_uvar_by_thread.cc:298
int read_row_values(TABLE *table, unsigned char *buf, Field **fields, bool read_all) override
Read the current row values.
Definition: table_uvar_by_thread.cc:318
User_variables m_THD_cache
Current THD user variables.
Definition: table_uvar_by_thread.h:197
static PFS_engine_table_share m_share
Table share.
Definition: table_uvar_by_thread.h:165
int index_next() override
Find key in index, read record.
Definition: table_uvar_by_thread.cc:244
static Plugin_table m_table_def
Table definition.
Definition: table_uvar_by_thread.h:194
~table_uvar_by_thread() override
Definition: table_uvar_by_thread.h:184
int materialize(PFS_thread *thread)
Definition: table_uvar_by_thread.cc:274
pos_t m_pos
Current position.
Definition: table_uvar_by_thread.h:201
row_uvar_by_thread m_row
Current row.
Definition: table_uvar_by_thread.h:199
static ha_rows get_row_count()
Definition: table_uvar_by_thread.cc:174
void reset_position() override
Reset the cursor position to the beginning of the table.
Definition: table_uvar_by_thread.cc:190
PFS_index_uvar_by_thread * m_opened_index
Definition: table_uvar_by_thread.h:205
table_uvar_by_thread()
Definition: table_uvar_by_thread.cc:187
static PFS_engine_table * create(PFS_engine_table_share *)
Definition: table_uvar_by_thread.cc:170
pos_t m_next_pos
Next position.
Definition: table_uvar_by_thread.h:203
const char * p
Definition: ctype-mb.cc:1225
static constexpr unsigned PSI_INSTRUMENT_ME
Definition: psi_bits.h:43
This file includes constants used by all storage engines.
my_off_t ha_rows
Definition: my_base.h:1141
Some integer typedefs for easier portability.
unsigned long long int ulonglong
Definition: my_inttypes.h:56
static PFS_engine_table_share_proxy table
Definition: pfs.cc:61
Definition: buf0block_hint.cc:30
Performance schema tables (declarations).
Performance schema instruments (declarations).
Performance schema instrumentation interface.
static const LEX_CSTRING pfs
Definition: sql_show_processlist.cc:66
Position of a double cursor, for iterations using 2 nested loops.
Definition: pfs_engine_table.h:602
uint m_index_1
Outer index.
Definition: pfs_engine_table.h:604
uint m_index_2
Current index within index_1.
Definition: pfs_engine_table.h:606
A PERFORMANCE_SCHEMA table share.
Definition: pfs_engine_table.h:359
Instrumented thread implementation.
Definition: pfs_instr.h:375
Definition: table_helper.h:1150
Definition: table_helper.h:1115
Definition: thr_lock.h:139
Definition: table_uvar_by_thread.h:56
User_variable(const User_variable &uv)=default
PFS_user_variable_value_row m_value
Definition: table_uvar_by_thread.h:65
PFS_variable_name_row m_name
Definition: table_uvar_by_thread.h:64
Position of a cursor on PERFORMANCE_SCHEMA.USER_VARIABLES_BY_THREAD.
Definition: table_uvar_by_thread.h:128
void reset()
Definition: table_uvar_by_thread.h:131
void next_thread()
Definition: table_uvar_by_thread.h:136
pos_uvar_by_thread()
Definition: table_uvar_by_thread.h:129
A row of table PERFORMANCE_SCHEMA.USER_VARIABLES_BY_THREAD.
Definition: table_uvar_by_thread.h:113
ulonglong m_thread_internal_id
Column THREAD_ID.
Definition: table_uvar_by_thread.h:115
const PFS_variable_name_row * m_variable_name
Column VARIABLE_NAME.
Definition: table_uvar_by_thread.h:117
const PFS_user_variable_value_row * m_variable_value
Column VARIABLE_VALUE.
Definition: table_uvar_by_thread.h:119
Helpers to implement a performance schema table.