mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 03:52:35 +01:00
c89f769f24
This commit fixes GTID inconsistency which was injected by mariabackup SST. Donor node now writes new info file: donor_galera_info, which is streamed along the mariabackup donation to the joiner node. The donor_galera_info file contains both GTID and gtid domain_id, and joiner will use these to initialize the GTID state. Commit has new mtr test case: galera_3nodes.galera_gtid_consistency, which exercises potentially harmful mariabackup SST scenarios. The test has also scenario with IST joining. Signed-off-by: Julius Goryavsky <julius.goryavsky@mariadb.com>
44 lines
1.1 KiB
C
44 lines
1.1 KiB
C
|
|
#ifndef XTRABACKUP_BACKUP_COPY_H
|
|
#define XTRABACKUP_BACKUP_COPY_H
|
|
|
|
#include <my_global.h>
|
|
#include <mysql.h>
|
|
#include "datasink.h"
|
|
|
|
/* special files */
|
|
#define XTRABACKUP_SLAVE_INFO "xtrabackup_slave_info"
|
|
#define XTRABACKUP_GALERA_INFO "xtrabackup_galera_info"
|
|
#define XTRABACKUP_DONOR_GALERA_INFO "donor_galera_info"
|
|
#define XTRABACKUP_BINLOG_INFO "xtrabackup_binlog_info"
|
|
#define XTRABACKUP_INFO "xtrabackup_info"
|
|
|
|
extern bool binlog_locked;
|
|
|
|
/************************************************************************
|
|
Return true if first and second arguments are the same path. */
|
|
bool
|
|
equal_paths(const char *first, const char *second);
|
|
|
|
/** Start --backup */
|
|
bool backup_start(ds_ctxt *ds_data, ds_ctxt *ds_meta,
|
|
CorruptedPages &corrupted_pages);
|
|
/** Release resources after backup_start() */
|
|
void backup_release();
|
|
/** Finish after backup_start() and backup_release() */
|
|
bool backup_finish(ds_ctxt *ds_data);
|
|
bool
|
|
apply_log_finish();
|
|
bool
|
|
copy_back();
|
|
bool
|
|
decrypt_decompress();
|
|
bool
|
|
is_path_separator(char);
|
|
bool
|
|
directory_exists(const char *dir, bool create);
|
|
|
|
lsn_t
|
|
get_current_lsn(MYSQL *connection);
|
|
|
|
#endif
|