24#ifndef TABLE_SYNC_INSTANCE_H
25#define TABLE_SYNC_INSTANCE_H
127 int rnd_pos(
const void *pos)
override;
129 int index_init(uint idx,
bool sorted)
override;
134 bool read_all)
override;
216 m_key(
"WRITE_LOCKED_BY_THREAD_ID") {}
237 int rnd_pos(
const void *pos)
override;
239 int index_init(uint idx,
bool sorted)
override;
244 bool read_all)
override;
325 int rnd_pos(
const void *pos)
override;
327 int index_init(uint idx,
bool sorted)
override;
332 bool read_all)
override;
Definition: pfs_engine_table.h:301
Definition: pfs_engine_table.h:268
An abstract PERFORMANCE_SCHEMA table.
Definition: pfs_engine_table.h:70
Definition: table_sync_instances.h:288
PFS_key_object_instance m_key
Definition: table_sync_instances.h:298
PFS_index_cond_instances_by_instance()
Definition: table_sync_instances.h:290
~PFS_index_cond_instances_by_instance() override=default
bool match(PFS_cond *pfs) override
Definition: table_sync_instances.cc:516
Definition: table_sync_instances.h:301
PFS_index_cond_instances_by_name()
Definition: table_sync_instances.h:303
~PFS_index_cond_instances_by_name() override=default
bool match(PFS_cond *pfs) override
Definition: table_sync_instances.cc:525
PFS_key_event_name m_key
Definition: table_sync_instances.h:311
Definition: table_sync_instances.h:278
PFS_index_cond_instances(PFS_engine_key *key_1)
Definition: table_sync_instances.h:280
~PFS_index_cond_instances() override=default
virtual bool match(PFS_cond *pfs)=0
Definition: table_sync_instances.h:76
PFS_key_object_instance m_key
Definition: table_sync_instances.h:86
~PFS_index_mutex_instances_by_instance() override=default
PFS_index_mutex_instances_by_instance()
Definition: table_sync_instances.h:78
bool match(PFS_mutex *pfs) override
Definition: table_sync_instances.cc:81
Definition: table_sync_instances.h:89
PFS_key_event_name m_key
Definition: table_sync_instances.h:99
PFS_index_mutex_instances_by_name()
Definition: table_sync_instances.h:91
bool match(PFS_mutex *pfs) override
Definition: table_sync_instances.cc:90
~PFS_index_mutex_instances_by_name() override=default
Definition: table_sync_instances.h:103
~PFS_index_mutex_instances_by_thread_id() override=default
PFS_index_mutex_instances_by_thread_id()
Definition: table_sync_instances.h:105
bool match(PFS_mutex *pfs) override
Definition: table_sync_instances.cc:99
PFS_key_thread_id m_key
Definition: table_sync_instances.h:113
Definition: table_sync_instances.h:66
virtual bool match(PFS_mutex *pfs)=0
~PFS_index_mutex_instances() override=default
PFS_index_mutex_instances(PFS_engine_key *key_1)
Definition: table_sync_instances.h:68
Definition: table_sync_instances.h:185
PFS_key_object_instance m_key
Definition: table_sync_instances.h:195
~PFS_index_rwlock_instances_by_instance() override=default
PFS_index_rwlock_instances_by_instance()
Definition: table_sync_instances.h:187
bool match(PFS_rwlock *pfs) override
Definition: table_sync_instances.cc:297
Definition: table_sync_instances.h:198
bool match(PFS_rwlock *pfs) override
Definition: table_sync_instances.cc:306
PFS_key_event_name m_key
Definition: table_sync_instances.h:208
PFS_index_rwlock_instances_by_name()
Definition: table_sync_instances.h:200
~PFS_index_rwlock_instances_by_name() override=default
Definition: table_sync_instances.h:212
bool match(PFS_rwlock *pfs) override
Definition: table_sync_instances.cc:315
~PFS_index_rwlock_instances_by_thread_id() override=default
PFS_key_thread_id m_key
Definition: table_sync_instances.h:223
PFS_index_rwlock_instances_by_thread_id()
Definition: table_sync_instances.h:214
Definition: table_sync_instances.h:174
PFS_index_rwlock_instances(PFS_engine_key *key_1)
Definition: table_sync_instances.h:176
virtual bool match(PFS_rwlock *pfs)=0
~PFS_index_rwlock_instances() override=default
Definition: table_helper.h:1474
Definition: table_helper.h:1734
Definition: table_helper.h:1279
Class to hold information regarding a table to be created on behalf of a plugin.
Definition: plugin_table.h:40
Table PERFORMANCE_SCHEMA.COND_INSTANCES.
Definition: table_sync_instances.h:315
int rnd_next() override
Fetch the next row in this cursor.
Definition: table_sync_instances.cc:553
static ha_rows get_row_count()
Definition: table_sync_instances.cc:538
int index_init(uint idx, bool sorted) override
Definition: table_sync_instances.cc:580
static THR_LOCK m_table_lock
Table share lock.
Definition: table_sync_instances.h:342
int read_row_values(TABLE *table, unsigned char *buf, Field **fields, bool read_all) override
Read the current row values.
Definition: table_sync_instances.cc:644
row_cond_instances m_row
Current row.
Definition: table_sync_instances.h:347
~table_cond_instances() override=default
int rnd_pos(const void *pos) override
Fetch a row by position.
Definition: table_sync_instances.cc:567
static PFS_engine_table_share m_share
Table share.
Definition: table_sync_instances.h:318
static PFS_engine_table * create(PFS_engine_table_share *)
Definition: table_sync_instances.cc:534
int index_next() override
Find key in index, read record.
Definition: table_sync_instances.cc:599
PFS_index_cond_instances * m_opened_index
Definition: table_sync_instances.h:353
table_cond_instances()
Definition: table_sync_instances.cc:542
void reset_position() override
Reset the cursor position to the beginning of the table.
Definition: table_sync_instances.cc:548
static Plugin_table m_table_def
Table definition.
Definition: table_sync_instances.h:344
PFS_simple_index m_pos
Current position.
Definition: table_sync_instances.h:349
PFS_simple_index m_next_pos
Next position.
Definition: table_sync_instances.h:351
int make_row(PFS_cond *pfs)
Definition: table_sync_instances.cc:621
Table PERFORMANCE_SCHEMA.MUTEX_INSTANCES.
Definition: table_sync_instances.h:117
int rnd_next() override
Fetch the next row in this cursor.
Definition: table_sync_instances.cc:127
int read_row_values(TABLE *table, unsigned char *buf, Field **fields, bool read_all) override
Read the current row values.
Definition: table_sync_instances.cc:229
row_mutex_instances m_row
Current row.
Definition: table_sync_instances.h:149
void reset_position() override
Reset the cursor position to the beginning of the table.
Definition: table_sync_instances.cc:122
table_mutex_instances()
Definition: table_sync_instances.cc:116
PFS_simple_index m_next_pos
Next position.
Definition: table_sync_instances.h:153
PFS_index_mutex_instances * m_opened_index
Definition: table_sync_instances.h:155
static PFS_engine_table * create(PFS_engine_table_share *)
Definition: table_sync_instances.cc:108
static Plugin_table m_table_def
Table definition.
Definition: table_sync_instances.h:146
~table_mutex_instances() override=default
static PFS_engine_table_share m_share
Table share.
Definition: table_sync_instances.h:120
PFS_simple_index m_pos
Current position.
Definition: table_sync_instances.h:151
int make_row(PFS_mutex *pfs)
Definition: table_sync_instances.cc:197
int rnd_pos(const void *pos) override
Fetch a row by position.
Definition: table_sync_instances.cc:141
int index_next() override
Find key in index, read record.
Definition: table_sync_instances.cc:176
static THR_LOCK m_table_lock
Table share lock.
Definition: table_sync_instances.h:144
int index_init(uint idx, bool sorted) override
Definition: table_sync_instances.cc:154
static ha_rows get_row_count()
Definition: table_sync_instances.cc:112
Table PERFORMANCE_SCHEMA.RWLOCK_INSTANCES.
Definition: table_sync_instances.h:227
int make_row(PFS_rwlock *pfs)
Definition: table_sync_instances.cc:414
PFS_index_rwlock_instances * m_opened_index
Definition: table_sync_instances.h:265
static PFS_engine_table_share m_share
Table share.
Definition: table_sync_instances.h:230
int read_row_values(TABLE *table, unsigned char *buf, Field **fields, bool read_all) override
Read the current row values.
Definition: table_sync_instances.cc:448
static PFS_engine_table * create(PFS_engine_table_share *)
Definition: table_sync_instances.cc:324
PFS_simple_index m_next_pos
Next position.
Definition: table_sync_instances.h:263
~table_rwlock_instances() override=default
PFS_simple_index m_pos
Current position.
Definition: table_sync_instances.h:261
int rnd_next() override
Fetch the next row in this cursor.
Definition: table_sync_instances.cc:343
int index_init(uint idx, bool sorted) override
Definition: table_sync_instances.cc:370
static THR_LOCK m_table_lock
Table share lock.
Definition: table_sync_instances.h:254
row_rwlock_instances m_row
Current row.
Definition: table_sync_instances.h:259
static Plugin_table m_table_def
Table definition.
Definition: table_sync_instances.h:256
int index_next() override
Find key in index, read record.
Definition: table_sync_instances.cc:392
int rnd_pos(const void *pos) override
Fetch a row by position.
Definition: table_sync_instances.cc:357
static ha_rows get_row_count()
Definition: table_sync_instances.cc:328
table_rwlock_instances()
Definition: table_sync_instances.cc:332
void reset_position() override
Reset the cursor position to the beginning of the table.
Definition: table_sync_instances.cc:338
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).
static const LEX_CSTRING pfs
Definition: sql_show_processlist.cc:66
Instrumented condition implementation.
Definition: pfs_instr.h:162
A PERFORMANCE_SCHEMA table share.
Definition: pfs_engine_table.h:359
Instrumented mutex implementation.
Definition: pfs_instr.h:103
Instrumented rwlock implementation.
Definition: pfs_instr.h:129
Position of a cursor, for simple iterations.
Definition: pfs_engine_table.h:567
Definition: thr_lock.h:139
A row of table PERFORMANCE_SCHEMA.COND_INSTANCES.
Definition: table_sync_instances.h:269
uint m_name_length
Length in bytes of m_name.
Definition: table_sync_instances.h:273
const char * m_name
Column NAME.
Definition: table_sync_instances.h:271
const void * m_identity
Column OBJECT_INSTANCE_BEGIN.
Definition: table_sync_instances.h:275
A row of table PERFORMANCE_SCHEMA.MUTEX_INSTANCES.
Definition: table_sync_instances.h:53
const char * m_name
Column NAME.
Definition: table_sync_instances.h:55
ulonglong m_locked_by_thread_id
Column LOCKED_BY_THREAD_ID.
Definition: table_sync_instances.h:63
bool m_locked
True if column LOCKED_BY_THREAD_ID is not null.
Definition: table_sync_instances.h:61
uint m_name_length
Length in bytes of m_name.
Definition: table_sync_instances.h:57
const void * m_identity
Column OBJECT_INSTANCE_BEGIN.
Definition: table_sync_instances.h:59
A row of table PERFORMANCE_SCHEMA.RWLOCK_INSTANCES.
Definition: table_sync_instances.h:159
ulong m_readers
Column READ_LOCKED_BY_COUNT.
Definition: table_sync_instances.h:171
ulonglong m_write_locked_by_thread_id
Column WRITE_LOCKED_BY_THREAD_ID.
Definition: table_sync_instances.h:169
bool m_write_locked
True if column WRITE_LOCKED_BY_THREAD_ID is not null.
Definition: table_sync_instances.h:167
const void * m_identity
Column OBJECT_INSTANCE_BEGIN.
Definition: table_sync_instances.h:165
uint m_name_length
Length in bytes of m_name.
Definition: table_sync_instances.h:163
const char * m_name
Column NAME.
Definition: table_sync_instances.h:161
Helpers to implement a performance schema table.