137 lines
4.7 KiB
C
137 lines
4.7 KiB
C
/* Copyright (c) 2017, 2019, Oracle and/or its affiliates. All rights reserved.
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License, version 2.0,
|
|
as published by the Free Software Foundation.
|
|
|
|
This program is also distributed with certain software (including
|
|
but not limited to OpenSSL) that is licensed under separate terms,
|
|
as designated in a particular file or component or in included license
|
|
documentation. The authors of MySQL hereby grant you an additional
|
|
permission to link the program and your derivative works with the
|
|
separately licensed software that they have included with MySQL.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License, version 2.0, for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
|
|
|
|
#ifndef PFS_DD_VERSION_H
|
|
#define PFS_DD_VERSION_H
|
|
|
|
/**
|
|
@file storage/perfschema/pfs_dd_version.h
|
|
Performance schema data dictionary version.
|
|
*/
|
|
|
|
/**
|
|
The version of the current performance_schema database schema.
|
|
Version numbering forms a name space,
|
|
which needs to be unique across all MySQL versions,
|
|
even including forks.
|
|
|
|
This version number is stored on disk in the data dictionary.
|
|
Every time the performance_schema structure changes,
|
|
this version number must change.
|
|
|
|
Do not use a naive 1, 2, 3, ... N numbering scheme,
|
|
as it requires an authoritative registry to assign numbers.
|
|
This can not work in a distributed development environment,
|
|
even less with forks, patches and back ports done by third parties.
|
|
|
|
The numbering to use is the MySQL version number
|
|
of the first MySQL version that published a given database schema.
|
|
The format is Mmmdd with M=Major, m=minor, d=dot,
|
|
so that MySQL 8.0.4 is encoded as 80004.
|
|
|
|
In case of -dash version numbers, encode MySQL 8.12.34-56 as 8123456.
|
|
|
|
Historical version number published in the data dictionary:
|
|
|
|
1:
|
|
|
|
Introduced in MySQL 8.0.3 by WL#7900.
|
|
Never published in a GA version, abandoned.
|
|
|
|
80004:
|
|
|
|
performance_schema tables changed in MySQL 8.0.4 are
|
|
- setup_threads (created)
|
|
- setup_instruments (modified)
|
|
- variables_info (modified)
|
|
- setup_timers (removed)
|
|
- metadata_locks (modified, added column COLUMN_NAME)
|
|
- replication_connection_configuration (modified)
|
|
- instance_log_resource (created)
|
|
|
|
80005:
|
|
|
|
performance_schema tables changed in MySQL 8.0.5 are
|
|
- all, changed UTF8 (aka UTF8MB3) to UTF8MB4.
|
|
|
|
80006:
|
|
|
|
performance_schema tables changed in MySQL 8.0.6 are
|
|
- variables_info.set_time precision changed from 0 to 6.
|
|
|
|
80011:
|
|
|
|
Version bump from 8.0.6 to 8.0.11,
|
|
versions [8.0.5 - 8.0.10] inclusive are abandoned.
|
|
performance_schema tables changed in MySQL 8.0.11 are
|
|
- instance_log_resource was renamed to log_resource.
|
|
|
|
80014:
|
|
|
|
performance_schema tables changed in MySQL 8.0.14 are
|
|
- events_statements_current, added column QUERY_ID
|
|
- events_statements_history, added column QUERY_ID
|
|
- events_statements_history_long, added column QUERY_ID
|
|
|
|
80015:
|
|
|
|
performance_schema.keyring_keys
|
|
|
|
80017: -- WARNING, EXPOSED BY MySQL 8.0.16 --
|
|
|
|
Unfortunately, MySQL 8.0.16 claim the 80017 tag, due to a bad merge.
|
|
performance_schema tables changed in MySQL 8.0.16
|
|
- replication_connection_configuration, added column NETWORK_NAMESPACE
|
|
|
|
800171: -- WARNING, EXPOSED BY MySQL 8.0.17 --
|
|
---------------------------------------------------------------------
|
|
IMPORTANT NOTE:
|
|
The release 8.0.16 made use of version 80017 incorrectly, which makes
|
|
the upgrade from 8.0.16 to 8.0.17 release immutable. This was
|
|
introduced by WL#12720.
|
|
|
|
In order to allow upgrade from 8.0.16 to 8.0.17, we choose the new
|
|
version number as 800171 for 8.0.17 release. Going forward the
|
|
release 8.0.18 would use 80018.
|
|
|
|
Note that, any comparison between two PFS version numbers should be
|
|
carefully done.
|
|
---------------------------------------------------------------------
|
|
|
|
performance_schema tables changed in MySQL 8.0.17
|
|
- WL#12571 increases the HOST name length from 60 to 255.
|
|
|
|
Version published is now 800171. The next number to use is 80018.
|
|
|
|
80018:
|
|
|
|
performance_schema tables changed in MySQL 8.0.18
|
|
- replication_connection_configuration, added column
|
|
MASTER_COMPRESSION_ALGORITHMS, MASTER_COMPRESSION_LEVEL
|
|
|
|
Version published is now 800172.
|
|
*/
|
|
|
|
static const uint PFS_DD_VERSION = 80018;
|
|
|
|
#endif /* PFS_DD_VERSION_H */
|