MySQL 9.7.0
Source Code Documentation
pfs.h
Go to the documentation of this file.
1/* Copyright (c) 2008, 2026, Oracle and/or its affiliates.
2
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License, version 2.0,
5 as published by the Free Software Foundation.
6
7 This program is designed to work with certain software (including
8 but not limited to OpenSSL) that is licensed under separate terms,
9 as designated in a particular file or component or in included license
10 documentation. The authors of MySQL hereby grant you an additional
11 permission to link the program and your derivative works with the
12 separately licensed software that they have either included with
13 the program or referenced in the documentation.
14
15 This program is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 GNU General Public License, version 2.0, for more details.
19
20 You should have received a copy of the GNU General Public License
21 along with this program; if not, write to the Free Software
22 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
23
24#ifndef PFS_H
25#define PFS_H
26
27/**
28 @file storage/perfschema/pfs.h
29 Performance schema instrumentation (declarations).
30*/
31
33
34#define HAVE_PSI_1
35
38
39#include "my_thread.h"
40#include "my_thread_local.h"
41
43
44struct PFS_thread;
45
46/**
47 Entry point to the performance schema implementation.
48 This singleton is used to discover the performance schema services.
49*/
69
70/** Performance schema Thread Local Storage. */
71extern thread_local PFS_thread *THR_PFS;
72
73/* Only Innodb so far */
74#define COUNT_DATA_LOCK_ENGINES 1
75
77extern unsigned int g_data_lock_inspector_count;
78
79#endif
Engine interface, row lock inspector.
Definition: psi_data_lock.h:384
Defines to make different thread packages compatible.
Performance schema instrumentation interface.
Performance schema instrumentation interface.
Specifies macros to define Service Implementations.
thread_local PFS_thread * THR_PFS
Performance schema Thread Local Storage.
Definition: pfs.cc:2242
struct PSI_data_lock_bootstrap pfs_data_lock_bootstrap
Definition: pfs.cc:10045
struct PSI_cond_bootstrap pfs_cond_bootstrap
Entry point to the performance schema implementation.
Definition: pfs.cc:10043
struct PSI_statement_bootstrap pfs_statement_bootstrap
Definition: pfs.cc:10071
struct PSI_rwlock_bootstrap pfs_rwlock_bootstrap
Definition: pfs.cc:10065
PSI_engine_data_lock_inspector * g_data_lock_inspector[]
Definition: pfs.cc:10048
struct PSI_tls_channel_bootstrap pfs_tls_channel_bootstrap
Definition: pfs.cc:10080
struct PSI_stage_bootstrap pfs_stage_bootstrap
Definition: pfs.cc:10069
struct PSI_memory_bootstrap pfs_memory_bootstrap
Definition: pfs.cc:10061
struct PSI_mdl_bootstrap pfs_mdl_bootstrap
Definition: pfs.cc:10059
struct PSI_thread_bootstrap pfs_thread_bootstrap
Definition: pfs.cc:10078
struct PSI_socket_bootstrap pfs_socket_bootstrap
Definition: pfs.cc:10067
void record_main_thread_id()
Definition: pfs.cc:2248
struct PSI_mutex_bootstrap pfs_mutex_bootstrap
Definition: pfs.cc:10063
unsigned int g_data_lock_inspector_count
Definition: pfs.cc:10051
struct PSI_table_bootstrap pfs_table_bootstrap
Definition: pfs.cc:10076
struct PSI_file_bootstrap pfs_file_bootstrap
Definition: pfs.cc:10055
struct PSI_logs_client_bootstrap pfs_logs_client_bootstrap
Definition: pfs.cc:10085
struct PSI_system_bootstrap pfs_system_bootstrap
Definition: pfs.cc:10074
struct PSI_idle_bootstrap pfs_idle_bootstrap
Definition: pfs.cc:10057
struct PSI_metric_bootstrap pfs_metric_bootstrap
Definition: pfs.cc:10083
struct PSI_error_bootstrap pfs_error_bootstrap
Definition: pfs.cc:10053
struct PSI_transaction_bootstrap pfs_transaction_bootstrap
Definition: pfs.cc:10088
Instrumented thread implementation.
Definition: pfs_instr.h:375
Entry point for the performance schema interface.
Definition: psi_cond.h:46
Entry point for the performance schema interface.
Definition: psi_data_lock.h:82
Entry point for the performance schema interface.
Definition: psi_error.h:59
Entry point for the performance schema interface.
Definition: psi_file.h:66
Entry point for the performance schema interface.
Definition: psi_idle.h:60
Entry point for the performance schema interface.
Definition: psi_logger_client.h:46
Entry point for the performance schema interface.
Definition: psi_mdl.h:76
Entry point for the performance schema interface.
Definition: psi_memory.h:85
Entry point for the performance schema interface.
Definition: psi_metric.h:46
Entry point for the performance schema interface.
Definition: psi_mutex.h:46
Entry point for the performance schema interface.
Definition: psi_rwlock.h:53
Entry point for the performance schema interface.
Definition: psi_socket.h:52
Entry point for the performance schema interface.
Definition: psi_stage.h:46
Entry point for the performance schema interface.
Definition: psi_statement.h:46
Entry point for the performance schema interface.
Definition: psi_system.h:60
Entry point for the performance schema interface.
Definition: psi_table.h:60
Entry point for the performance schema interface.
Definition: psi_thread.h:102
Entry point for the performance schema interface.
Definition: psi_tls_channel.h:46
Entry point for the performance schema interface.
Definition: psi_transaction.h:60