summaryrefslogtreecommitdiffstats
path: root/mysql-test/include/wait_for_binlog_event.inc
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/include/wait_for_binlog_event.inc')
-rw-r--r--mysql-test/include/wait_for_binlog_event.inc33
1 files changed, 33 insertions, 0 deletions
diff --git a/mysql-test/include/wait_for_binlog_event.inc b/mysql-test/include/wait_for_binlog_event.inc
new file mode 100644
index 00000000..b251ae22
--- /dev/null
+++ b/mysql-test/include/wait_for_binlog_event.inc
@@ -0,0 +1,33 @@
+# include/wait_for_binlog_event.inc
+#
+# SUMMARY
+#
+# Waits until SHOW BINLOG EVENTS has returned in last event a specified substring.
+#
+# USAGE
+#
+# let $wait_binlog_event= DROP;
+# --source include/wait_for_binlog_event.inc
+
+let $_loop_count= 300;
+let $_last_event= ;
+let $_event_pos= 1;
+
+while (`SELECT INSTR("$_last_event","$wait_binlog_event") = 0`)
+{
+ dec $_loop_count;
+ if (!$_loop_count)
+ {
+ --source include/show_rpl_debug_info.inc
+ --die ERROR: failed while waiting for $wait_binlog_event in binlog
+ }
+ real_sleep 0.1;
+ let $_event= query_get_value(SHOW BINLOG EVENTS, Info, $_event_pos);
+ let $_last_event= $_event;
+ while ($_event != "No such row")
+ {
+ inc $_event_pos;
+ let $_last_event= $_event;
+ let $_event= query_get_value(SHOW BINLOG EVENTS, Info, $_event_pos);
+ }
+}