summaryrefslogtreecommitdiff
path: root/sql/rpl_gtid.h
diff options
context:
space:
mode:
authorunknown <knielsen@knielsen-hq.org>2013-03-21 11:03:31 +0100
committerunknown <knielsen@knielsen-hq.org>2013-03-21 11:03:31 +0100
commit9bb989a9d196755fe411551f27e6198ef6819159 (patch)
treee82bd52047fe6afe3291f111b3ff926f3b5299c0 /sql/rpl_gtid.h
parent9d9ddad759a432967934baac596ef20d613214b3 (diff)
downloadmariadb-git-9bb989a9d196755fe411551f27e6198ef6819159.tar.gz
MDEV-26: Global transaction ID.
Fix MDEV-4275 - I/O thread restart duplicates events in the relay log. The first time we connect to master after CHANGE MASTER or restart, we connect from the GTID position. But then subsequent reconnects or IO thread restarts reconnect with the old-style file/offset binlog pos from where it left off at last disconnect. This is necessary to avoid duplicate events in the relay logs, as there is nothing that synchronises the SQL thread update of GTID state (multiple threads in case of multi-source) with IO thread reconnects. Test cases. Some small cleanups and fixes.
Diffstat (limited to 'sql/rpl_gtid.h')
-rw-r--r--sql/rpl_gtid.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/sql/rpl_gtid.h b/sql/rpl_gtid.h
index bdc88b5c2b5..e63d8439803 100644
--- a/sql/rpl_gtid.h
+++ b/sql/rpl_gtid.h
@@ -31,6 +31,11 @@ struct rpl_gtid
};
+enum enum_gtid_skip_type {
+ GTID_SKIP_NOT, GTID_SKIP_STANDALONE, GTID_SKIP_TRANSACTION
+};
+
+
/*
Replication slave state.