diff options
author | unknown <guilhem@mysql.com> | 2004-07-26 19:42:59 +0200 |
---|---|---|
committer | unknown <guilhem@mysql.com> | 2004-07-26 19:42:59 +0200 |
commit | 9b867a2a7f4943f056b37ecc9266ef136a1118f6 (patch) | |
tree | 85dbfd1b8eb1d558ee6c61ab913f8f811f4d1d4d /sql/log_event.h | |
parent | 1876125e6d8f89460e14418ca8e2e7ffaafbdb32 (diff) | |
download | mariadb-git-9b867a2a7f4943f056b37ecc9266ef136a1118f6.tar.gz |
Replication: various small fixes specific to the new binlog format of 5.0
(including one which may explain autobuild's failure of yesterday)
client/mysqlbinlog.cc:
- In mysqlbinlog, we should not reset the Format event when we see Rotate. If a binlog started with a Format event, it is not going to switch later to 4.0 format.
I had already did the same fix in Rotate_log_event::exec_event() in replication.
- Fix for a merge bug.
sql/log_event.cc:
An event with an uninited catalog (read from a 4.x server) is not the same as an event with a NULL catalog
(5.0 server which did not specify catalog), the difference is that they are not in the same format;
so I introduce a way to know if the catalog has been inited or not. This fixes a rpl_trunc_binlog failure
I had.
When we leave Load_log_event::exec_event(), we must reset thd->catalog to 0, like we already do
in Query_log_event::exec_event(). This fixes a Valgrind error which popped in rpl_charset (which may
be what caused autobuild to crash yesterday).
And a fix for event's parsing (the position was always computed right because start_dup==end is always true
and will until we add new string members to Query_log_event.
sql/log_event.h:
catalog_len changed from uint to int to allow -1, which means "not inited"
(I preferred to do it like this rather than create a new bool var Query_log_event::catalog_inited
like we have in Query_log_event::sql_mode_inited; that's because catalog will not use the whole range of int,
so it's allowed to pick -1 as a special value and have only one var.
sql/slave.cc:
comments
Diffstat (limited to 'sql/log_event.h')
-rw-r--r-- | sql/log_event.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sql/log_event.h b/sql/log_event.h index 5c1a143f407..c9cce1d40ea 100644 --- a/sql/log_event.h +++ b/sql/log_event.h @@ -604,7 +604,7 @@ public: concerned) from here. */ - uint catalog_len; /* <= 255 char */ + int catalog_len; // <= 255 char; -1 means uninited /* We want to be able to store a variable number of N-bit status vars: |