summaryrefslogtreecommitdiff
path: root/sql/log_event.h
diff options
context:
space:
mode:
authorunknown <mats@kindahl-laptop.dnsalias.net>2007-10-24 16:54:18 +0200
committerunknown <mats@kindahl-laptop.dnsalias.net>2007-10-24 16:54:18 +0200
commit06e82cb855d12ca4be16d6a191d0a0a1ed49138e (patch)
tree9bd7245f36805ef4cc3c9c12dfa402d92bff3f76 /sql/log_event.h
parent4a08f392145264021ad20908157072fbdc653908 (diff)
parentdcd1d492ba4b5c2e543bc1a4b3c2c10281cc7f99 (diff)
downloadmariadb-git-06e82cb855d12ca4be16d6a191d0a0a1ed49138e.tar.gz
Merge kindahl-laptop.dnsalias.net:/home/bkroot/mysql-5.1-rpl
into kindahl-laptop.dnsalias.net:/home/bk/b24860-mysql-5.1-rpl sql/log_event.cc: Auto merged sql/log_event.h: Auto merged sql/slave.cc: Auto merged
Diffstat (limited to 'sql/log_event.h')
-rw-r--r--sql/log_event.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/sql/log_event.h b/sql/log_event.h
index 226ebc02712..f1f90aee69f 100644
--- a/sql/log_event.h
+++ b/sql/log_event.h
@@ -888,6 +888,25 @@ public:
protected:
/**
+ Helper function to ignore an event w.r.t. the slave skip counter.
+
+ This function can be used inside do_shall_skip() for functions
+ that cannot end a group. If the slave skip counter is 1 when
+ seeing such an event, the event shall be ignored, the counter
+ left intact, and processing continue with the next event.
+
+ A typical usage is:
+ @code
+ enum_skip_reason do_shall_skip(Relay_log_info *rli) {
+ return continue_group(rli);
+ }
+ @endcode
+
+ @return Skip reason
+ */
+ enum_skip_reason continue_group(Relay_log_info *rli);
+
+ /**
Primitive to apply an event to the database.
This is where the change to the database is made.
@@ -1103,6 +1122,7 @@ public:
public: /* !!! Public in this patch to allow old usage */
#if !defined(MYSQL_CLIENT) && defined(HAVE_REPLICATION)
+ virtual enum_skip_reason do_shall_skip(Relay_log_info *rli);
virtual int do_apply_event(Relay_log_info const *rli);
virtual int do_update_pos(Relay_log_info *rli);
@@ -1576,6 +1596,7 @@ class Xid_log_event: public Log_event
private:
#if !defined(MYSQL_CLIENT) && defined(HAVE_REPLICATION)
virtual int do_apply_event(Relay_log_info const *rli);
+ enum_skip_reason do_shall_skip(Relay_log_info *rli);
#endif
};
@@ -1954,6 +1975,10 @@ public:
*description_event);
~Begin_load_query_log_event() {}
Log_event_type get_type_code() { return BEGIN_LOAD_QUERY_EVENT; }
+private:
+#if !defined(MYSQL_CLIENT) && defined(HAVE_REPLICATION)
+ virtual enum_skip_reason do_shall_skip(Relay_log_info *rli);
+#endif
};