MySQL 9.0.0
Source Code Documentation
pfs_dd_version.h
Go to the documentation of this file.
1/* Copyright (c) 2017, 2024, 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_DD_VERSION_H
25#define PFS_DD_VERSION_H
26
27/**
28 @file storage/perfschema/pfs_dd_version.h
29 Performance schema data dictionary version.
30*/
31
32/**
33 The version of the current performance_schema database schema.
34 Version numbering forms a name space,
35 which needs to be unique across all MySQL versions,
36 even including forks.
37
38 This version number is stored on disk in the data dictionary.
39 Every time the performance_schema structure changes,
40 this version number must change.
41
42 Do not use a naive 1, 2, 3, ... N numbering scheme,
43 as it requires an authoritative registry to assign numbers.
44 This can not work in a distributed development environment,
45 even less with forks, patches and back ports done by third parties.
46
47 The numbering to use is the MySQL version number
48 of the first MySQL version that published a given database schema.
49 The format is Mmmdd with M=Major, m=minor, d=dot,
50 so that MySQL 8.0.4 is encoded as 80004.
51
52 In case of -dash version numbers, encode MySQL 8.12.34-56 as 8123456.
53
54 Historical version number published in the data dictionary:
55
56 1:
57
58 Introduced in MySQL 8.0.3 by WL#7900.
59 Never published in a GA version, abandoned.
60
61 80004:
62
63 performance_schema tables changed in MySQL 8.0.4 are
64 - setup_threads (created)
65 - setup_instruments (modified)
66 - variables_info (modified)
67 - setup_timers (removed)
68 - metadata_locks (modified, added column COLUMN_NAME)
69 - replication_connection_configuration (modified)
70 - instance_log_resource (created)
71
72 80005:
73
74 performance_schema tables changed in MySQL 8.0.5 are
75 - all, changed UTF8 (aka UTF8MB3) to UTF8MB4.
76
77 80006:
78
79 performance_schema tables changed in MySQL 8.0.6 are
80 - variables_info.set_time precision changed from 0 to 6.
81
82 80011:
83
84 Version bump from 8.0.6 to 8.0.11,
85 versions [8.0.5 - 8.0.10] inclusive are abandoned.
86 performance_schema tables changed in MySQL 8.0.11 are
87 - instance_log_resource was renamed to log_resource.
88
89 80014:
90
91 performance_schema tables changed in MySQL 8.0.14 are
92 - events_statements_current, added column QUERY_ID
93 - events_statements_history, added column QUERY_ID
94 - events_statements_history_long, added column QUERY_ID
95
96 80015:
97
98 performance_schema.keyring_keys
99
100 80017: -- WARNING, EXPOSED BY MySQL 8.0.16 --
101
102 Unfortunately, MySQL 8.0.16 claim the 80017 tag, due to a bad merge.
103 performance_schema tables changed in MySQL 8.0.16
104 - replication_connection_configuration, added column NETWORK_NAMESPACE
105
106 800171: -- WARNING, EXPOSED BY MySQL 8.0.17 --
107 ---------------------------------------------------------------------
108 IMPORTANT NOTE:
109 The release 8.0.16 made use of version 80017 incorrectly, which makes
110 the upgrade from 8.0.16 to 8.0.17 release immutable. This was
111 introduced by WL#12720.
112
113 In order to allow upgrade from 8.0.16 to 8.0.17, we choose the new
114 version number as 800171 for 8.0.17 release. Going forward the
115 release 8.0.18 would use 80018.
116
117 Note that, any comparison between two PFS version numbers should be
118 carefully done.
119 ---------------------------------------------------------------------
120
121 performance_schema tables changed in MySQL 8.0.17
122 - WL#12571 increases the HOST name length from 60 to 255.
123
124 80018:
125
126 performance_schema tables changed in MySQL 8.0.18
127 - replication_connection_configuration, added column
128 MASTER_COMPRESSION_ALGORITHMS, MASTER_COMPRESSION_LEVEL
129 - replication_applier_configuration, added column
130 PRIVILEGE_CHECKS_USER
131
132 80019:
133
134 performance_schema tables changed in MySQL 8.0.19
135 - replication_connection_configuration, added column
136 TLS_CIPHERSUITES
137 - replication_applier_configuration, added column
138 REQUIRE_ROW_FORMAT
139
140 80020:
141
142 performance_schema tables changed in MySQL 8.0.20
143 - WL#3549 created binary_log_transaction_compression_stats
144 - replication_applier_configuration, added column
145 REQUIRE_TABLE_PRIMARY_KEY_CHECK
146
147 80021:
148
149 performance_schema tables changed in MySQL 8.0.21
150 - tls_channel_status (created)
151 - replication_connection_configuration, added column
152 SOURCE_CONNECTION_AUTO_FAILOVER
153
154 80022:
155
156 performance_schema tables changed in MySQL 8.0.22
157 - WL#9090 created processlist
158 - WL#13681 created error_log
159
160 80023:
161
162 performance_schema tables changed in MySQL 8.0.23
163 - WL#12819 replication_applier_configuration, added column
164 ASSIGN_GTIDS_TO_ANONYMOUS_TRANSACTIONS_TYPE
165 ASSIGN_GTIDS_TO_ANONYMOUS_TRANSACTIONS_VALUE
166 - performance_schema.replication_asynchronous_connection_failover,
167 added column MANAGED_NAME
168 - added table
169 performance_schema.replication_asynchronous_connection_failover_managed
170
171 80024:
172
173 performance_schema tables changed in MySQL 8.0.24
174 - WL#13446 added performance_schema.keyring_component_status
175
176 80027:
177
178 performance_schema tables changed in MySQL 8.0.27
179 - WL#9852 added replication_group_members column
180 MEMBER_COMMUNICATION_PROTOCOL_STACK
181 - Bug#32701593:'SELECT FROM
182 PS.REPLICATION_ASYNCHRONOUS_CONNECTION_FAILOVER' DIDN'T RETURN A RE
183 - WL#7491 added the column to replication_connection_configuration
184 the column GTID_ONLY
185 - BUG#104643 Defaults in performance schema tables incompatible with sql_mode
186 fixed TIMESTAMP columns (removed default 0)
187 fixed DOUBLE columns (removed sign)
188
189 80028:
190
191 performance_schema tables changed in MySQL 8.0.28
192 - WL#14779 PERFORMANCE_SCHEMA, ADD CPU TIME TO STATEMENT METRICS
193 added CPU_TIME, SUM_CPU_TIME columns.
194 - Fixed performance_schema.processlist host column to size 261.
195
196 80029:
197
198 performance_schema tables changed in MySQL 8.0.29
199 - WL#14346 PERFORMANCE_SCHEMA, SECONDARY_ENGINE STATS
200 Added columns EXECUTION_ENGINE, COUNT_SECONDARY
201 - Bug #30624990 NO UTF8MB3 IN INFORMATION_SCHEMA.CHARACTER_SETS
202 Use 'utf8mb3' rather than 'utf8' alias for for character set names.
203
204 80030:
205
206 performance_schema tables changed in MySQL 8.0.30
207 - WL#12527 added innodb_redo_log_files table (table is created dynamically
208 and based on PFS_engine_table_share_proxy mechanism)
209 - Bug #33787300 Rename utf8_xxx collations to utf8mb3_xxx
210 This patch renames utf8_bin to utf8mb3_bin
211 This patch renames utf8_general_ci
212
213 80031:
214
215 - WL#14432 Session memory limits in performance schema
216 Modified column PROPERTIES in table setup_instruments
217 Added column FLAGS in table setup_instruments
218
219 80032:
220
221 - WL#15419: Make the replica_generate_invisible_primary_key option settable
222 per channel
223 Modified column REQUIRE_TABLE_PRIMARY_KEY_CHECK in table
224 replication_applier_configuration
225
226 80033:
227
228 - WL#15059: PERFORMANCE_SCHEMA, OTEL TRACE INTERFACE
229 New column TELEMETRY_ACTIVE added to performance_schema.threads
230
231 80200:
232
233 - WL#15199: PERFORMANCE_SCHEMA, OTEL METRICS INTERFACE
234 New tables setup_meters, setup_metrics added to performance_schema
235
236 80300:
237
238 - WL#15294: Extending GTID with tags to identify group of transactions
239 Modified performance schema tables:
240 - replication_connection_status:
241 - LAST_QUEUED_TRANSACTION 57->90 bytes
242 - QUEUEING_TRANSACTION 57->90 bytes
243 - replication_applier_status_by_coordinator:
244 - LAST_PROCESSED_TRANSACTION 57->90 bytes
245 - PROCESSING_TRANSACTION 57->90 bytes
246 - replication_applier_status_by_worker
247 - APPLYING_TRANSACTION 57->90 bytes
248 - LAST_APPLIED_TRANSACTION 57->90 bytes
249 - events_transactions_current:
250 - GTID 64->90 bytes
251 - events_transactions_history:
252 - GTID 64->90 bytes
253 - events_transactions_history_long:
254 - GTID 64->90 bytes
255
256 90000:
257
258 - WL#15855: System variable metadata
259 New tables variable_metadata, global_variable_attributes added to
260 performance_schema
261
262*/
263
264static const uint PFS_DD_VERSION = 90000;
265
266#endif /* PFS_DD_VERSION_H */
static const uint PFS_DD_VERSION
The version of the current performance_schema database schema.
Definition: pfs_dd_version.h:264