MySQL 8.0.30
Source Code Documentation

Table PERFORMANCE_SCHEMA.KEYRING_KEYS. More...

#include <table_keyring_keys.h>

Inheritance diagram for table_keyring_keys:
[legend]

Public Member Functions

void reset_position (void) override
 Reset the cursor position to the beginning of the table. More...
 
int rnd_next () override
 Fetch the next row in this cursor. More...
 
int rnd_pos (const void *pos) override
 Fetch a row by position. More...
 
- Public Member Functions inherited from PFS_engine_table
int read_row (TABLE *table, unsigned char *buf, Field **fields)
 Read a table row. More...
 
int update_row (TABLE *table, const unsigned char *old_buf, unsigned char *new_buf, Field **fields)
 Update a table row. More...
 
int delete_row (TABLE *table, const unsigned char *buf, Field **fields)
 Delete a row from this table. More...
 
virtual int rnd_init (bool scan)
 Initialize table scan. More...
 
virtual int index_init (uint idx, bool sorted)
 
virtual int index_read (KEY *key_infos, uint index, const uchar *key, uint key_len, enum ha_rkey_function find_flag)
 Positions an index cursor to the index specified in the handle. More...
 
virtual int index_read_last (KEY *key_infos, const uchar *key, uint key_len)
 
virtual int index_next ()
 Find key in index, read record. More...
 
virtual int index_next_same (const uchar *key, uint key_len)
 Reads the next row matching the given key value. More...
 
virtual int index_prev ()
 
virtual int index_first ()
 
virtual int index_last ()
 
void get_position (void *ref)
 Get the position of the current row. More...
 
void set_position (const void *ref)
 Set the table cursor at a given position. More...
 
virtual ~PFS_engine_table ()=default
 Destructor. More...
 

Static Public Member Functions

static PFS_engine_tablecreate (PFS_engine_table_share *)
 Table builder. More...
 
static ha_rows get_row_count ()
 
- Static Public Member Functions inherited from PFS_engine_table
static PFS_engine_table_sharefind_engine_table_share (const char *name)
 Find a table share by name. More...
 

Static Public Attributes

static PFS_engine_table_share s_share
 Table share. More...
 

Private Member Functions

 table_keyring_keys ()
 
int read_row_values (TABLE *table, unsigned char *buf, Field **fields, bool read_all) override
 Read the current row values. More...
 
bool copy_keys_from_keyring ()
 Copy the keys from the keyring vault. More...
 

Private Attributes

std::vector< row_keyring_keysm_copy_keyring_keys
 Safe copy of the keyring keys. More...
 
row_keyring_keysm_row
 Current row. More...
 
PFS_simple_index m_pos
 Current position. More...
 
PFS_simple_index m_next_pos
 Next position. More...
 

Static Private Attributes

static THR_LOCK s_table_lock
 Table share lock. More...
 
static Plugin_table s_table_def
 Table definition. More...
 

Additional Inherited Members

- Protected Member Functions inherited from PFS_engine_table
virtual int update_row_values (TABLE *table, const unsigned char *old_buf, unsigned char *new_buf, Field **fields)
 Update the current row values. More...
 
virtual int delete_row_values (TABLE *table, const unsigned char *buf, Field **fields)
 Delete a row. More...
 
 PFS_engine_table (const PFS_engine_table_share *share, void *pos)
 Constructor. More...
 
- Protected Attributes inherited from PFS_engine_table
const PFS_engine_table_sharem_share_ptr
 Table share. More...
 
void * m_pos_ptr
 Opaque pointer to the m_pos position of this cursor. More...
 
time_normalizerm_normalizer
 Current normalizer. More...
 
PFS_engine_index_abstractm_index
 Current index. More...
 

Detailed Description

Table PERFORMANCE_SCHEMA.KEYRING_KEYS.

Constructor & Destructor Documentation

◆ table_keyring_keys()

table_keyring_keys::table_keyring_keys ( )
private

Member Function Documentation

◆ copy_keys_from_keyring()

bool table_keyring_keys::copy_keys_from_keyring ( )
private

Copy the keys from the keyring vault.

Create a copy of the keys in the keyring, under lock, ensuring no simultaneous operation will modify the keys

Returns
status
Return values
truekeys are copied in m_copy_keyring_keys
falseerror. Either because of parsing or keyring empty.

◆ create()

PFS_engine_table * table_keyring_keys::create ( PFS_engine_table_share )
static

Table builder.

◆ get_row_count()

ha_rows table_keyring_keys::get_row_count ( void  )
static

◆ read_row_values()

int table_keyring_keys::read_row_values ( TABLE table,
unsigned char *  buf,
Field **  fields,
bool  read_all 
)
overrideprivatevirtual

Read the current row values.

Parameters
tableTable handle
bufrow buffer
fieldsTable fields
read_alltrue if all columns are read.

Implements PFS_engine_table.

◆ reset_position()

void table_keyring_keys::reset_position ( void  )
overridevirtual

Reset the cursor position to the beginning of the table.

Implements PFS_engine_table.

◆ rnd_next()

int table_keyring_keys::rnd_next ( )
overridevirtual

Fetch the next row in this cursor.

Implements PFS_engine_table.

◆ rnd_pos()

int table_keyring_keys::rnd_pos ( const void *  pos)
overridevirtual

Fetch a row by position.

Parameters
posposition to fetch

Implements PFS_engine_table.

Member Data Documentation

◆ m_copy_keyring_keys

std::vector<row_keyring_keys> table_keyring_keys::m_copy_keyring_keys
private

Safe copy of the keyring keys.

◆ m_next_pos

PFS_simple_index table_keyring_keys::m_next_pos
private

Next position.

◆ m_pos

PFS_simple_index table_keyring_keys::m_pos
private

Current position.

◆ m_row

row_keyring_keys* table_keyring_keys::m_row
private

Current row.

◆ s_share

PFS_engine_table_share table_keyring_keys::s_share
static
Initial value:
= {
nullptr,
nullptr,
sizeof(PFS_simple_index),
false,
{0},
false
}
static THR_LOCK s_table_lock
Table share lock.
Definition: table_keyring_keys.h:82
static Plugin_table s_table_def
Table definition.
Definition: table_keyring_keys.h:84
static ha_rows get_row_count()
Definition: table_keyring_keys.cc:100
static PFS_engine_table * create(PFS_engine_table_share *)
Table builder.
Definition: table_keyring_keys.cc:84
PFS_readonly_acl pfs_readonly_acl
Singleton instance of PFS_readonly_acl.
Definition: pfs_engine_table.cc:1033
struct PFS_engine_table_proxy PFS_engine_table_proxy
Definition: pfs_plugin_table_service.h:412
Position of a cursor, for simple iterations.
Definition: pfs_engine_table.h:558

Table share.

◆ s_table_def

Plugin_table table_keyring_keys::s_table_def
staticprivate

Table definition.

◆ s_table_lock

THR_LOCK table_keyring_keys::s_table_lock
staticprivate

Table share lock.


The documentation for this class was generated from the following files: