diff options
author | Alexander Barkov <bar@mariadb.com> | 2019-10-18 13:09:37 +0400 |
---|---|---|
committer | Alexander Barkov <bar@mariadb.com> | 2019-10-18 13:15:55 +0400 |
commit | ec171a94a30fb51d8aee7428c9532713ee0ce63a (patch) | |
tree | df589ee83becd8ffda2d0dd7ea5a795a8c635580 /sql/sql_type.h | |
parent | 9a833dc6881b896e65cf76c9699faa6c324e1775 (diff) | |
download | mariadb-git-ec171a94a30fb51d8aee7428c9532713ee0ce63a.tar.gz |
MDEV-20844 RBR from binary(16) to inet6 fails with error 171: The event was corrupt, leading to illegal data being read
This patch changes the way how INET6 is packed to the RBR binary log:
- from fixed length 16 bytes
- to BINARY(16) compatible variable length style
with trailing 0x00 byte compression.
This is to make INET6 fully compatible with BINARY(16) in RBR binary logs,
so RBR replication works in this scenarios:
- Old master BINARY(16) -> New slave INET6
- New master INET6 -> Old slave BINARY(16)
A new class StringPack was added to share the code between
Field_string and Field_inet6.
Diffstat (limited to 'sql/sql_type.h')
-rw-r--r-- | sql/sql_type.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sql/sql_type.h b/sql/sql_type.h index d8ed51bfea1..6fcd363e797 100644 --- a/sql/sql_type.h +++ b/sql/sql_type.h @@ -25,6 +25,7 @@ #include "sql_array.h" #include "sql_const.h" #include "sql_time.h" +#include "sql_type_string.h" #include "sql_type_real.h" #include "compat56.h" C_MODE_START |