MySQL 8.3.0
Source Code Documentation
plugin_constants.h
Go to the documentation of this file.
1/* Copyright (c) 2016, 2023, 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 also distributed 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 included with MySQL.
13
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License, version 2.0, for more details.
18
19 You should have received a copy of the GNU General Public License
20 along with this program; if not, write to the Free Software
21 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
22
23#ifndef PLUGIN_CONSTANTS_INCLUDE
24#define PLUGIN_CONSTANTS_INCLUDE
25
26/*
27 Plugin user to access the server
28*/
29#define GROUPREPL_USER "mysql.session"
30#define GROUPREPL_HOST "localhost"
31#define GROUPREPL_ACCOUNT GROUPREPL_USER "@" GROUPREPL_HOST
32
33/*
34 Plugin errors
35*/
36#define GROUP_REPLICATION_CONFIGURATION_ERROR 1
37#define GROUP_REPLICATION_ALREADY_RUNNING 2
38#define GROUP_REPLICATION_REPLICATION_APPLIER_INIT_ERROR 3
39#define GROUP_REPLICATION_COMMUNICATION_LAYER_SESSION_ERROR 4
40#define GROUP_REPLICATION_COMMUNICATION_LAYER_JOIN_ERROR 5
41#define GROUP_REPLICATION_APPLIER_STOP_TIMEOUT 6
42#define GROUP_REPLICATION_MAX_GROUP_SIZE 7
43#define GROUP_REPLICATION_COMMAND_FAILURE 8
44#define GROUP_REPLICATION_SERVICE_MESSAGE_INIT_FAILURE 9
45#define GROUP_REPLICATION_RECOVERY_CHANNEL_STILL_RUNNING 10
46#define GROUP_REPLICATION_STOP_WITH_RECOVERY_TIMEOUT 11
47
48/* View timeout (seconds) */
49#define VIEW_MODIFICATION_TIMEOUT 60
50
51/* View timeout for Force Members (seconds) */
52#define FORCE_MEMBERS_VIEW_MODIFICATION_TIMEOUT 120
53
54/*
55 Transaction wait timeout before kill (seconds)
56 This value comes from innodb_lock_wait_timeout that can make some of the
57 transactions fail for their own
58*/
59#define TRANSACTION_KILL_TIMEOUT 50
60
61/*
62 Default name of debug and trace file that will be created
63 by GCS.
64*/
65#define GCS_DEBUG_TRACE_FILE "GCS_DEBUG_TRACE"
66
67/*
68 Version from which group_replication_consistency system variable
69 is supported.
70*/
71#define TRANSACTION_WITH_GUARANTEES_VERSION 0x080014
72
73/*
74 Version from which patch version number is also considered during member
75 join, view changes or primary member selection.
76*/
77#define PRIMARY_ELECTION_PATCH_CONSIDERATION 0x080017
78
79/*
80 Version from which group replication and the server support cloning
81*/
82#define CLONE_GR_SUPPORT_VERSION 0x080017
83
84/*
85 Version from which group replication support timeout argument in UDF
86 group_replication_set_as_primary
87*/
88#define MEMBER_VERSION_INTRODUCING_RUNNING_TRANSACTION_TIMEOUT 0x080029
89
90/*
91 Version from which VCLE was removed.
92*/
93#define MEMBER_VERSION_REMOVING_VCLE 0x080300
94
95#endif /* PLUGIN_CONSTANTS_INCLUDE */