MySQL 8.4.0
Source Code Documentation
rpl_trx_boundary_parser.h
Go to the documentation of this file.
1/* Copyright (c) 2015, 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/**
25 @addtogroup Replication
26 @{
27
28 @file
29
30 @brief Replication transaction boundary parser. This includes code for
31 an extension of the transaction boundary parser to parse a replication
32 stream of events identifying the transaction boundaries (like if the event
33 is starting a transaction, is in the middle of a transaction or if the event
34 is ending a transaction).
35*/
36
37#ifndef RPL_TRX_BOUNDARY_PARSER_H
38#define RPL_TRX_BOUNDARY_PARSER_H
39
40#include <stddef.h>
41
43
44/**
45 @class Replication_transaction_boundary_parser
46
47 This is the class for verifying transaction boundaries in a replication
48 event stream.
49*/
52 public:
53 /**
54 The constructor
55 @param context If this parser is used on a receiver or applier context
56 */
61 /**
62 Log warnings into the error log.
63
64 @param error the error number
65 @param message the error message
66 */
67 void log_server_warning(int error, const char *message) override;
68};
69
70/**
71 @} (End of group Replication)
72*/
73
74#endif /* RPL_TRX_BOUNDARY_PARSER_H */
This is the class for verifying transaction boundaries in a replication event stream.
Definition: rpl_trx_boundary_parser.h:51
Replication_transaction_boundary_parser(mysql::binlog::event::Transaction_boundary_parser::enum_trx_boundary_parser_context context)
The constructor.
Definition: rpl_trx_boundary_parser.h:57
void log_server_warning(int error, const char *message) override
Log warnings into the error log.
Definition: rpl_trx_boundary_parser.cc:31
This is the base class for verifying transaction boundaries.
Definition: trx_boundary_parser.h:50
enum_trx_boundary_parser_context
The context where the parser is used.
Definition: trx_boundary_parser.h:55
Transaction_boundary_parser(enum_trx_boundary_parser_context context)
Constructor.
Definition: trx_boundary_parser.h:66
Definition: pfs.cc:38
Definition: instrumented_condition_variable.h:32
required string event
Definition: replication_group_member_actions.proto:32
Transaction boundary parser definitions.