You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
https://perconadev.atlassian.net/browse/PS-10244
'replication' section of the main configuration file extended with one more required
string 'mode' configuration parameter, which can be either 'position' or 'gtid'. At this
moment only 'position' is supported.
'replication_config' class moved from the 'easymysql' namespace to 'binsrv'.
Added 'binbsrv::storage_metadata' class that is intended to keep persistent info for
binlog storages. Currently it has only one attribute 'mode' (either 'position' or 'gtid')
that indicates in which replication mode this storage was created. This metadata is
stored in the storage folder (along with binlog index and binlog data files) under the
'metadata.json' name. In addition, for forward compatibility, this metadata file also
includes the 'version' parameter that currently is alwas set to / expected to be '1'.
'binsrv::storage' constructor extended with additional logic to read / write and
validate the content of the metadata file.
Similarly to 'util/nv_tuple_from_json.hpp' file that reads from JSON to 'util::nv_tuple',
added 'util/nv_tuple_to_json.hpp' that writes data from 'util::nv_tuple' to JSON.
Main application now prints to the log file replication mode from the configuration
file along with the one extracted from the storage metadata.
Re-factored the way how classes report their string-convertibility: now each class
interested in specializing 'util::is_string_convertable' template does this in its own header. In order to minimize dependencies, 'util::is_string_convertable' definition
extracted into separate header 'util/nv_tuple_json_support.hpp'.
We no longer use 'boost::json' as a header only library (by including
'boost/json/src.hpp'). Instead, we now use 'libboost_json.a' static library.
Updated 'set_up_binsrv_environment.inc' MTR include file - we now explicitly set
'<replication.mode>' to 'position' in the generated configuration file.
'main_config.json' sample configuration file updated with new '<replication.mode>'
parameter.
Updated 'README.md' with the '<replication.mode>' parameter description.
Copy file name to clipboardExpand all lines: README.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -217,7 +217,8 @@ The Percona Binary Log Server configuration file has the following format.
217
217
"replication": {
218
218
"server_id": 42,
219
219
"idle_time": 10,
220
-
"verify_checksum": true
220
+
"verify_checksum": true,
221
+
"mode": "position"
221
222
},
222
223
"storage": {
223
224
"backend": "s3",
@@ -271,6 +272,7 @@ Currently we use the following mapping:
271
272
-`<replication.server_id>` - specifies the server ID that the utility will be using when connecting to a remote MySQL server (similar to [--connection-server-id](https://dev.mysql.com/doc/refman/8.0/en/mysqlbinlog.html#option_mysqlbinlog_connection-server-id)`mysqlbinlog` command line option).
272
273
-`<replication.idle_time>` - the number of seconds the utility will spend in disconnected mode between reconnection attempts.
273
274
-`<replication.verify_checksum>` - a boolean value which specifies whether the utility should verify event checksums.
275
+
-`<replication.mode>` - the replication mode, can be either `position` for position-based replication or `gtid` for GTID-based replication.
274
276
275
277
#### \<storage\> section
276
278
-`<storage.backend>` - the type of the storage where the received binary logs should be stored:
0 commit comments