MySQL 9.1.0
Source Code Documentation
plugin_constants.h
Go to the documentation of this file.
1/* Copyright (c) 2016, 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 PLUGIN_CONSTANTS_INCLUDE
25#define PLUGIN_CONSTANTS_INCLUDE
26
27/*
28 Plugin user to access the server
29*/
30#define GROUPREPL_USER "mysql.session"
31#define GROUPREPL_HOST "localhost"
32#define GROUPREPL_ACCOUNT GROUPREPL_USER "@" GROUPREPL_HOST
33
34/*
35 Plugin errors
36*/
37#define GROUP_REPLICATION_CONFIGURATION_ERROR 1
38#define GROUP_REPLICATION_ALREADY_RUNNING 2
39#define GROUP_REPLICATION_REPLICATION_APPLIER_INIT_ERROR 3
40#define GROUP_REPLICATION_COMMUNICATION_LAYER_SESSION_ERROR 4
41#define GROUP_REPLICATION_COMMUNICATION_LAYER_JOIN_ERROR 5
42#define GROUP_REPLICATION_APPLIER_STOP_TIMEOUT 6
43#define GROUP_REPLICATION_MAX_GROUP_SIZE 7
44#define GROUP_REPLICATION_COMMAND_FAILURE 8
45#define GROUP_REPLICATION_SERVICE_MESSAGE_INIT_FAILURE 9
46#define GROUP_REPLICATION_RECOVERY_CHANNEL_STILL_RUNNING 10
47#define GROUP_REPLICATION_STOP_WITH_RECOVERY_TIMEOUT 11
48
49/* View timeout (seconds) */
50#define VIEW_MODIFICATION_TIMEOUT 60
51
52/* View timeout for Force Members (seconds) */
53#define FORCE_MEMBERS_VIEW_MODIFICATION_TIMEOUT 120
54
55/*
56 Transaction wait timeout before kill (seconds)
57 This value comes from innodb_lock_wait_timeout that can make some of the
58 transactions fail for their own
59*/
60#define TRANSACTION_KILL_TIMEOUT 50
61
62/*
63 Default name of debug and trace file that will be created
64 by GCS.
65*/
66#define GCS_DEBUG_TRACE_FILE "GCS_DEBUG_TRACE"
67
68/*
69 Version from which group_replication_consistency system variable
70 is supported.
71*/
72#define TRANSACTION_WITH_GUARANTEES_VERSION 0x080014
73
74/*
75 Version from which group replication and the server support cloning
76*/
77#define CLONE_GR_SUPPORT_VERSION 0x080400
78
79/*
80 Version from which group replication support timeout argument in UDF
81 group_replication_set_as_primary
82*/
83#define MEMBER_VERSION_INTRODUCING_RUNNING_TRANSACTION_TIMEOUT 0x080029
84
85/*
86 Version from which VCLE was removed.
87*/
88#define MEMBER_VERSION_REMOVING_VCLE 0x080300
89
90/*
91 Starting on 8.4.0, inclusive, all 8.4 patch versions are compatible.
92*/
93#define MEMBER_8_4_LTS_VERSION 0x080400
94
95/*
96 Preemptive garbage collection configuration default values.
97*/
98static constexpr bool PREEMPTIVE_GARBAGE_COLLECTION_DEFAULT{false};
99
100static constexpr unsigned int
103 10000};
105 100000000};
106
107#endif /* PLUGIN_CONSTANTS_INCLUDE */
static constexpr unsigned int PREEMPTIVE_GARBAGE_COLLECTION_ROWS_THRESHOLD_MIN
Definition: plugin_constants.h:102
static constexpr bool PREEMPTIVE_GARBAGE_COLLECTION_DEFAULT
Definition: plugin_constants.h:98
static constexpr unsigned int PREEMPTIVE_GARBAGE_COLLECTION_ROWS_THRESHOLD_MAX
Definition: plugin_constants.h:104
static constexpr unsigned int PREEMPTIVE_GARBAGE_COLLECTION_ROWS_THRESHOLD_DEFAULT
Definition: plugin_constants.h:101